@accrescent/console-client-sdk-angular 0.10.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/accrescent-console-client-sdk-angular-accrescent-console-v1alpha1.mjs +175 -10
- package/fesm2022/accrescent-console-client-sdk-angular-accrescent-console-v1alpha1.mjs.map +1 -1
- package/package.json +1 -1
- package/types/accrescent-console-client-sdk-angular-accrescent-console-v1alpha1.d.ts +33 -231
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accrescent-console-client-sdk-angular-accrescent-console-v1alpha1.mjs","sources":["../../accrescent/console/v1alpha1/app_package_pb.ts","../../accrescent/console/v1alpha1/app_draft_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/list_app_drafts_response_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_upload_operation_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_upload_operation_response_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_download_info_response_pb.ts","../../accrescent/console/v1alpha1/update_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/update_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/submit_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/submit_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/delete_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_listing_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_listing_response_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_response_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_response_pb.ts","../../accrescent/console/v1alpha1/delete_app_draft_listing_response_pb.ts","../../accrescent/console/v1alpha1/publish_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/publish_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/app_draft_service_ng.ts","../../accrescent/console/v1alpha1/delete_app_draft_listing_request_pb.ts","../../accrescent/console/v1alpha1/delete_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_download_info_request_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_request_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/list_app_drafts_request_pb.ts","../../accrescent/console/v1alpha1/app_draft_service_pb.ts","../../accrescent/console/v1alpha1/app_edit_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/get_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/list_app_edits_response_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_upload_operation_request_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_upload_operation_response_pb.ts","../../accrescent/console/v1alpha1/get_app_edit_download_info_response_pb.ts","../../accrescent/console/v1alpha1/update_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/update_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/submit_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/submit_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/delete_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_listing_request_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_listing_response_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_response_pb.ts","../../accrescent/console/v1alpha1/delete_app_edit_listing_response_pb.ts","../../accrescent/console/v1alpha1/app_edit_service_ng.ts","../../accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_request_pb.ts","../../accrescent/console/v1alpha1/delete_app_edit_listing_request_pb.ts","../../accrescent/console/v1alpha1/delete_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/get_app_edit_download_info_request_pb.ts","../../accrescent/console/v1alpha1/get_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/list_app_edits_request_pb.ts","../../accrescent/console/v1alpha1/app_edit_service_pb.ts","../../accrescent/console/v1alpha1/app_pb.ts","../../accrescent/console/v1alpha1/get_app_response_pb.ts","../../accrescent/console/v1alpha1/list_apps_response_pb.ts","../../accrescent/console/v1alpha1/update_app_request_pb.ts","../../accrescent/console/v1alpha1/update_app_response_pb.ts","../../accrescent/console/v1alpha1/app_service_ng.ts","../../accrescent/console/v1alpha1/get_app_request_pb.ts","../../accrescent/console/v1alpha1/list_apps_request_pb.ts","../../accrescent/console/v1alpha1/app_service_pb.ts","../../accrescent/console/v1alpha1/rejection_reason_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_review_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_review_response_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_review_request_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_review_response_pb.ts","../../accrescent/console/v1alpha1/error_reason_pb.ts","../../accrescent/console/v1alpha1/get_organization_request_pb.ts","../../accrescent/console/v1alpha1/organization_pb.ts","../../accrescent/console/v1alpha1/get_organization_response_pb.ts","../../accrescent/console/v1alpha1/get_self_request_pb.ts","../../accrescent/console/v1alpha1/user_role_pb.ts","../../accrescent/console/v1alpha1/user_pb.ts","../../accrescent/console/v1alpha1/get_self_response_pb.ts","../../accrescent/console/v1alpha1/list_organizations_request_pb.ts","../../accrescent/console/v1alpha1/list_organizations_response_pb.ts","../../accrescent/console/v1alpha1/organization_service_ng.ts","../../accrescent/console/v1alpha1/organization_service_pb.ts","../../accrescent/console/v1alpha1/publish_app_draft_result_pb.ts","../../accrescent/console/v1alpha1/publish_app_edit_result_pb.ts","../../accrescent/console/v1alpha1/review_service_ng.ts","../../accrescent/console/v1alpha1/review_service_pb.ts","../../accrescent/console/v1alpha1/update_user_request_pb.ts","../../accrescent/console/v1alpha1/update_user_response_pb.ts","../../accrescent/console/v1alpha1/upload_app_draft_listing_icon_result_pb.ts","../../accrescent/console/v1alpha1/upload_app_draft_result_pb.ts","../../accrescent/console/v1alpha1/upload_app_edit_listing_icon_result_pb.ts","../../accrescent/console/v1alpha1/upload_app_edit_result_pb.ts","../../accrescent/console/v1alpha1/user_service_ng.ts","../../accrescent/console/v1alpha1/user_service_pb.ts","../../accrescent/console/v1alpha1/accrescent-console-client-sdk-angular-accrescent-console-v1alpha1.ts"],"sourcesContent":["// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_package.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_package.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_package: GenFile = /*@__PURE__*/\n fileDesc(\"Ci1hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX3BhY2thZ2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLQAQoKQXBwUGFja2FnZRIbCgZhcHBfaWQYASABKAlCBrpIA8gBAUgAiAEBEiUKDHZlcnNpb25fY29kZRgCIAEoBEIKukgHyAEBMgIgAEgBiAEBEiEKDHZlcnNpb25fbmFtZRgDIAEoCUIGukgDyAEBSAKIAQESHwoKdGFyZ2V0X3NkaxgEIAEoBEIGukgDyAEBSAOIAQFCCQoHX2FwcF9pZEIPCg1fdmVyc2lvbl9jb2RlQg8KDV92ZXJzaW9uX25hbWVCDQoLX3RhcmdldF9zZGtCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * An app package.\n *\n * @generated from message accrescent.console.v1alpha1.AppPackage\n */\nexport type AppPackage = Message<\"accrescent.console.v1alpha1.AppPackage\"> & {\n /**\n * The app package's Android application ID.\n *\n * @generated from field: optional string app_id = 1;\n */\n appId?: string;\n\n /**\n * The app package's version code.\n *\n * @generated from field: optional uint64 version_code = 2;\n */\n versionCode?: bigint;\n\n /**\n * The app package's version name.\n *\n * @generated from field: optional string version_name = 3;\n */\n versionName?: string;\n\n /**\n * The app package's target SDK.\n *\n * @generated from field: optional uint64 target_sdk = 4;\n */\n targetSdk?: bigint;\n};\n\n/**\n * An app package.\n *\n * @generated from message accrescent.console.v1alpha1.AppPackage\n */\nexport type AppPackageValid = Message<\"accrescent.console.v1alpha1.AppPackage\"> & {\n /**\n * The app package's Android application ID.\n *\n * @generated from field: optional string app_id = 1;\n */\n appId: string;\n\n /**\n * The app package's version code.\n *\n * @generated from field: optional uint64 version_code = 2;\n */\n versionCode: bigint;\n\n /**\n * The app package's version name.\n *\n * @generated from field: optional string version_name = 3;\n */\n versionName: string;\n\n /**\n * The app package's target SDK.\n *\n * @generated from field: optional uint64 target_sdk = 4;\n */\n targetSdk: bigint;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.AppPackage.\n * Use `create(AppPackageSchema)` to create a new message.\n */\nexport const AppPackageSchema: GenMessage<AppPackage, {validType: AppPackageValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_app_package, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_draft.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppPackage, AppPackageValid } from \"./app_package_pb\";\nimport { file_accrescent_console_v1alpha1_app_package } from \"./app_package_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Timestamp } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_draft.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_draft: GenFile = /*@__PURE__*/\n fileDesc(\"CithY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX2RyYWZ0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiyAIKCEFwcERyYWZ0EhcKAmlkGAEgASgJQga6SAPIAQFIAIgBARI2CgpjcmVhdGVkX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIGukgDyAEBEiUKGGRlZmF1bHRfbGlzdGluZ19sYW5ndWFnZRgDIAEoCUgBiAEBEjwKC2FwcF9wYWNrYWdlGAQgASgLMicuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkFwcFBhY2thZ2USMAoMc3VibWl0dGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxwdWJsaXNoZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgUKA19pZEIbChlfZGVmYXVsdF9saXN0aW5nX2xhbmd1YWdlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_accrescent_console_v1alpha1_app_package, file_buf_validate_validate, file_google_protobuf_timestamp]);\n\n/**\n * An app draft.\n *\n * @generated from message accrescent.console.v1alpha1.AppDraft\n */\nexport type AppDraft = Message<\"accrescent.console.v1alpha1.AppDraft\"> & {\n /**\n * The app draft's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The timestamp at which the app draft was created.\n *\n * @generated from field: google.protobuf.Timestamp created_at = 2;\n */\n createdAt?: Timestamp;\n\n /**\n * The draft's default listing language, if set.\n *\n * @generated from field: optional string default_listing_language = 3;\n */\n defaultListingLanguage?: string;\n\n /**\n * The draft's associated package information, if available.\n *\n * @generated from field: accrescent.console.v1alpha1.AppPackage app_package = 4;\n */\n appPackage?: AppPackage;\n\n /**\n * The timestamp at which the app draft has been submitted for review, if\n * applicable.\n *\n * @generated from field: google.protobuf.Timestamp submitted_at = 5;\n */\n submittedAt?: Timestamp;\n\n /**\n * The timestamp at which the app draft has been published, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp published_at = 6;\n */\n publishedAt?: Timestamp;\n};\n\n/**\n * An app draft.\n *\n * @generated from message accrescent.console.v1alpha1.AppDraft\n */\nexport type AppDraftValid = Message<\"accrescent.console.v1alpha1.AppDraft\"> & {\n /**\n * The app draft's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The timestamp at which the app draft was created.\n *\n * @generated from field: google.protobuf.Timestamp created_at = 2;\n */\n createdAt: Timestamp;\n\n /**\n * The draft's default listing language, if set.\n *\n * @generated from field: optional string default_listing_language = 3;\n */\n defaultListingLanguage?: string;\n\n /**\n * The draft's associated package information, if available.\n *\n * @generated from field: accrescent.console.v1alpha1.AppPackage app_package = 4;\n */\n appPackage?: AppPackageValid;\n\n /**\n * The timestamp at which the app draft has been submitted for review, if\n * applicable.\n *\n * @generated from field: google.protobuf.Timestamp submitted_at = 5;\n */\n submittedAt?: Timestamp;\n\n /**\n * The timestamp at which the app draft has been published, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp published_at = 6;\n */\n publishedAt?: Timestamp;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.AppDraft.\n * Use `create(AppDraftSchema)` to create a new message.\n */\nexport const AppDraftSchema: GenMessage<AppDraft, {validType: AppDraftValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_app_draft, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiUQoVQ3JlYXRlQXBwRHJhZnRSZXF1ZXN0EiQKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIGukgDyAEBSACIAQFCEgoQX29yZ2FuaXphdGlvbl9pZEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftRequest\n */\nexport type CreateAppDraftRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftRequest\"> & {\n /**\n * The ID of the organization to create this app draft under.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId?: string;\n};\n\n/**\n * Request defining parameters for creating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftRequest\n */\nexport type CreateAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftRequest\"> & {\n /**\n * The ID of the organization to create this app draft under.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftRequest.\n * Use `create(CreateAppDraftRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftRequestSchema: GenMessage<CreateAppDraftRequest, {validType: CreateAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIkwKFkNyZWF0ZUFwcERyYWZ0UmVzcG9uc2USIQoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQFIAIgBAUIPCg1fYXBwX2RyYWZ0X2lkQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Response to creating a new app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftResponse\n */\nexport type CreateAppDraftResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftResponse\"> & {\n /**\n * The unique ID of the created app draft.\n *\n * @generated from field: optional string app_draft_id = 1;\n */\n appDraftId?: string;\n};\n\n/**\n * Response to creating a new app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftResponse\n */\nexport type CreateAppDraftResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftResponse\"> & {\n /**\n * The unique ID of the created app draft.\n *\n * @generated from field: optional string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftResponse.\n * Use `create(CreateAppDraftResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftResponseSchema: GenMessage<CreateAppDraftResponse, {validType: CreateAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppDraft, AppDraftValid } from \"./app_draft_pb\";\nimport { file_accrescent_console_v1alpha1_app_draft } from \"./app_draft_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIlMKE0dldEFwcERyYWZ0UmVzcG9uc2USPAoFZHJhZnQYASABKAsyJS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQXBwRHJhZnRCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app_draft, file_buf_validate_validate]);\n\n/**\n * Response to getting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftResponse\n */\nexport type GetAppDraftResponse = Message<\"accrescent.console.v1alpha1.GetAppDraftResponse\"> & {\n /**\n * The requested app draft.\n *\n * @generated from field: accrescent.console.v1alpha1.AppDraft draft = 1;\n */\n draft?: AppDraft;\n};\n\n/**\n * Response to getting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftResponse\n */\nexport type GetAppDraftResponseValid = Message<\"accrescent.console.v1alpha1.GetAppDraftResponse\"> & {\n /**\n * The requested app draft.\n *\n * @generated from field: accrescent.console.v1alpha1.AppDraft draft = 1;\n */\n draft: AppDraftValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftResponse.\n * Use `create(GetAppDraftResponseSchema)` to create a new message.\n */\nexport const GetAppDraftResponseSchema: GenMessage<GetAppDraftResponse, {validType: GetAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_app_drafts_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppDraft, AppDraftValid } from \"./app_draft_pb\";\nimport { file_accrescent_console_v1alpha1_app_draft } from \"./app_draft_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_app_drafts_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_app_drafts_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBfZHJhZnRzX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEi5gEKFUxpc3RBcHBEcmFmdHNSZXNwb25zZRKaAQoKYXBwX2RyYWZ0cxgBIAMoCzIlLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5BcHBEcmFmdEJfukhcugFZChphcHBfZHJhZnRzLmhhdmVfdW5pcXVlX2lkcxIfYXBwIGRyYWZ0cyBtdXN0IGhhdmUgdW5pcXVlIElEcxoadGhpcy5tYXAoZCwgZC5pZCkudW5pcXVlKCkSHAoPbmV4dF9wYWdlX3Rva2VuGAIgASgJSACIAQFCEgoQX25leHRfcGFnZV90b2tlbkJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app_draft, file_buf_validate_validate]);\n\n/**\n * Response to listing app drafts.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppDraftsResponse\n */\nexport type ListAppDraftsResponse = Message<\"accrescent.console.v1alpha1.ListAppDraftsResponse\"> & {\n /**\n * The app drafts matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.AppDraft app_drafts = 1;\n */\n appDrafts: AppDraft[];\n\n /**\n * An opaque token which, if passed to another invocation of ListAppDrafts,\n * will return the next page of app drafts.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Response to listing app drafts.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppDraftsResponse\n */\nexport type ListAppDraftsResponseValid = Message<\"accrescent.console.v1alpha1.ListAppDraftsResponse\"> & {\n /**\n * The app drafts matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.AppDraft app_drafts = 1;\n */\n appDrafts: AppDraftValid[];\n\n /**\n * An opaque token which, if passed to another invocation of ListAppDrafts,\n * will return the next page of app drafts.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppDraftsResponse.\n * Use `create(ListAppDraftsResponseSchema)` to create a new message.\n */\nexport const ListAppDraftsResponseSchema: GenMessage<ListAppDraftsResponse, {validType: ListAppDraftsResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_app_drafts_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_upload_operation_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_upload_operation_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_upload_operation_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF91cGxvYWRfb3BlcmF0aW9uX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJECiRDcmVhdGVBcHBEcmFmdFVwbG9hZE9wZXJhdGlvblJlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest\n */\nexport type CreateAppDraftUploadOperationRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest\"> & {\n /**\n * The ID of the app draft to create an upload operation for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for creating an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest\n */\nexport type CreateAppDraftUploadOperationRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest\"> & {\n /**\n * The ID of the app draft to create an upload operation for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest.\n * Use `create(CreateAppDraftUploadOperationRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftUploadOperationRequestSchema: GenMessage<CreateAppDraftUploadOperationRequest, {validType: CreateAppDraftUploadOperationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_upload_operation_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_upload_operation_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_upload_operation_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_upload_operation_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkxhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF91cGxvYWRfb3BlcmF0aW9uX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEisQEKJUNyZWF0ZUFwcERyYWZ0VXBsb2FkT3BlcmF0aW9uUmVzcG9uc2USLAoSYXBrX3NldF91cGxvYWRfdXJsGAEgASgJQgu6SAjIAQFyA4gBAUgAiAEBEkMKFHByb2Nlc3Npbmdfb3BlcmF0aW9uGAIgASgLMh0uZ29vZ2xlLmxvbmdydW5uaW5nLk9wZXJhdGlvbkIGukgDyAEBQhUKE19hcGtfc2V0X3VwbG9hZF91cmxCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to creating an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse\n */\nexport type CreateAppDraftUploadOperationResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which an APK set can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string apk_set_upload_url = 1;\n */\n apkSetUploadUrl?: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppDraftResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation?: Operation;\n};\n\n/**\n * Response to creating an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse\n */\nexport type CreateAppDraftUploadOperationResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which an APK set can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string apk_set_upload_url = 1;\n */\n apkSetUploadUrl: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppDraftResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse.\n * Use `create(CreateAppDraftUploadOperationResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftUploadOperationResponseSchema: GenMessage<CreateAppDraftUploadOperationResponse, {validType: CreateAppDraftUploadOperationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_upload_operation_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_download_info_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_download_info_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_download_info_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9kb3dubG9hZF9pbmZvX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiWAofR2V0QXBwRHJhZnREb3dubG9hZEluZm9SZXNwb25zZRIlCgthcGtfc2V0X3VybBgBIAEoCUILukgIyAEBcgOIAQFIAIgBAUIOCgxfYXBrX3NldF91cmxCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Response to getting an app draft's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse\n */\nexport type GetAppDraftDownloadInfoResponse = Message<\"accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse\"> & {\n /**\n * The URL of the APK set which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string apk_set_url = 1;\n */\n apkSetUrl?: string;\n};\n\n/**\n * Response to getting an app draft's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse\n */\nexport type GetAppDraftDownloadInfoResponseValid = Message<\"accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse\"> & {\n /**\n * The URL of the APK set which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string apk_set_url = 1;\n */\n apkSetUrl: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse.\n * Use `create(GetAppDraftDownloadInfoResponseSchema)` to create a new message.\n */\nexport const GetAppDraftDownloadInfoResponseSchema: GenMessage<GetAppDraftDownloadInfoResponse, {validType: GetAppDraftDownloadInfoResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_download_info_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { FieldMask } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_field_mask } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEi1wEKFVVwZGF0ZUFwcERyYWZ0UmVxdWVzdBIcCgxhcHBfZHJhZnRfaWQYASABKAlCBrpIA8gBARItChhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2UYAiABKAlCBrpIA8gBAUgAiAEBElQKC3VwZGF0ZV9tYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IjukggyAEB4gEaEhhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2VCGwoZX2RlZmF1bHRfbGlzdGluZ19sYW5ndWFnZUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate, file_google_protobuf_field_mask]);\n\n/**\n * Request defining parameters for updating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppDraftRequest\n */\nexport type UpdateAppDraftRequest = Message<\"accrescent.console.v1alpha1.UpdateAppDraftRequest\"> & {\n /**\n * The ID of the app draft to update.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The draft's default listing language.\n *\n * Required because no other fields are supported for update yet.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage?: string;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask?: FieldMask;\n};\n\n/**\n * Request defining parameters for updating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppDraftRequest\n */\nexport type UpdateAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.UpdateAppDraftRequest\"> & {\n /**\n * The ID of the app draft to update.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The draft's default listing language.\n *\n * Required because no other fields are supported for update yet.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage: string;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask: FieldMask;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppDraftRequest.\n * Use `create(UpdateAppDraftRequestSchema)` to create a new message.\n */\nexport const UpdateAppDraftRequestSchema: GenMessage<UpdateAppDraftRequest, {validType: UpdateAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhgKFlVwZGF0ZUFwcERyYWZ0UmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to updating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppDraftResponse\n */\nexport type UpdateAppDraftResponse = Message<\"accrescent.console.v1alpha1.UpdateAppDraftResponse\"> & {\n};\n\nexport type UpdateAppDraftResponseValid = UpdateAppDraftResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppDraftResponse.\n * Use `create(UpdateAppDraftResponseSchema)` to create a new message.\n */\nexport const UpdateAppDraftResponseSchema: GenMessage<UpdateAppDraftResponse, {validType: UpdateAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/submit_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/submit_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_submit_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvc3VibWl0X2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiNQoVU3VibWl0QXBwRHJhZnRSZXF1ZXN0EhwKDGFwcF9kcmFmdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for submitting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppDraftRequest\n */\nexport type SubmitAppDraftRequest = Message<\"accrescent.console.v1alpha1.SubmitAppDraftRequest\"> & {\n /**\n * The ID of the app draft to submit.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for submitting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppDraftRequest\n */\nexport type SubmitAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.SubmitAppDraftRequest\"> & {\n /**\n * The ID of the app draft to submit.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.SubmitAppDraftRequest.\n * Use `create(SubmitAppDraftRequestSchema)` to create a new message.\n */\nexport const SubmitAppDraftRequestSchema: GenMessage<SubmitAppDraftRequest, {validType: SubmitAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_submit_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/submit_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/submit_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_submit_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvc3VibWl0X2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhgKFlN1Ym1pdEFwcERyYWZ0UmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to submitting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppDraftResponse\n */\nexport type SubmitAppDraftResponse = Message<\"accrescent.console.v1alpha1.SubmitAppDraftResponse\"> & {\n};\n\nexport type SubmitAppDraftResponseValid = SubmitAppDraftResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.SubmitAppDraftResponse.\n * Use `create(SubmitAppDraftResponseSchema)` to create a new message.\n */\nexport const SubmitAppDraftResponseSchema: GenMessage<SubmitAppDraftResponse, {validType: SubmitAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_submit_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhgKFkRlbGV0ZUFwcERyYWZ0UmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to deleting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftResponse\n */\nexport type DeleteAppDraftResponse = Message<\"accrescent.console.v1alpha1.DeleteAppDraftResponse\"> & {\n};\n\nexport type DeleteAppDraftResponseValid = DeleteAppDraftResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppDraftResponse.\n * Use `create(DeleteAppDraftResponseSchema)` to create a new message.\n */\nexport const DeleteAppDraftResponseSchema: GenMessage<DeleteAppDraftResponse, {validType: DeleteAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_listing_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_listing_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_listing_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9saXN0aW5nX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLSBQocQ3JlYXRlQXBwRHJhZnRMaXN0aW5nUmVxdWVzdBIcCgxhcHBfZHJhZnRfaWQYASABKAlCBrpIA8gBARKlBAoIbGFuZ3VhZ2UYAiABKAlCkgS6SI4EyAEBcogEUgJhZlICc3FSAmFtUgJhclIFaHktQU1SBWF6LUFaUgVibi1CRFIFZXUtRVNSAmJlUgJiZ1IFbXktTU1SAmNhUgV6aC1IS1IFemgtQ05SBXpoLVRXUgJoclIFY3MtQ1pSBWRhLURLUgVubC1OTFIFZW4tQVVSBWVuLUNBUgVlbi1VU1IFZW4tR0JSBWVuLUlOUgVlbi1TR1IFZW4tWkFSAmV0UgNmaWxSBWZpLUZJUgVmci1DQVIFZnItRlJSBWdsLUVTUgVrYS1HRVIFZGUtREVSBWVsLUdSUgJndVIFaXctSUxSBWhpLUlOUgVodS1IVVIFaXMtSVNSAmlkUgVpdC1JVFIFamEtSlBSBWtuLUlOUgJra1IFa20tS0hSBWtvLUtSUgVreS1LR1IFbG8tTEFSAmx2UgJsdFIFbWstTUtSBW1zLU1ZUgJtc1IFbWwtSU5SBW1yLUlOUgVtbi1NTlIFbmUtTlBSBW5vLU5PUgJmYVIFZmEtQUVSBWZhLUFGUgVmYS1JUlIFcGwtUExSBXB0LUJSUgVwdC1QVFICcGFSAnJvUgJybVIFcnUtUlVSAnNyUgVzaS1MS1ICc2tSAnNsUgZlcy00MTlSBWVzLUVTUgVlcy1VU1ICc3dSBXN2LVNFUgV0YS1JTlIFdGUtSU5SAnRoUgV0ci1UUlICdWtSAnVyUgJ2aRIfCgRuYW1lGAMgASgJQgy6SAnIAQFyBBADGB5IAIgBARIsChFzaG9ydF9kZXNjcmlwdGlvbhgEIAEoCUIMukgJyAEBcgQQAxhQSAGIAQFCBwoFX25hbWVCFAoSX3Nob3J0X2Rlc2NyaXB0aW9uQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app listing for an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingRequest\n */\nexport type CreateAppDraftListingRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingRequest\"> & {\n /**\n * The app draft to create the app listing for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of this listing's fields as a BCP-47 tag.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n\n /**\n * The proper name of the app, possibly including very short descriptive text\n * (e.g. \"SecureChat - Secure Texting\").\n *\n * @generated from field: optional string name = 3;\n */\n name?: string;\n\n /**\n * A short description of the app to be shown in headers and small screen\n * spaces.\n *\n * @generated from field: optional string short_description = 4;\n */\n shortDescription?: string;\n};\n\n/**\n * Request defining parameters for creating an app listing for an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingRequest\n */\nexport type CreateAppDraftListingRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingRequest\"> & {\n /**\n * The app draft to create the app listing for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of this listing's fields as a BCP-47 tag.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n\n /**\n * The proper name of the app, possibly including very short descriptive text\n * (e.g. \"SecureChat - Secure Texting\").\n *\n * @generated from field: optional string name = 3;\n */\n name: string;\n\n /**\n * A short description of the app to be shown in headers and small screen\n * spaces.\n *\n * @generated from field: optional string short_description = 4;\n */\n shortDescription: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftListingRequest.\n * Use `create(CreateAppDraftListingRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftListingRequestSchema: GenMessage<CreateAppDraftListingRequest, {validType: CreateAppDraftListingRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_listing_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_listing_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_listing_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_listing_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9saXN0aW5nX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiHwodQ3JlYXRlQXBwRHJhZnRMaXN0aW5nUmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to creating a new app listing for an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingResponse\n */\nexport type CreateAppDraftListingResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingResponse\"> & {\n};\n\nexport type CreateAppDraftListingResponseValid = CreateAppDraftListingResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftListingResponse.\n * Use `create(CreateAppDraftListingResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftListingResponseSchema: GenMessage<CreateAppDraftListingResponse, {validType: CreateAppDraftListingResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_listing_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_request: GenFile = /*@__PURE__*/\n fileDesc(\"ClhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9saXN0aW5nX2ljb25fdXBsb2FkX29wZXJhdGlvbl9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiaQovQ3JlYXRlQXBwRHJhZnRMaXN0aW5nSWNvblVwbG9hZE9wZXJhdGlvblJlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQESGAoIbGFuZ3VhZ2UYAiABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app draft listing icon upload\n * operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest\n */\nexport type CreateAppDraftListingIconUploadOperationRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest\"> & {\n /**\n * The ID of the app draft to create an icon upload operation for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of the app listing to create an icon upload operation for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for creating an app draft listing icon upload\n * operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest\n */\nexport type CreateAppDraftListingIconUploadOperationRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest\"> & {\n /**\n * The ID of the app draft to create an icon upload operation for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of the app listing to create an icon upload operation for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest.\n * Use `create(CreateAppDraftListingIconUploadOperationRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftListingIconUploadOperationRequestSchema: GenMessage<CreateAppDraftListingIconUploadOperationRequest, {validType: CreateAppDraftListingIconUploadOperationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_response: GenFile = /*@__PURE__*/\n fileDesc(\"CllhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9saXN0aW5nX2ljb25fdXBsb2FkX29wZXJhdGlvbl9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIqwBCjBDcmVhdGVBcHBEcmFmdExpc3RpbmdJY29uVXBsb2FkT3BlcmF0aW9uUmVzcG9uc2USJAoKdXBsb2FkX3VybBgBIAEoCUILukgIyAEBcgOIAQFIAIgBARJDChRwcm9jZXNzaW5nX29wZXJhdGlvbhgCIAEoCzIdLmdvb2dsZS5sb25ncnVubmluZy5PcGVyYXRpb25CBrpIA8gBAUINCgtfdXBsb2FkX3VybEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to creating an app draft listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse\n */\nexport type CreateAppDraftListingIconUploadOperationResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which the icon can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string upload_url = 1;\n */\n uploadUrl?: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppDraftListingIconResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation?: Operation;\n};\n\n/**\n * Response to creating an app draft listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse\n */\nexport type CreateAppDraftListingIconUploadOperationResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which the icon can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string upload_url = 1;\n */\n uploadUrl: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppDraftListingIconResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse.\n * Use `create(CreateAppDraftListingIconUploadOperationResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftListingIconUploadOperationResponseSchema: GenMessage<CreateAppDraftListingIconUploadOperationResponse, {validType: CreateAppDraftListingIconUploadOperationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_response: GenFile = /*@__PURE__*/\n fileDesc(\"ClNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9saXN0aW5nX2ljb25fZG93bmxvYWRfaW5mb19yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIl0KKkdldEFwcERyYWZ0TGlzdGluZ0ljb25Eb3dubG9hZEluZm9SZXNwb25zZRIiCghpY29uX3VybBgBIAEoCUILukgIyAEBcgOIAQFIAIgBAUILCglfaWNvbl91cmxCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Response to getting an app draft listing icon's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse\n */\nexport type GetAppDraftListingIconDownloadInfoResponse = Message<\"accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse\"> & {\n /**\n * The URL of the icon which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string icon_url = 1;\n */\n iconUrl?: string;\n};\n\n/**\n * Response to getting an app draft listing icon's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse\n */\nexport type GetAppDraftListingIconDownloadInfoResponseValid = Message<\"accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse\"> & {\n /**\n * The URL of the icon which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string icon_url = 1;\n */\n iconUrl: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse.\n * Use `create(GetAppDraftListingIconDownloadInfoResponseSchema)` to create a new message.\n */\nexport const GetAppDraftListingIconDownloadInfoResponseSchema: GenMessage<GetAppDraftListingIconDownloadInfoResponse, {validType: GetAppDraftListingIconDownloadInfoResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_draft_listing_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_draft_listing_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_draft_listing_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9kcmFmdF9saXN0aW5nX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiHwodRGVsZXRlQXBwRHJhZnRMaXN0aW5nUmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to deleting an app draft listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftListingResponse\n */\nexport type DeleteAppDraftListingResponse = Message<\"accrescent.console.v1alpha1.DeleteAppDraftListingResponse\"> & {\n};\n\nexport type DeleteAppDraftListingResponseValid = DeleteAppDraftListingResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppDraftListingResponse.\n * Use `create(DeleteAppDraftListingResponseSchema)` to create a new message.\n */\nexport const DeleteAppDraftListingResponseSchema: GenMessage<DeleteAppDraftListingResponse, {validType: DeleteAppDraftListingResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_draft_listing_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/publish_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/publish_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_publish_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcHVibGlzaF9hcHBfZHJhZnRfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIjYKFlB1Ymxpc2hBcHBEcmFmdFJlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for publishing an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftRequest\n */\nexport type PublishAppDraftRequest = Message<\"accrescent.console.v1alpha1.PublishAppDraftRequest\"> & {\n /**\n * The ID of the app draft to publish.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for publishing an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftRequest\n */\nexport type PublishAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.PublishAppDraftRequest\"> & {\n /**\n * The ID of the app draft to publish.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.PublishAppDraftRequest.\n * Use `create(PublishAppDraftRequestSchema)` to create a new message.\n */\nexport const PublishAppDraftRequestSchema: GenMessage<PublishAppDraftRequest, {validType: PublishAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_publish_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/publish_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/publish_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_publish_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjxhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcHVibGlzaF9hcHBfZHJhZnRfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJTChdQdWJsaXNoQXBwRHJhZnRSZXNwb25zZRI4CglvcGVyYXRpb24YASABKAsyHS5nb29nbGUubG9uZ3J1bm5pbmcuT3BlcmF0aW9uQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to publishing an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftResponse\n */\nexport type PublishAppDraftResponse = Message<\"accrescent.console.v1alpha1.PublishAppDraftResponse\"> & {\n /**\n * The publishing operation.\n *\n * The response type of this operation is PublishAppDraftResult.\n *\n * @generated from field: google.longrunning.Operation operation = 1;\n */\n operation?: Operation;\n};\n\n/**\n * Response to publishing an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftResponse\n */\nexport type PublishAppDraftResponseValid = Message<\"accrescent.console.v1alpha1.PublishAppDraftResponse\"> & {\n /**\n * The publishing operation.\n *\n * The response type of this operation is PublishAppDraftResult.\n *\n * @generated from field: google.longrunning.Operation operation = 1;\n */\n operation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.PublishAppDraftResponse.\n * Use `create(PublishAppDraftResponseSchema)` to create a new message.\n */\nexport const PublishAppDraftResponseSchema: GenMessage<PublishAppDraftResponse, {validType: PublishAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_publish_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.3.0 with parameter \"target=ts,valid_types=true\"\n// @generated from file accrescent/console/v1alpha1/app_draft_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { CreateAppDraftRequest, CreateAppDraftRequestValid } from \"./create_app_draft_request_pb\";\nimport { CreateAppDraftRequestSchema } from \"./create_app_draft_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { CreateAppDraftResponse, CreateAppDraftResponseValid } from \"./create_app_draft_response_pb\";\nimport { CreateAppDraftResponseSchema } from \"./create_app_draft_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { GetAppDraftRequest, GetAppDraftRequestValid } from \"./get_app_draft_request_pb\";\nimport type { GetAppDraftResponse, GetAppDraftResponseValid } from \"./get_app_draft_response_pb\";\nimport { GetAppDraftResponseSchema } from \"./get_app_draft_response_pb\";\nimport type { ListAppDraftsRequest, ListAppDraftsRequestValid } from \"./list_app_drafts_request_pb\";\nimport type { ListAppDraftsResponse, ListAppDraftsResponseValid } from \"./list_app_drafts_response_pb\";\nimport { ListAppDraftsResponseSchema } from \"./list_app_drafts_response_pb\";\nimport type { CreateAppDraftUploadOperationRequest, CreateAppDraftUploadOperationRequestValid } from \"./create_app_draft_upload_operation_request_pb\";\nimport { CreateAppDraftUploadOperationRequestSchema } from \"./create_app_draft_upload_operation_request_pb\";\nimport type { CreateAppDraftUploadOperationResponse, CreateAppDraftUploadOperationResponseValid } from \"./create_app_draft_upload_operation_response_pb\";\nimport { CreateAppDraftUploadOperationResponseSchema } from \"./create_app_draft_upload_operation_response_pb\";\nimport type { GetAppDraftDownloadInfoRequest, GetAppDraftDownloadInfoRequestValid } from \"./get_app_draft_download_info_request_pb\";\nimport type { GetAppDraftDownloadInfoResponse, GetAppDraftDownloadInfoResponseValid } from \"./get_app_draft_download_info_response_pb\";\nimport { GetAppDraftDownloadInfoResponseSchema } from \"./get_app_draft_download_info_response_pb\";\nimport type { UpdateAppDraftRequest, UpdateAppDraftRequestValid } from \"./update_app_draft_request_pb\";\nimport { UpdateAppDraftRequestSchema } from \"./update_app_draft_request_pb\";\nimport type { UpdateAppDraftResponse, UpdateAppDraftResponseValid } from \"./update_app_draft_response_pb\";\nimport { UpdateAppDraftResponseSchema } from \"./update_app_draft_response_pb\";\nimport type { SubmitAppDraftRequest, SubmitAppDraftRequestValid } from \"./submit_app_draft_request_pb\";\nimport { SubmitAppDraftRequestSchema } from \"./submit_app_draft_request_pb\";\nimport type { SubmitAppDraftResponse, SubmitAppDraftResponseValid } from \"./submit_app_draft_response_pb\";\nimport { SubmitAppDraftResponseSchema } from \"./submit_app_draft_response_pb\";\nimport type { DeleteAppDraftRequest, DeleteAppDraftRequestValid } from \"./delete_app_draft_request_pb\";\nimport type { DeleteAppDraftResponse, DeleteAppDraftResponseValid } from \"./delete_app_draft_response_pb\";\nimport { DeleteAppDraftResponseSchema } from \"./delete_app_draft_response_pb\";\nimport type { CreateAppDraftListingRequest, CreateAppDraftListingRequestValid } from \"./create_app_draft_listing_request_pb\";\nimport { CreateAppDraftListingRequestSchema } from \"./create_app_draft_listing_request_pb\";\nimport type { CreateAppDraftListingResponse, CreateAppDraftListingResponseValid } from \"./create_app_draft_listing_response_pb\";\nimport { CreateAppDraftListingResponseSchema } from \"./create_app_draft_listing_response_pb\";\nimport type { CreateAppDraftListingIconUploadOperationRequest, CreateAppDraftListingIconUploadOperationRequestValid } from \"./create_app_draft_listing_icon_upload_operation_request_pb\";\nimport { CreateAppDraftListingIconUploadOperationRequestSchema } from \"./create_app_draft_listing_icon_upload_operation_request_pb\";\nimport type { CreateAppDraftListingIconUploadOperationResponse, CreateAppDraftListingIconUploadOperationResponseValid } from \"./create_app_draft_listing_icon_upload_operation_response_pb\";\nimport { CreateAppDraftListingIconUploadOperationResponseSchema } from \"./create_app_draft_listing_icon_upload_operation_response_pb\";\nimport type { GetAppDraftListingIconDownloadInfoRequest, GetAppDraftListingIconDownloadInfoRequestValid } from \"./get_app_draft_listing_icon_download_info_request_pb\";\nimport type { GetAppDraftListingIconDownloadInfoResponse, GetAppDraftListingIconDownloadInfoResponseValid } from \"./get_app_draft_listing_icon_download_info_response_pb\";\nimport { GetAppDraftListingIconDownloadInfoResponseSchema } from \"./get_app_draft_listing_icon_download_info_response_pb\";\nimport type { DeleteAppDraftListingRequest, DeleteAppDraftListingRequestValid } from \"./delete_app_draft_listing_request_pb\";\nimport type { DeleteAppDraftListingResponse, DeleteAppDraftListingResponseValid } from \"./delete_app_draft_listing_response_pb\";\nimport { DeleteAppDraftListingResponseSchema } from \"./delete_app_draft_listing_response_pb\";\nimport type { PublishAppDraftRequest, PublishAppDraftRequestValid } from \"./publish_app_draft_request_pb\";\nimport { PublishAppDraftRequestSchema } from \"./publish_app_draft_request_pb\";\nimport type { PublishAppDraftResponse, PublishAppDraftResponseValid } from \"./publish_app_draft_response_pb\";\nimport { PublishAppDraftResponseSchema } from \"./publish_app_draft_response_pb\";\n\nexport const NG_APP_DRAFT_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_APP_DRAFT_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing app drafts.\n *\n * @generated from service accrescent.console.v1alpha1.AppDraftService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgAppDraftService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_APP_DRAFT_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Creates a new app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraft\n */\n createAppDraft(request: CreateAppDraftRequestValid): Observable<CreateAppDraftResponseValid>;\n /**\n * Creates a new app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraft\n */\n createAppDraft(request: CreateAppDraftRequest): Observable<CreateAppDraftResponse>;\n createAppDraft(request: CreateAppDraftRequest): Observable<CreateAppDraftResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts`;\n const json = toJson(CreateAppDraftRequestSchema, request);\n\n return this.httpClient.post(url, json).pipe(\n map((response) => fromJson(\n CreateAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Gets an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraft\n */\n getAppDraft(request: GetAppDraftRequestValid): Observable<GetAppDraftResponseValid>;\n /**\n * Gets an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraft\n */\n getAppDraft(request: GetAppDraftRequest): Observable<GetAppDraftResponse>;\n getAppDraft(request: GetAppDraftRequest): Observable<GetAppDraftResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Lists app drafts.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.ListAppDrafts\n */\n listAppDrafts(request: ListAppDraftsRequestValid): Observable<ListAppDraftsResponseValid>;\n /**\n * Lists app drafts.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.ListAppDrafts\n */\n listAppDrafts(request: ListAppDraftsRequest): Observable<ListAppDraftsResponse>;\n listAppDrafts(request: ListAppDraftsRequest): Observable<ListAppDraftsResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts`;\n const params: Record<string, string | number | boolean> = {};\n if (request.organizationId !== undefined) params[\"organizationId\"] = request.organizationId;\n if (request.pageSize !== undefined) params[\"pageSize\"] = request.pageSize;\n if (request.pageToken !== undefined) params[\"pageToken\"] = request.pageToken;\n\n return this.httpClient.get(url, { params }).pipe(\n map((response) => fromJson(\n ListAppDraftsResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Creates an app draft upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftUploadOperation\n */\n createAppDraftUploadOperation(request: CreateAppDraftUploadOperationRequestValid): Observable<CreateAppDraftUploadOperationResponseValid>;\n /**\n * Creates an app draft upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftUploadOperation\n */\n createAppDraftUploadOperation(request: CreateAppDraftUploadOperationRequest): Observable<CreateAppDraftUploadOperationResponse>;\n createAppDraftUploadOperation(request: CreateAppDraftUploadOperationRequest): Observable<CreateAppDraftUploadOperationResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/upload_operations`;\n const json = toJson(CreateAppDraftUploadOperationRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppDraftUploadOperationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Gets an app draft's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftDownloadInfo\n */\n getAppDraftDownloadInfo(request: GetAppDraftDownloadInfoRequestValid): Observable<GetAppDraftDownloadInfoResponseValid>;\n /**\n * Gets an app draft's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftDownloadInfo\n */\n getAppDraftDownloadInfo(request: GetAppDraftDownloadInfoRequest): Observable<GetAppDraftDownloadInfoResponse>;\n getAppDraftDownloadInfo(request: GetAppDraftDownloadInfoRequest): Observable<GetAppDraftDownloadInfoResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/download_info`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppDraftDownloadInfoResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Updates an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.UpdateAppDraft\n */\n updateAppDraft(request: UpdateAppDraftRequestValid): Observable<UpdateAppDraftResponseValid>;\n /**\n * Updates an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.UpdateAppDraft\n */\n updateAppDraft(request: UpdateAppDraftRequest): Observable<UpdateAppDraftResponse>;\n updateAppDraft(request: UpdateAppDraftRequest): Observable<UpdateAppDraftResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}`;\n const json = toJson(UpdateAppDraftRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.patch(url, body).pipe(\n map((response) => fromJson(\n UpdateAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Submits an app draft for review.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.SubmitAppDraft\n */\n submitAppDraft(request: SubmitAppDraftRequestValid): Observable<SubmitAppDraftResponseValid>;\n /**\n * Submits an app draft for review.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.SubmitAppDraft\n */\n submitAppDraft(request: SubmitAppDraftRequest): Observable<SubmitAppDraftResponse>;\n submitAppDraft(request: SubmitAppDraftRequest): Observable<SubmitAppDraftResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}:submit`;\n const json = toJson(SubmitAppDraftRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n SubmitAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Deletes an existing app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraft\n */\n deleteAppDraft(request: DeleteAppDraftRequestValid): Observable<DeleteAppDraftResponseValid>;\n /**\n * Deletes an existing app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraft\n */\n deleteAppDraft(request: DeleteAppDraftRequest): Observable<DeleteAppDraftResponse>;\n deleteAppDraft(request: DeleteAppDraftRequest): Observable<DeleteAppDraftResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}`;\n\n return this.httpClient.delete(url).pipe(\n map((response) => fromJson(\n DeleteAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Creates a new app listing for an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListing\n */\n createAppDraftListing(request: CreateAppDraftListingRequestValid): Observable<CreateAppDraftListingResponseValid>;\n /**\n * Creates a new app listing for an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListing\n */\n createAppDraftListing(request: CreateAppDraftListingRequest): Observable<CreateAppDraftListingResponse>;\n createAppDraftListing(request: CreateAppDraftListingRequest): Observable<CreateAppDraftListingResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/listings/${request.language}`;\n const json = toJson(CreateAppDraftListingRequestSchema, request);\n const { appDraftId: _appDraftId, language: _language, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppDraftListingResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Creates an app draft listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListingIconUploadOperation\n */\n createAppDraftListingIconUploadOperation(request: CreateAppDraftListingIconUploadOperationRequestValid): Observable<CreateAppDraftListingIconUploadOperationResponseValid>;\n /**\n * Creates an app draft listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListingIconUploadOperation\n */\n createAppDraftListingIconUploadOperation(request: CreateAppDraftListingIconUploadOperationRequest): Observable<CreateAppDraftListingIconUploadOperationResponse>;\n createAppDraftListingIconUploadOperation(request: CreateAppDraftListingIconUploadOperationRequest): Observable<CreateAppDraftListingIconUploadOperationResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/listings/${request.language}/icon/upload_operations`;\n const json = toJson(CreateAppDraftListingIconUploadOperationRequestSchema, request);\n const { appDraftId: _appDraftId, language: _language, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppDraftListingIconUploadOperationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Gets an app draft listing icon's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftListingIconDownloadInfo\n */\n getAppDraftListingIconDownloadInfo(request: GetAppDraftListingIconDownloadInfoRequestValid): Observable<GetAppDraftListingIconDownloadInfoResponseValid>;\n /**\n * Gets an app draft listing icon's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftListingIconDownloadInfo\n */\n getAppDraftListingIconDownloadInfo(request: GetAppDraftListingIconDownloadInfoRequest): Observable<GetAppDraftListingIconDownloadInfoResponse>;\n getAppDraftListingIconDownloadInfo(request: GetAppDraftListingIconDownloadInfoRequest): Observable<GetAppDraftListingIconDownloadInfoResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/listings/${request.language}/icon/download_info`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppDraftListingIconDownloadInfoResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Deletes an existing app draft listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraftListing\n */\n deleteAppDraftListing(request: DeleteAppDraftListingRequestValid): Observable<DeleteAppDraftListingResponseValid>;\n /**\n * Deletes an existing app draft listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraftListing\n */\n deleteAppDraftListing(request: DeleteAppDraftListingRequest): Observable<DeleteAppDraftListingResponse>;\n deleteAppDraftListing(request: DeleteAppDraftListingRequest): Observable<DeleteAppDraftListingResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/listings/${request.language}`;\n\n return this.httpClient.delete(url).pipe(\n map((response) => fromJson(\n DeleteAppDraftListingResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Publishes an app draft to the app store.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.PublishAppDraft\n */\n publishAppDraft(request: PublishAppDraftRequestValid): Observable<PublishAppDraftResponseValid>;\n /**\n * Publishes an app draft to the app store.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.PublishAppDraft\n */\n publishAppDraft(request: PublishAppDraftRequest): Observable<PublishAppDraftResponse>;\n publishAppDraft(request: PublishAppDraftRequest): Observable<PublishAppDraftResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}:publish`;\n const json = toJson(PublishAppDraftRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n PublishAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_draft_listing_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_draft_listing_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_draft_listing_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9kcmFmdF9saXN0aW5nX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJWChxEZWxldGVBcHBEcmFmdExpc3RpbmdSZXF1ZXN0EhwKDGFwcF9kcmFmdF9pZBgBIAEoCUIGukgDyAEBEhgKCGxhbmd1YWdlGAIgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for deleting an app draft listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftListingRequest\n */\nexport type DeleteAppDraftListingRequest = Message<\"accrescent.console.v1alpha1.DeleteAppDraftListingRequest\"> & {\n /**\n * The ID of the app draft the listing is associated with.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The BCP-47 language tag of the listing to delete.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for deleting an app draft listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftListingRequest\n */\nexport type DeleteAppDraftListingRequestValid = Message<\"accrescent.console.v1alpha1.DeleteAppDraftListingRequest\"> & {\n /**\n * The ID of the app draft the listing is associated with.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The BCP-47 language tag of the listing to delete.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppDraftListingRequest.\n * Use `create(DeleteAppDraftListingRequestSchema)` to create a new message.\n */\nexport const DeleteAppDraftListingRequestSchema: GenMessage<DeleteAppDraftListingRequest, {validType: DeleteAppDraftListingRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_draft_listing_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiNQoVRGVsZXRlQXBwRHJhZnRSZXF1ZXN0EhwKDGFwcF9kcmFmdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for deleting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftRequest\n */\nexport type DeleteAppDraftRequest = Message<\"accrescent.console.v1alpha1.DeleteAppDraftRequest\"> & {\n /**\n * The ID of the app draft to delete.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for deleting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftRequest\n */\nexport type DeleteAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.DeleteAppDraftRequest\"> & {\n /**\n * The ID of the app draft to delete.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppDraftRequest.\n * Use `create(DeleteAppDraftRequestSchema)` to create a new message.\n */\nexport const DeleteAppDraftRequestSchema: GenMessage<DeleteAppDraftRequest, {validType: DeleteAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_download_info_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_download_info_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_download_info_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9kb3dubG9hZF9pbmZvX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSI+Ch5HZXRBcHBEcmFmdERvd25sb2FkSW5mb1JlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app draft's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest\n */\nexport type GetAppDraftDownloadInfoRequest = Message<\"accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest\"> & {\n /**\n * The ID of the app draft to get download info for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for getting an app draft's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest\n */\nexport type GetAppDraftDownloadInfoRequestValid = Message<\"accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest\"> & {\n /**\n * The ID of the app draft to get download info for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest.\n * Use `create(GetAppDraftDownloadInfoRequestSchema)` to create a new message.\n */\nexport const GetAppDraftDownloadInfoRequestSchema: GenMessage<GetAppDraftDownloadInfoRequest, {validType: GetAppDraftDownloadInfoRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_download_info_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_request: GenFile = /*@__PURE__*/\n fileDesc(\"ClJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9saXN0aW5nX2ljb25fZG93bmxvYWRfaW5mb19yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiYwopR2V0QXBwRHJhZnRMaXN0aW5nSWNvbkRvd25sb2FkSW5mb1JlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQESGAoIbGFuZ3VhZ2UYAiABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app draft listing icon's download\n * info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest\n */\nexport type GetAppDraftListingIconDownloadInfoRequest = Message<\"accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest\"> & {\n /**\n * The ID of the app draft of the listing to get icon download info for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of the listing to get icon download info for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for getting an app draft listing icon's download\n * info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest\n */\nexport type GetAppDraftListingIconDownloadInfoRequestValid = Message<\"accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest\"> & {\n /**\n * The ID of the app draft of the listing to get icon download info for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of the listing to get icon download info for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest.\n * Use `create(GetAppDraftListingIconDownloadInfoRequestSchema)` to create a new message.\n */\nexport const GetAppDraftListingIconDownloadInfoRequestSchema: GenMessage<GetAppDraftListingIconDownloadInfoRequest, {validType: GetAppDraftListingIconDownloadInfoRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjdhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiMgoSR2V0QXBwRHJhZnRSZXF1ZXN0EhwKDGFwcF9kcmFmdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftRequest\n */\nexport type GetAppDraftRequest = Message<\"accrescent.console.v1alpha1.GetAppDraftRequest\"> & {\n /**\n * The ID of the app draft to retrieve.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for getting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftRequest\n */\nexport type GetAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.GetAppDraftRequest\"> & {\n /**\n * The ID of the app draft to retrieve.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftRequest.\n * Use `create(GetAppDraftRequestSchema)` to create a new message.\n */\nexport const GetAppDraftRequestSchema: GenMessage<GetAppDraftRequest, {validType: GetAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_app_drafts_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_app_drafts_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_app_drafts_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBfZHJhZnRzX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSKeAQoUTGlzdEFwcERyYWZ0c1JlcXVlc3QSJAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQga6SAPIAQFIAIgBARIWCglwYWdlX3NpemUYAiABKA1IAYgBARIXCgpwYWdlX3Rva2VuGAMgASgJSAKIAQFCEgoQX29yZ2FuaXphdGlvbl9pZEIMCgpfcGFnZV9zaXplQg0KC19wYWdlX3Rva2VuQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for listing app drafts.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppDraftsRequest\n */\nexport type ListAppDraftsRequest = Message<\"accrescent.console.v1alpha1.ListAppDraftsRequest\"> & {\n /**\n * The organization containing the drafts to list.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId?: string;\n\n /**\n * The maximum number of app drafts to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListAppDraftsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Request defining parameters for listing app drafts.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppDraftsRequest\n */\nexport type ListAppDraftsRequestValid = Message<\"accrescent.console.v1alpha1.ListAppDraftsRequest\"> & {\n /**\n * The organization containing the drafts to list.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId: string;\n\n /**\n * The maximum number of app drafts to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListAppDraftsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppDraftsRequest.\n * Use `create(ListAppDraftsRequestSchema)` to create a new message.\n */\nexport const ListAppDraftsRequestSchema: GenMessage<ListAppDraftsRequest, {validType: ListAppDraftsRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_app_drafts_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_draft_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { CreateAppDraftListingIconUploadOperationRequestSchema } from \"./create_app_draft_listing_icon_upload_operation_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_request } from \"./create_app_draft_listing_icon_upload_operation_request_pb\";\nimport type { CreateAppDraftListingIconUploadOperationResponseSchema } from \"./create_app_draft_listing_icon_upload_operation_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_response } from \"./create_app_draft_listing_icon_upload_operation_response_pb\";\nimport type { CreateAppDraftListingRequestSchema } from \"./create_app_draft_listing_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_listing_request } from \"./create_app_draft_listing_request_pb\";\nimport type { CreateAppDraftListingResponseSchema } from \"./create_app_draft_listing_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_listing_response } from \"./create_app_draft_listing_response_pb\";\nimport type { CreateAppDraftRequestSchema } from \"./create_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_request } from \"./create_app_draft_request_pb\";\nimport type { CreateAppDraftResponseSchema } from \"./create_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_response } from \"./create_app_draft_response_pb\";\nimport type { CreateAppDraftUploadOperationRequestSchema } from \"./create_app_draft_upload_operation_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_upload_operation_request } from \"./create_app_draft_upload_operation_request_pb\";\nimport type { CreateAppDraftUploadOperationResponseSchema } from \"./create_app_draft_upload_operation_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_upload_operation_response } from \"./create_app_draft_upload_operation_response_pb\";\nimport type { DeleteAppDraftListingRequestSchema } from \"./delete_app_draft_listing_request_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_draft_listing_request } from \"./delete_app_draft_listing_request_pb\";\nimport type { DeleteAppDraftListingResponseSchema } from \"./delete_app_draft_listing_response_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_draft_listing_response } from \"./delete_app_draft_listing_response_pb\";\nimport type { DeleteAppDraftRequestSchema } from \"./delete_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_draft_request } from \"./delete_app_draft_request_pb\";\nimport type { DeleteAppDraftResponseSchema } from \"./delete_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_draft_response } from \"./delete_app_draft_response_pb\";\nimport type { GetAppDraftDownloadInfoRequestSchema } from \"./get_app_draft_download_info_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_download_info_request } from \"./get_app_draft_download_info_request_pb\";\nimport type { GetAppDraftDownloadInfoResponseSchema } from \"./get_app_draft_download_info_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_download_info_response } from \"./get_app_draft_download_info_response_pb\";\nimport type { GetAppDraftListingIconDownloadInfoRequestSchema } from \"./get_app_draft_listing_icon_download_info_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_request } from \"./get_app_draft_listing_icon_download_info_request_pb\";\nimport type { GetAppDraftListingIconDownloadInfoResponseSchema } from \"./get_app_draft_listing_icon_download_info_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_response } from \"./get_app_draft_listing_icon_download_info_response_pb\";\nimport type { GetAppDraftRequestSchema } from \"./get_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_request } from \"./get_app_draft_request_pb\";\nimport type { GetAppDraftResponseSchema } from \"./get_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_response } from \"./get_app_draft_response_pb\";\nimport type { ListAppDraftsRequestSchema } from \"./list_app_drafts_request_pb\";\nimport { file_accrescent_console_v1alpha1_list_app_drafts_request } from \"./list_app_drafts_request_pb\";\nimport type { ListAppDraftsResponseSchema } from \"./list_app_drafts_response_pb\";\nimport { file_accrescent_console_v1alpha1_list_app_drafts_response } from \"./list_app_drafts_response_pb\";\nimport type { PublishAppDraftRequestSchema } from \"./publish_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_publish_app_draft_request } from \"./publish_app_draft_request_pb\";\nimport type { PublishAppDraftResponseSchema } from \"./publish_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_publish_app_draft_response } from \"./publish_app_draft_response_pb\";\nimport type { SubmitAppDraftRequestSchema } from \"./submit_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_submit_app_draft_request } from \"./submit_app_draft_request_pb\";\nimport type { SubmitAppDraftResponseSchema } from \"./submit_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_submit_app_draft_response } from \"./submit_app_draft_response_pb\";\nimport type { UpdateAppDraftRequestSchema } from \"./update_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_draft_request } from \"./update_app_draft_request_pb\";\nimport type { UpdateAppDraftResponseSchema } from \"./update_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_draft_response } from \"./update_app_draft_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_draft_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_draft_service: GenFile = /*@__PURE__*/\n fileDesc(\"CjNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX2RyYWZ0X3NlcnZpY2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMTLxFgoPQXBwRHJhZnRTZXJ2aWNlErIBCg5DcmVhdGVBcHBEcmFmdBIyLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBEcmFmdFJlcXVlc3QaMy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRSZXNwb25zZSI3gtPkkwIxOgEqIiwvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2RyYWZ0cxK1AQoLR2V0QXBwRHJhZnQSLy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwRHJhZnRSZXF1ZXN0GjAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcERyYWZ0UmVzcG9uc2UiQ4LT5JMCPRI7L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0SrAEKDUxpc3RBcHBEcmFmdHMSMS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuTGlzdEFwcERyYWZ0c1JlcXVlc3QaMi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuTGlzdEFwcERyYWZ0c1Jlc3BvbnNlIjSC0+STAi4SLC9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzEoACCh1DcmVhdGVBcHBEcmFmdFVwbG9hZE9wZXJhdGlvbhJBLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBEcmFmdFVwbG9hZE9wZXJhdGlvblJlcXVlc3QaQi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRVcGxvYWRPcGVyYXRpb25SZXNwb25zZSJYgtPkkwJSOgEqIk0vZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2RyYWZ0cy97YXBwX2RyYWZ0X2lkfS91cGxvYWRfb3BlcmF0aW9ucxLnAQoXR2V0QXBwRHJhZnREb3dubG9hZEluZm8SOy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwRHJhZnREb3dubG9hZEluZm9SZXF1ZXN0GjwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcERyYWZ0RG93bmxvYWRJbmZvUmVzcG9uc2UiUYLT5JMCSxJJL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0vZG93bmxvYWRfaW5mbxLBAQoOVXBkYXRlQXBwRHJhZnQSMi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuVXBkYXRlQXBwRHJhZnRSZXF1ZXN0GjMuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlVwZGF0ZUFwcERyYWZ0UmVzcG9uc2UiRoLT5JMCQDoBKjI7L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0SyAEKDlN1Ym1pdEFwcERyYWZ0EjIuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlN1Ym1pdEFwcERyYWZ0UmVxdWVzdBozLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5TdWJtaXRBcHBEcmFmdFJlc3BvbnNlIk2C0+STAkc6ASoiQi9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9OnN1Ym1pdBK+AQoORGVsZXRlQXBwRHJhZnQSMi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuRGVsZXRlQXBwRHJhZnRSZXF1ZXN0GjMuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkRlbGV0ZUFwcERyYWZ0UmVzcG9uc2UiQ4LT5JMCPSo7L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0S6gEKFUNyZWF0ZUFwcERyYWZ0TGlzdGluZxI5LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBEcmFmdExpc3RpbmdSZXF1ZXN0GjouYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkNyZWF0ZUFwcERyYWZ0TGlzdGluZ1Jlc3BvbnNlIlqC0+STAlQ6ASoiTy9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9L2xpc3RpbmdzL3tsYW5ndWFnZX0SugIKKENyZWF0ZUFwcERyYWZ0TGlzdGluZ0ljb25VcGxvYWRPcGVyYXRpb24STC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRMaXN0aW5nSWNvblVwbG9hZE9wZXJhdGlvblJlcXVlc3QaTS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRMaXN0aW5nSWNvblVwbG9hZE9wZXJhdGlvblJlc3BvbnNlInGC0+STAms6ASoiZi9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9L2xpc3RpbmdzL3tsYW5ndWFnZX0vaWNvbi91cGxvYWRfb3BlcmF0aW9ucxKhAgoiR2V0QXBwRHJhZnRMaXN0aW5nSWNvbkRvd25sb2FkSW5mbxJGLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5HZXRBcHBEcmFmdExpc3RpbmdJY29uRG93bmxvYWRJbmZvUmVxdWVzdBpHLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5HZXRBcHBEcmFmdExpc3RpbmdJY29uRG93bmxvYWRJbmZvUmVzcG9uc2UiaoLT5JMCZBJiL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0vbGlzdGluZ3Mve2xhbmd1YWdlfS9pY29uL2Rvd25sb2FkX2luZm8S5wEKFURlbGV0ZUFwcERyYWZ0TGlzdGluZxI5LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5EZWxldGVBcHBEcmFmdExpc3RpbmdSZXF1ZXN0GjouYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkRlbGV0ZUFwcERyYWZ0TGlzdGluZ1Jlc3BvbnNlIleC0+STAlEqTy9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9L2xpc3RpbmdzL3tsYW5ndWFnZX0SzAEKD1B1Ymxpc2hBcHBEcmFmdBIzLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5QdWJsaXNoQXBwRHJhZnRSZXF1ZXN0GjQuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlB1Ymxpc2hBcHBEcmFmdFJlc3BvbnNlIk6C0+STAkg6ASoiQy9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9OnB1Ymxpc2hCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_request, file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_response, file_accrescent_console_v1alpha1_create_app_draft_listing_request, file_accrescent_console_v1alpha1_create_app_draft_listing_response, file_accrescent_console_v1alpha1_create_app_draft_request, file_accrescent_console_v1alpha1_create_app_draft_response, file_accrescent_console_v1alpha1_create_app_draft_upload_operation_request, file_accrescent_console_v1alpha1_create_app_draft_upload_operation_response, file_accrescent_console_v1alpha1_delete_app_draft_listing_request, file_accrescent_console_v1alpha1_delete_app_draft_listing_response, file_accrescent_console_v1alpha1_delete_app_draft_request, file_accrescent_console_v1alpha1_delete_app_draft_response, file_accrescent_console_v1alpha1_get_app_draft_download_info_request, file_accrescent_console_v1alpha1_get_app_draft_download_info_response, file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_request, file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_response, file_accrescent_console_v1alpha1_get_app_draft_request, file_accrescent_console_v1alpha1_get_app_draft_response, file_accrescent_console_v1alpha1_list_app_drafts_request, file_accrescent_console_v1alpha1_list_app_drafts_response, file_accrescent_console_v1alpha1_publish_app_draft_request, file_accrescent_console_v1alpha1_publish_app_draft_response, file_accrescent_console_v1alpha1_submit_app_draft_request, file_accrescent_console_v1alpha1_submit_app_draft_response, file_accrescent_console_v1alpha1_update_app_draft_request, file_accrescent_console_v1alpha1_update_app_draft_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing app drafts.\n *\n * @generated from service accrescent.console.v1alpha1.AppDraftService\n */\nexport const AppDraftService: GenService<{\n /**\n * Creates a new app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraft\n */\n createAppDraft: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftRequestSchema;\n output: typeof CreateAppDraftResponseSchema;\n },\n /**\n * Gets an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraft\n */\n getAppDraft: {\n methodKind: \"unary\";\n input: typeof GetAppDraftRequestSchema;\n output: typeof GetAppDraftResponseSchema;\n },\n /**\n * Lists app drafts.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.ListAppDrafts\n */\n listAppDrafts: {\n methodKind: \"unary\";\n input: typeof ListAppDraftsRequestSchema;\n output: typeof ListAppDraftsResponseSchema;\n },\n /**\n * Creates an app draft upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftUploadOperation\n */\n createAppDraftUploadOperation: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftUploadOperationRequestSchema;\n output: typeof CreateAppDraftUploadOperationResponseSchema;\n },\n /**\n * Gets an app draft's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftDownloadInfo\n */\n getAppDraftDownloadInfo: {\n methodKind: \"unary\";\n input: typeof GetAppDraftDownloadInfoRequestSchema;\n output: typeof GetAppDraftDownloadInfoResponseSchema;\n },\n /**\n * Updates an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.UpdateAppDraft\n */\n updateAppDraft: {\n methodKind: \"unary\";\n input: typeof UpdateAppDraftRequestSchema;\n output: typeof UpdateAppDraftResponseSchema;\n },\n /**\n * Submits an app draft for review.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.SubmitAppDraft\n */\n submitAppDraft: {\n methodKind: \"unary\";\n input: typeof SubmitAppDraftRequestSchema;\n output: typeof SubmitAppDraftResponseSchema;\n },\n /**\n * Deletes an existing app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraft\n */\n deleteAppDraft: {\n methodKind: \"unary\";\n input: typeof DeleteAppDraftRequestSchema;\n output: typeof DeleteAppDraftResponseSchema;\n },\n /**\n * Creates a new app listing for an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListing\n */\n createAppDraftListing: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftListingRequestSchema;\n output: typeof CreateAppDraftListingResponseSchema;\n },\n /**\n * Creates an app draft listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListingIconUploadOperation\n */\n createAppDraftListingIconUploadOperation: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftListingIconUploadOperationRequestSchema;\n output: typeof CreateAppDraftListingIconUploadOperationResponseSchema;\n },\n /**\n * Gets an app draft listing icon's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftListingIconDownloadInfo\n */\n getAppDraftListingIconDownloadInfo: {\n methodKind: \"unary\";\n input: typeof GetAppDraftListingIconDownloadInfoRequestSchema;\n output: typeof GetAppDraftListingIconDownloadInfoResponseSchema;\n },\n /**\n * Deletes an existing app draft listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraftListing\n */\n deleteAppDraftListing: {\n methodKind: \"unary\";\n input: typeof DeleteAppDraftListingRequestSchema;\n output: typeof DeleteAppDraftListingResponseSchema;\n },\n /**\n * Publishes an app draft to the app store.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.PublishAppDraft\n */\n publishAppDraft: {\n methodKind: \"unary\";\n input: typeof PublishAppDraftRequestSchema;\n output: typeof PublishAppDraftResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_app_draft_service, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_edit.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppPackage, AppPackageValid } from \"./app_package_pb\";\nimport { file_accrescent_console_v1alpha1_app_package } from \"./app_package_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Timestamp } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_edit.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_edit: GenFile = /*@__PURE__*/\n fileDesc(\"CiphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX2VkaXQucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLXAgoHQXBwRWRpdBIXCgJpZBgBIAEoCUIGukgDyAEBSACIAQESNgoKY3JlYXRlZF9hdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCBrpIA8gBARItChhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2UYAyABKAlCBrpIA8gBAUgBiAEBEkQKC2FwcF9wYWNrYWdlGAQgASgLMicuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkFwcFBhY2thZ2VCBrpIA8gBARIwCgxzdWJtaXR0ZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDHB1Ymxpc2hlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCBQoDX2lkQhsKGV9kZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_app_package, file_buf_validate_validate, file_google_protobuf_timestamp]);\n\n/**\n * An app edit.\n *\n * @generated from message accrescent.console.v1alpha1.AppEdit\n */\nexport type AppEdit = Message<\"accrescent.console.v1alpha1.AppEdit\"> & {\n /**\n * The app edit's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The timestamp at which the app edit was created.\n *\n * @generated from field: google.protobuf.Timestamp created_at = 2;\n */\n createdAt?: Timestamp;\n\n /**\n * The app edit's default listing language.\n *\n * @generated from field: optional string default_listing_language = 3;\n */\n defaultListingLanguage?: string;\n\n /**\n * The edit's associated package information.\n *\n * @generated from field: accrescent.console.v1alpha1.AppPackage app_package = 4;\n */\n appPackage?: AppPackage;\n\n /**\n * The timestamp at which the app edit has been submitted, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp submitted_at = 5;\n */\n submittedAt?: Timestamp;\n\n /**\n * The timestamp at which the app edit has been published, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp published_at = 6;\n */\n publishedAt?: Timestamp;\n};\n\n/**\n * An app edit.\n *\n * @generated from message accrescent.console.v1alpha1.AppEdit\n */\nexport type AppEditValid = Message<\"accrescent.console.v1alpha1.AppEdit\"> & {\n /**\n * The app edit's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The timestamp at which the app edit was created.\n *\n * @generated from field: google.protobuf.Timestamp created_at = 2;\n */\n createdAt: Timestamp;\n\n /**\n * The app edit's default listing language.\n *\n * @generated from field: optional string default_listing_language = 3;\n */\n defaultListingLanguage: string;\n\n /**\n * The edit's associated package information.\n *\n * @generated from field: accrescent.console.v1alpha1.AppPackage app_package = 4;\n */\n appPackage: AppPackageValid;\n\n /**\n * The timestamp at which the app edit has been submitted, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp submitted_at = 5;\n */\n submittedAt?: Timestamp;\n\n /**\n * The timestamp at which the app edit has been published, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp published_at = 6;\n */\n publishedAt?: Timestamp;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.AppEdit.\n * Use `create(AppEditSchema)` to create a new message.\n */\nexport const AppEditSchema: GenMessage<AppEdit, {validType: AppEditValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_app_edit, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIuChRDcmVhdGVBcHBFZGl0UmVxdWVzdBIWCgZhcHBfaWQYASABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditRequest\n */\nexport type CreateAppEditRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditRequest\"> & {\n /**\n * The ID of the app to create an edit for.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n};\n\n/**\n * Request defining parameters for creating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditRequest\n */\nexport type CreateAppEditRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditRequest\"> & {\n /**\n * The ID of the app to create an edit for.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditRequest.\n * Use `create(CreateAppEditRequestSchema)` to create a new message.\n */\nexport const CreateAppEditRequestSchema: GenMessage<CreateAppEditRequest, {validType: CreateAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiSQoVQ3JlYXRlQXBwRWRpdFJlc3BvbnNlEiAKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQFIAIgBAUIOCgxfYXBwX2VkaXRfaWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Response to creating a new app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditResponse\n */\nexport type CreateAppEditResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditResponse\"> & {\n /**\n * The unique ID of the created app edit.\n *\n * @generated from field: optional string app_edit_id = 1;\n */\n appEditId?: string;\n};\n\n/**\n * Response to creating a new app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditResponse\n */\nexport type CreateAppEditResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppEditResponse\"> & {\n /**\n * The unique ID of the created app edit.\n *\n * @generated from field: optional string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditResponse.\n * Use `create(CreateAppEditResponseSchema)` to create a new message.\n */\nexport const CreateAppEditResponseSchema: GenMessage<CreateAppEditResponse, {validType: CreateAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppEdit, AppEditValid } from \"./app_edit_pb\";\nimport { file_accrescent_console_v1alpha1_app_edit } from \"./app_edit_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjdhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiVAoSR2V0QXBwRWRpdFJlc3BvbnNlEj4KCGFwcF9lZGl0GAEgASgLMiQuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkFwcEVkaXRCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app_edit, file_buf_validate_validate]);\n\n/**\n * Response to getting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditResponse\n */\nexport type GetAppEditResponse = Message<\"accrescent.console.v1alpha1.GetAppEditResponse\"> & {\n /**\n * The requested app edit.\n *\n * @generated from field: accrescent.console.v1alpha1.AppEdit app_edit = 1;\n */\n appEdit?: AppEdit;\n};\n\n/**\n * Response to getting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditResponse\n */\nexport type GetAppEditResponseValid = Message<\"accrescent.console.v1alpha1.GetAppEditResponse\"> & {\n /**\n * The requested app edit.\n *\n * @generated from field: accrescent.console.v1alpha1.AppEdit app_edit = 1;\n */\n appEdit: AppEditValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppEditResponse.\n * Use `create(GetAppEditResponseSchema)` to create a new message.\n */\nexport const GetAppEditResponseSchema: GenMessage<GetAppEditResponse, {validType: GetAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_app_edits_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppEdit, AppEditValid } from \"./app_edit_pb\";\nimport { file_accrescent_console_v1alpha1_app_edit } from \"./app_edit_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_app_edits_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_app_edits_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBfZWRpdHNfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLhAQoUTGlzdEFwcEVkaXRzUmVzcG9uc2USlgEKCWFwcF9lZGl0cxgBIAMoCzIkLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5BcHBFZGl0Ql26SFq6AVcKGWFwcF9lZGl0cy5oYXZlX3VuaXF1ZV9pZHMSHmFwcCBlZGl0cyBtdXN0IGhhdmUgdW5pcXVlIElEcxoadGhpcy5tYXAoZSwgZS5pZCkudW5pcXVlKCkSHAoPbmV4dF9wYWdlX3Rva2VuGAIgASgJSACIAQFCEgoQX25leHRfcGFnZV90b2tlbkJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app_edit, file_buf_validate_validate]);\n\n/**\n * Response to listing app edits.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppEditsResponse\n */\nexport type ListAppEditsResponse = Message<\"accrescent.console.v1alpha1.ListAppEditsResponse\"> & {\n /**\n * The app drafts matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.AppEdit app_edits = 1;\n */\n appEdits: AppEdit[];\n\n /**\n * An opaque token which, if passed to another invocation of ListAppEdits,\n * will return the next page of app edits.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Response to listing app edits.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppEditsResponse\n */\nexport type ListAppEditsResponseValid = Message<\"accrescent.console.v1alpha1.ListAppEditsResponse\"> & {\n /**\n * The app drafts matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.AppEdit app_edits = 1;\n */\n appEdits: AppEditValid[];\n\n /**\n * An opaque token which, if passed to another invocation of ListAppEdits,\n * will return the next page of app edits.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppEditsResponse.\n * Use `create(ListAppEditsResponseSchema)` to create a new message.\n */\nexport const ListAppEditsResponseSchema: GenMessage<ListAppEditsResponse, {validType: ListAppEditsResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_app_edits_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_upload_operation_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_upload_operation_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_upload_operation_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3VwbG9hZF9vcGVyYXRpb25fcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIkIKI0NyZWF0ZUFwcEVkaXRVcGxvYWRPcGVyYXRpb25SZXF1ZXN0EhsKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest\n */\nexport type CreateAppEditUploadOperationRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest\"> & {\n /**\n * The ID of the app edit to create an upload operation for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for creating an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest\n */\nexport type CreateAppEditUploadOperationRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest\"> & {\n /**\n * The ID of the app edit to create an upload operation for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest.\n * Use `create(CreateAppEditUploadOperationRequestSchema)` to create a new message.\n */\nexport const CreateAppEditUploadOperationRequestSchema: GenMessage<CreateAppEditUploadOperationRequest, {validType: CreateAppEditUploadOperationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_upload_operation_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_upload_operation_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_upload_operation_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_upload_operation_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3VwbG9hZF9vcGVyYXRpb25fcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSKwAQokQ3JlYXRlQXBwRWRpdFVwbG9hZE9wZXJhdGlvblJlc3BvbnNlEiwKEmFwa19zZXRfdXBsb2FkX3VybBgBIAEoCUILukgIyAEBcgOIAQFIAIgBARJDChRwcm9jZXNzaW5nX29wZXJhdGlvbhgCIAEoCzIdLmdvb2dsZS5sb25ncnVubmluZy5PcGVyYXRpb25CBrpIA8gBAUIVChNfYXBrX3NldF91cGxvYWRfdXJsQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to creating an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse\n */\nexport type CreateAppEditUploadOperationResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which an APK set can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string apk_set_upload_url = 1;\n */\n apkSetUploadUrl?: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppEditResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation?: Operation;\n};\n\n/**\n * Response to creating an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse\n */\nexport type CreateAppEditUploadOperationResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which an APK set can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string apk_set_upload_url = 1;\n */\n apkSetUploadUrl: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppEditResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse.\n * Use `create(CreateAppEditUploadOperationResponseSchema)` to create a new message.\n */\nexport const CreateAppEditUploadOperationResponseSchema: GenMessage<CreateAppEditUploadOperationResponse, {validType: CreateAppEditUploadOperationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_upload_operation_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_edit_download_info_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_edit_download_info_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_edit_download_info_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9lZGl0X2Rvd25sb2FkX2luZm9fcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJXCh5HZXRBcHBFZGl0RG93bmxvYWRJbmZvUmVzcG9uc2USJQoLYXBrX3NldF91cmwYASABKAlCC7pICMgBAXIDiAEBSACIAQFCDgoMX2Fwa19zZXRfdXJsQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Response to getting an app edit's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse\n */\nexport type GetAppEditDownloadInfoResponse = Message<\"accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse\"> & {\n /**\n * The URL of the APK set which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string apk_set_url = 1;\n */\n apkSetUrl?: string;\n};\n\n/**\n * Response to getting an app edit's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse\n */\nexport type GetAppEditDownloadInfoResponseValid = Message<\"accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse\"> & {\n /**\n * The URL of the APK set which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string apk_set_url = 1;\n */\n apkSetUrl: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse.\n * Use `create(GetAppEditDownloadInfoResponseSchema)` to create a new message.\n */\nexport const GetAppEditDownloadInfoResponseSchema: GenMessage<GetAppEditDownloadInfoResponse, {validType: GetAppEditDownloadInfoResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_edit_download_info_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { FieldMask } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_field_mask } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLVAQoUVXBkYXRlQXBwRWRpdFJlcXVlc3QSGwoLYXBwX2VkaXRfaWQYASABKAlCBrpIA8gBARItChhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2UYAiABKAlCBrpIA8gBAUgAiAEBElQKC3VwZGF0ZV9tYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IjukggyAEB4gEaEhhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2VCGwoZX2RlZmF1bHRfbGlzdGluZ19sYW5ndWFnZUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate, file_google_protobuf_field_mask]);\n\n/**\n * Request defining parameters for updating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppEditRequest\n */\nexport type UpdateAppEditRequest = Message<\"accrescent.console.v1alpha1.UpdateAppEditRequest\"> & {\n /**\n * The ID of the app draft to update.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The edit's default listing language.\n *\n * Required because no other fields are supported for update yet.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage?: string;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask?: FieldMask;\n};\n\n/**\n * Request defining parameters for updating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppEditRequest\n */\nexport type UpdateAppEditRequestValid = Message<\"accrescent.console.v1alpha1.UpdateAppEditRequest\"> & {\n /**\n * The ID of the app draft to update.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The edit's default listing language.\n *\n * Required because no other fields are supported for update yet.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage: string;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask: FieldMask;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppEditRequest.\n * Use `create(UpdateAppEditRequestSchema)` to create a new message.\n */\nexport const UpdateAppEditRequestSchema: GenMessage<UpdateAppEditRequest, {validType: UpdateAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiFwoVVXBkYXRlQXBwRWRpdFJlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to updating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppEditResponse\n */\nexport type UpdateAppEditResponse = Message<\"accrescent.console.v1alpha1.UpdateAppEditResponse\"> & {\n};\n\nexport type UpdateAppEditResponseValid = UpdateAppEditResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppEditResponse.\n * Use `create(UpdateAppEditResponseSchema)` to create a new message.\n */\nexport const UpdateAppEditResponseSchema: GenMessage<UpdateAppEditResponse, {validType: UpdateAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/submit_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/submit_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_submit_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvc3VibWl0X2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIzChRTdWJtaXRBcHBFZGl0UmVxdWVzdBIbCgthcHBfZWRpdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for submitting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppEditRequest\n */\nexport type SubmitAppEditRequest = Message<\"accrescent.console.v1alpha1.SubmitAppEditRequest\"> & {\n /**\n * The ID of the app edit to submit.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for submitting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppEditRequest\n */\nexport type SubmitAppEditRequestValid = Message<\"accrescent.console.v1alpha1.SubmitAppEditRequest\"> & {\n /**\n * The ID of the app edit to submit.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.SubmitAppEditRequest.\n * Use `create(SubmitAppEditRequestSchema)` to create a new message.\n */\nexport const SubmitAppEditRequestSchema: GenMessage<SubmitAppEditRequest, {validType: SubmitAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_submit_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/submit_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Operation } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/submit_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_submit_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvc3VibWl0X2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiSQoVU3VibWl0QXBwRWRpdFJlc3BvbnNlEjAKCW9wZXJhdGlvbhgBIAEoCzIdLmdvb2dsZS5sb25ncnVubmluZy5PcGVyYXRpb25CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_google_longrunning_operations]);\n\n/**\n * Response to submitting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppEditResponse\n */\nexport type SubmitAppEditResponse = Message<\"accrescent.console.v1alpha1.SubmitAppEditResponse\"> & {\n /**\n * The publishing operation. Present if and only if the edit doesn't require\n * review.\n *\n * The response type of this operation is PublishAppEditResult.\n *\n * @generated from field: google.longrunning.Operation operation = 1;\n */\n operation?: Operation;\n};\n\nexport type SubmitAppEditResponseValid = SubmitAppEditResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.SubmitAppEditResponse.\n * Use `create(SubmitAppEditResponseSchema)` to create a new message.\n */\nexport const SubmitAppEditResponseSchema: GenMessage<SubmitAppEditResponse, {validType: SubmitAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_submit_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiFwoVRGVsZXRlQXBwRWRpdFJlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to deleting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditResponse\n */\nexport type DeleteAppEditResponse = Message<\"accrescent.console.v1alpha1.DeleteAppEditResponse\"> & {\n};\n\nexport type DeleteAppEditResponseValid = DeleteAppEditResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppEditResponse.\n * Use `create(DeleteAppEditResponseSchema)` to create a new message.\n */\nexport const DeleteAppEditResponseSchema: GenMessage<DeleteAppEditResponse, {validType: DeleteAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_listing_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_listing_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_listing_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X2xpc3RpbmdfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExItAFChtDcmVhdGVBcHBFZGl0TGlzdGluZ1JlcXVlc3QSGwoLYXBwX2VkaXRfaWQYASABKAlCBrpIA8gBARKlBAoIbGFuZ3VhZ2UYAiABKAlCkgS6SI4EyAEBcogEUgJhZlICc3FSAmFtUgJhclIFaHktQU1SBWF6LUFaUgVibi1CRFIFZXUtRVNSAmJlUgJiZ1IFbXktTU1SAmNhUgV6aC1IS1IFemgtQ05SBXpoLVRXUgJoclIFY3MtQ1pSBWRhLURLUgVubC1OTFIFZW4tQVVSBWVuLUNBUgVlbi1VU1IFZW4tR0JSBWVuLUlOUgVlbi1TR1IFZW4tWkFSAmV0UgNmaWxSBWZpLUZJUgVmci1DQVIFZnItRlJSBWdsLUVTUgVrYS1HRVIFZGUtREVSBWVsLUdSUgJndVIFaXctSUxSBWhpLUlOUgVodS1IVVIFaXMtSVNSAmlkUgVpdC1JVFIFamEtSlBSBWtuLUlOUgJra1IFa20tS0hSBWtvLUtSUgVreS1LR1IFbG8tTEFSAmx2UgJsdFIFbWstTUtSBW1zLU1ZUgJtc1IFbWwtSU5SBW1yLUlOUgVtbi1NTlIFbmUtTlBSBW5vLU5PUgJmYVIFZmEtQUVSBWZhLUFGUgVmYS1JUlIFcGwtUExSBXB0LUJSUgVwdC1QVFICcGFSAnJvUgJybVIFcnUtUlVSAnNyUgVzaS1MS1ICc2tSAnNsUgZlcy00MTlSBWVzLUVTUgVlcy1VU1ICc3dSBXN2LVNFUgV0YS1JTlIFdGUtSU5SAnRoUgV0ci1UUlICdWtSAnVyUgJ2aRIfCgRuYW1lGAMgASgJQgy6SAnIAQFyBBADGB5IAIgBARIsChFzaG9ydF9kZXNjcmlwdGlvbhgEIAEoCUIMukgJyAEBcgQQAxhQSAGIAQFCBwoFX25hbWVCFAoSX3Nob3J0X2Rlc2NyaXB0aW9uQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app listing for an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingRequest\n */\nexport type CreateAppEditListingRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditListingRequest\"> & {\n /**\n * The app edit to create the app listing for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The language of this listing's fields as a BCP-47 tag.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n\n /**\n * The proper name of the app, possibly including very short descriptive text\n * (e.g. \"SecureChat - Secure Texting\").\n *\n * @generated from field: optional string name = 3;\n */\n name?: string;\n\n /**\n * A short description of the app to be shown in headers and small screen\n * spaces.\n *\n * @generated from field: optional string short_description = 4;\n */\n shortDescription?: string;\n};\n\n/**\n * Request defining parameters for creating an app listing for an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingRequest\n */\nexport type CreateAppEditListingRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditListingRequest\"> & {\n /**\n * The app edit to create the app listing for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The language of this listing's fields as a BCP-47 tag.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n\n /**\n * The proper name of the app, possibly including very short descriptive text\n * (e.g. \"SecureChat - Secure Texting\").\n *\n * @generated from field: optional string name = 3;\n */\n name: string;\n\n /**\n * A short description of the app to be shown in headers and small screen\n * spaces.\n *\n * @generated from field: optional string short_description = 4;\n */\n shortDescription: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditListingRequest.\n * Use `create(CreateAppEditListingRequestSchema)` to create a new message.\n */\nexport const CreateAppEditListingRequestSchema: GenMessage<CreateAppEditListingRequest, {validType: CreateAppEditListingRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_listing_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_listing_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_listing_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_listing_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X2xpc3RpbmdfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIeChxDcmVhdGVBcHBFZGl0TGlzdGluZ1Jlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to creating a new app listing for an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingResponse\n */\nexport type CreateAppEditListingResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditListingResponse\"> & {\n};\n\nexport type CreateAppEditListingResponseValid = CreateAppEditListingResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditListingResponse.\n * Use `create(CreateAppEditListingResponseSchema)` to create a new message.\n */\nexport const CreateAppEditListingResponseSchema: GenMessage<CreateAppEditListingResponse, {validType: CreateAppEditListingResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_listing_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_response: GenFile = /*@__PURE__*/\n fileDesc(\"ClhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X2xpc3RpbmdfaWNvbl91cGxvYWRfb3BlcmF0aW9uX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiqwEKL0NyZWF0ZUFwcEVkaXRMaXN0aW5nSWNvblVwbG9hZE9wZXJhdGlvblJlc3BvbnNlEiQKCnVwbG9hZF91cmwYASABKAlCC7pICMgBAXIDiAEBSACIAQESQwoUcHJvY2Vzc2luZ19vcGVyYXRpb24YAiABKAsyHS5nb29nbGUubG9uZ3J1bm5pbmcuT3BlcmF0aW9uQga6SAPIAQFCDQoLX3VwbG9hZF91cmxCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to creating an app edit listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse\n */\nexport type CreateAppEditListingIconUploadOperationResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which the icon can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string upload_url = 1;\n */\n uploadUrl?: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppEditListingIconResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation?: Operation;\n};\n\n/**\n * Response to creating an app edit listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse\n */\nexport type CreateAppEditListingIconUploadOperationResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which the icon can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string upload_url = 1;\n */\n uploadUrl: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppEditListingIconResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse.\n * Use `create(CreateAppEditListingIconUploadOperationResponseSchema)` to create a new message.\n */\nexport const CreateAppEditListingIconUploadOperationResponseSchema: GenMessage<CreateAppEditListingIconUploadOperationResponse, {validType: CreateAppEditListingIconUploadOperationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_edit_listing_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_edit_listing_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_edit_listing_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9lZGl0X2xpc3RpbmdfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIeChxEZWxldGVBcHBFZGl0TGlzdGluZ1Jlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to deleting an app edit listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditListingResponse\n */\nexport type DeleteAppEditListingResponse = Message<\"accrescent.console.v1alpha1.DeleteAppEditListingResponse\"> & {\n};\n\nexport type DeleteAppEditListingResponseValid = DeleteAppEditListingResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppEditListingResponse.\n * Use `create(DeleteAppEditListingResponseSchema)` to create a new message.\n */\nexport const DeleteAppEditListingResponseSchema: GenMessage<DeleteAppEditListingResponse, {validType: DeleteAppEditListingResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_edit_listing_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.3.0 with parameter \"target=ts,valid_types=true\"\n// @generated from file accrescent/console/v1alpha1/app_edit_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { CreateAppEditRequest, CreateAppEditRequestValid } from \"./create_app_edit_request_pb\";\nimport { CreateAppEditRequestSchema } from \"./create_app_edit_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { CreateAppEditResponse, CreateAppEditResponseValid } from \"./create_app_edit_response_pb\";\nimport { CreateAppEditResponseSchema } from \"./create_app_edit_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { GetAppEditRequest, GetAppEditRequestValid } from \"./get_app_edit_request_pb\";\nimport type { GetAppEditResponse, GetAppEditResponseValid } from \"./get_app_edit_response_pb\";\nimport { GetAppEditResponseSchema } from \"./get_app_edit_response_pb\";\nimport type { ListAppEditsRequest, ListAppEditsRequestValid } from \"./list_app_edits_request_pb\";\nimport type { ListAppEditsResponse, ListAppEditsResponseValid } from \"./list_app_edits_response_pb\";\nimport { ListAppEditsResponseSchema } from \"./list_app_edits_response_pb\";\nimport type { CreateAppEditUploadOperationRequest, CreateAppEditUploadOperationRequestValid } from \"./create_app_edit_upload_operation_request_pb\";\nimport { CreateAppEditUploadOperationRequestSchema } from \"./create_app_edit_upload_operation_request_pb\";\nimport type { CreateAppEditUploadOperationResponse, CreateAppEditUploadOperationResponseValid } from \"./create_app_edit_upload_operation_response_pb\";\nimport { CreateAppEditUploadOperationResponseSchema } from \"./create_app_edit_upload_operation_response_pb\";\nimport type { GetAppEditDownloadInfoRequest, GetAppEditDownloadInfoRequestValid } from \"./get_app_edit_download_info_request_pb\";\nimport type { GetAppEditDownloadInfoResponse, GetAppEditDownloadInfoResponseValid } from \"./get_app_edit_download_info_response_pb\";\nimport { GetAppEditDownloadInfoResponseSchema } from \"./get_app_edit_download_info_response_pb\";\nimport type { UpdateAppEditRequest, UpdateAppEditRequestValid } from \"./update_app_edit_request_pb\";\nimport { UpdateAppEditRequestSchema } from \"./update_app_edit_request_pb\";\nimport type { UpdateAppEditResponse, UpdateAppEditResponseValid } from \"./update_app_edit_response_pb\";\nimport { UpdateAppEditResponseSchema } from \"./update_app_edit_response_pb\";\nimport type { SubmitAppEditRequest, SubmitAppEditRequestValid } from \"./submit_app_edit_request_pb\";\nimport { SubmitAppEditRequestSchema } from \"./submit_app_edit_request_pb\";\nimport type { SubmitAppEditResponse, SubmitAppEditResponseValid } from \"./submit_app_edit_response_pb\";\nimport { SubmitAppEditResponseSchema } from \"./submit_app_edit_response_pb\";\nimport type { DeleteAppEditRequest, DeleteAppEditRequestValid } from \"./delete_app_edit_request_pb\";\nimport type { DeleteAppEditResponse, DeleteAppEditResponseValid } from \"./delete_app_edit_response_pb\";\nimport { DeleteAppEditResponseSchema } from \"./delete_app_edit_response_pb\";\nimport type { CreateAppEditListingRequest, CreateAppEditListingRequestValid } from \"./create_app_edit_listing_request_pb\";\nimport { CreateAppEditListingRequestSchema } from \"./create_app_edit_listing_request_pb\";\nimport type { CreateAppEditListingResponse, CreateAppEditListingResponseValid } from \"./create_app_edit_listing_response_pb\";\nimport { CreateAppEditListingResponseSchema } from \"./create_app_edit_listing_response_pb\";\nimport type { CreateAppEditListingIconUploadOperationRequest, CreateAppEditListingIconUploadOperationRequestValid } from \"./create_app_edit_listing_icon_upload_operation_request_pb\";\nimport type { CreateAppEditListingIconUploadOperationResponse, CreateAppEditListingIconUploadOperationResponseValid } from \"./create_app_edit_listing_icon_upload_operation_response_pb\";\nimport { CreateAppEditListingIconUploadOperationResponseSchema } from \"./create_app_edit_listing_icon_upload_operation_response_pb\";\nimport type { DeleteAppEditListingRequest, DeleteAppEditListingRequestValid } from \"./delete_app_edit_listing_request_pb\";\nimport type { DeleteAppEditListingResponse, DeleteAppEditListingResponseValid } from \"./delete_app_edit_listing_response_pb\";\nimport { DeleteAppEditListingResponseSchema } from \"./delete_app_edit_listing_response_pb\";\n\nexport const NG_APP_EDIT_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_APP_EDIT_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing app edits.\n *\n * @generated from service accrescent.console.v1alpha1.AppEditService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgAppEditService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_APP_EDIT_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Creates a new app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEdit\n */\n createAppEdit(request: CreateAppEditRequestValid): Observable<CreateAppEditResponseValid>;\n /**\n * Creates a new app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEdit\n */\n createAppEdit(request: CreateAppEditRequest): Observable<CreateAppEditResponse>;\n createAppEdit(request: CreateAppEditRequest): Observable<CreateAppEditResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/apps/${request.appId}/edits`;\n const json = toJson(CreateAppEditRequestSchema, request);\n const { appId: _appId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Gets an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEdit\n */\n getAppEdit(request: GetAppEditRequestValid): Observable<GetAppEditResponseValid>;\n /**\n * Gets an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEdit\n */\n getAppEdit(request: GetAppEditRequest): Observable<GetAppEditResponse>;\n getAppEdit(request: GetAppEditRequest): Observable<GetAppEditResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Lists app edits.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.ListAppEdits\n */\n listAppEdits(request: ListAppEditsRequestValid): Observable<ListAppEditsResponseValid>;\n /**\n * Lists app edits.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.ListAppEdits\n */\n listAppEdits(request: ListAppEditsRequest): Observable<ListAppEditsResponse>;\n listAppEdits(request: ListAppEditsRequest): Observable<ListAppEditsResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits`;\n const params: Record<string, string | number | boolean> = {};\n if (request.appId !== undefined) params[\"appId\"] = request.appId;\n if (request.pageSize !== undefined) params[\"pageSize\"] = request.pageSize;\n if (request.pageToken !== undefined) params[\"pageToken\"] = request.pageToken;\n\n return this.httpClient.get(url, { params }).pipe(\n map((response) => fromJson(\n ListAppEditsResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Creates an app edit upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditUploadOperation\n */\n createAppEditUploadOperation(request: CreateAppEditUploadOperationRequestValid): Observable<CreateAppEditUploadOperationResponseValid>;\n /**\n * Creates an app edit upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditUploadOperation\n */\n createAppEditUploadOperation(request: CreateAppEditUploadOperationRequest): Observable<CreateAppEditUploadOperationResponse>;\n createAppEditUploadOperation(request: CreateAppEditUploadOperationRequest): Observable<CreateAppEditUploadOperationResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/upload_operations`;\n const json = toJson(CreateAppEditUploadOperationRequestSchema, request);\n const { appEditId: _appEditId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppEditUploadOperationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Gets an app edit's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEditDownloadInfo\n */\n getAppEditDownloadInfo(request: GetAppEditDownloadInfoRequestValid): Observable<GetAppEditDownloadInfoResponseValid>;\n /**\n * Gets an app edit's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEditDownloadInfo\n */\n getAppEditDownloadInfo(request: GetAppEditDownloadInfoRequest): Observable<GetAppEditDownloadInfoResponse>;\n getAppEditDownloadInfo(request: GetAppEditDownloadInfoRequest): Observable<GetAppEditDownloadInfoResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/download_info`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppEditDownloadInfoResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Updates an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.UpdateAppEdit\n */\n updateAppEdit(request: UpdateAppEditRequestValid): Observable<UpdateAppEditResponseValid>;\n /**\n * Updates an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.UpdateAppEdit\n */\n updateAppEdit(request: UpdateAppEditRequest): Observable<UpdateAppEditResponse>;\n updateAppEdit(request: UpdateAppEditRequest): Observable<UpdateAppEditResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}`;\n const json = toJson(UpdateAppEditRequestSchema, request);\n const { appEditId: _appEditId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.patch(url, body).pipe(\n map((response) => fromJson(\n UpdateAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Submits an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.SubmitAppEdit\n */\n submitAppEdit(request: SubmitAppEditRequestValid): Observable<SubmitAppEditResponseValid>;\n /**\n * Submits an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.SubmitAppEdit\n */\n submitAppEdit(request: SubmitAppEditRequest): Observable<SubmitAppEditResponse>;\n submitAppEdit(request: SubmitAppEditRequest): Observable<SubmitAppEditResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}:submit`;\n const json = toJson(SubmitAppEditRequestSchema, request);\n const { appEditId: _appEditId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n SubmitAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Deletes an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEdit\n */\n deleteAppEdit(request: DeleteAppEditRequestValid): Observable<DeleteAppEditResponseValid>;\n /**\n * Deletes an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEdit\n */\n deleteAppEdit(request: DeleteAppEditRequest): Observable<DeleteAppEditResponse>;\n deleteAppEdit(request: DeleteAppEditRequest): Observable<DeleteAppEditResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}`;\n\n return this.httpClient.delete(url).pipe(\n map((response) => fromJson(\n DeleteAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Creates a new app listing for an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListing\n */\n createAppEditListing(request: CreateAppEditListingRequestValid): Observable<CreateAppEditListingResponseValid>;\n /**\n * Creates a new app listing for an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListing\n */\n createAppEditListing(request: CreateAppEditListingRequest): Observable<CreateAppEditListingResponse>;\n createAppEditListing(request: CreateAppEditListingRequest): Observable<CreateAppEditListingResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/listings/${request.language}`;\n const json = toJson(CreateAppEditListingRequestSchema, request);\n const { appEditId: _appEditId, language: _language, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppEditListingResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Creates an app edit listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListingIconUploadOperation\n */\n createAppEditListingIconUploadOperation(request: CreateAppEditListingIconUploadOperationRequestValid): Observable<CreateAppEditListingIconUploadOperationResponseValid>;\n /**\n * Creates an app edit listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListingIconUploadOperation\n */\n createAppEditListingIconUploadOperation(request: CreateAppEditListingIconUploadOperationRequest): Observable<CreateAppEditListingIconUploadOperationResponse>;\n createAppEditListingIconUploadOperation(request: CreateAppEditListingIconUploadOperationRequest): Observable<CreateAppEditListingIconUploadOperationResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/listings/${request.language}/icon/upload_operations`;\n\n return this.httpClient.post(url, null).pipe(\n map((response) => fromJson(\n CreateAppEditListingIconUploadOperationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Deletes an existing app edit listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEditListing\n */\n deleteAppEditListing(request: DeleteAppEditListingRequestValid): Observable<DeleteAppEditListingResponseValid>;\n /**\n * Deletes an existing app edit listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEditListing\n */\n deleteAppEditListing(request: DeleteAppEditListingRequest): Observable<DeleteAppEditListingResponse>;\n deleteAppEditListing(request: DeleteAppEditListingRequest): Observable<DeleteAppEditListingResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/listings/${request.language}`;\n\n return this.httpClient.delete(url).pipe(\n map((response) => fromJson(\n DeleteAppEditListingResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_request: GenFile = /*@__PURE__*/\n fileDesc(\"CldhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X2xpc3RpbmdfaWNvbl91cGxvYWRfb3BlcmF0aW9uX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJnCi5DcmVhdGVBcHBFZGl0TGlzdGluZ0ljb25VcGxvYWRPcGVyYXRpb25SZXF1ZXN0EhsKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQESGAoIbGFuZ3VhZ2UYAiABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app edit listing icon upload\n * operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest\n */\nexport type CreateAppEditListingIconUploadOperationRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest\"> & {\n /**\n * The ID of the app edit to create an icon upload operation for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The language of the app listing to create an icon upload operation for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for creating an app edit listing icon upload\n * operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest\n */\nexport type CreateAppEditListingIconUploadOperationRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest\"> & {\n /**\n * The ID of the app edit to create an icon upload operation for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The language of the app listing to create an icon upload operation for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest.\n * Use `create(CreateAppEditListingIconUploadOperationRequestSchema)` to create a new message.\n */\nexport const CreateAppEditListingIconUploadOperationRequestSchema: GenMessage<CreateAppEditListingIconUploadOperationRequest, {validType: CreateAppEditListingIconUploadOperationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_edit_listing_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_edit_listing_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_edit_listing_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9lZGl0X2xpc3RpbmdfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIlQKG0RlbGV0ZUFwcEVkaXRMaXN0aW5nUmVxdWVzdBIbCgthcHBfZWRpdF9pZBgBIAEoCUIGukgDyAEBEhgKCGxhbmd1YWdlGAIgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for deleting an app edit listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditListingRequest\n */\nexport type DeleteAppEditListingRequest = Message<\"accrescent.console.v1alpha1.DeleteAppEditListingRequest\"> & {\n /**\n * The ID of the app edit the listing is associated with.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The BCP-47 language tag of the listing to delete.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for deleting an app edit listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditListingRequest\n */\nexport type DeleteAppEditListingRequestValid = Message<\"accrescent.console.v1alpha1.DeleteAppEditListingRequest\"> & {\n /**\n * The ID of the app edit the listing is associated with.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The BCP-47 language tag of the listing to delete.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppEditListingRequest.\n * Use `create(DeleteAppEditListingRequestSchema)` to create a new message.\n */\nexport const DeleteAppEditListingRequestSchema: GenMessage<DeleteAppEditListingRequest, {validType: DeleteAppEditListingRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_edit_listing_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIzChREZWxldGVBcHBFZGl0UmVxdWVzdBIbCgthcHBfZWRpdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for deleting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditRequest\n */\nexport type DeleteAppEditRequest = Message<\"accrescent.console.v1alpha1.DeleteAppEditRequest\"> & {\n /**\n * The ID of the app edit to delete.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for deleting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditRequest\n */\nexport type DeleteAppEditRequestValid = Message<\"accrescent.console.v1alpha1.DeleteAppEditRequest\"> & {\n /**\n * The ID of the app edit to delete.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppEditRequest.\n * Use `create(DeleteAppEditRequestSchema)` to create a new message.\n */\nexport const DeleteAppEditRequestSchema: GenMessage<DeleteAppEditRequest, {validType: DeleteAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_edit_download_info_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_edit_download_info_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_edit_download_info_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkRhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9lZGl0X2Rvd25sb2FkX2luZm9fcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIjwKHUdldEFwcEVkaXREb3dubG9hZEluZm9SZXF1ZXN0EhsKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app edit's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest\n */\nexport type GetAppEditDownloadInfoRequest = Message<\"accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest\"> & {\n /**\n * The ID of the app edit to get download info for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for getting an app edit's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest\n */\nexport type GetAppEditDownloadInfoRequestValid = Message<\"accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest\"> & {\n /**\n * The ID of the app edit to get download info for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest.\n * Use `create(GetAppEditDownloadInfoRequestSchema)` to create a new message.\n */\nexport const GetAppEditDownloadInfoRequestSchema: GenMessage<GetAppEditDownloadInfoRequest, {validType: GetAppEditDownloadInfoRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_edit_download_info_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIwChFHZXRBcHBFZGl0UmVxdWVzdBIbCgthcHBfZWRpdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditRequest\n */\nexport type GetAppEditRequest = Message<\"accrescent.console.v1alpha1.GetAppEditRequest\"> & {\n /**\n * The ID of the app edit to retrieve.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for getting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditRequest\n */\nexport type GetAppEditRequestValid = Message<\"accrescent.console.v1alpha1.GetAppEditRequest\"> & {\n /**\n * The ID of the app edit to retrieve.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppEditRequest.\n * Use `create(GetAppEditRequestSchema)` to create a new message.\n */\nexport const GetAppEditRequestSchema: GenMessage<GetAppEditRequest, {validType: GetAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_app_edits_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_app_edits_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_app_edits_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBfZWRpdHNfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIosBChNMaXN0QXBwRWRpdHNSZXF1ZXN0EhsKBmFwcF9pZBgBIAEoCUIGukgDyAEBSACIAQESFgoJcGFnZV9zaXplGAIgASgNSAGIAQESFwoKcGFnZV90b2tlbhgDIAEoCUgCiAEBQgkKB19hcHBfaWRCDAoKX3BhZ2Vfc2l6ZUINCgtfcGFnZV90b2tlbkJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for listing app edits.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppEditsRequest\n */\nexport type ListAppEditsRequest = Message<\"accrescent.console.v1alpha1.ListAppEditsRequest\"> & {\n /**\n * The app containing the edits to list.\n *\n * @generated from field: optional string app_id = 1;\n */\n appId?: string;\n\n /**\n * The maximum number of app edits to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListAppEditsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Request defining parameters for listing app edits.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppEditsRequest\n */\nexport type ListAppEditsRequestValid = Message<\"accrescent.console.v1alpha1.ListAppEditsRequest\"> & {\n /**\n * The app containing the edits to list.\n *\n * @generated from field: optional string app_id = 1;\n */\n appId: string;\n\n /**\n * The maximum number of app edits to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListAppEditsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppEditsRequest.\n * Use `create(ListAppEditsRequestSchema)` to create a new message.\n */\nexport const ListAppEditsRequestSchema: GenMessage<ListAppEditsRequest, {validType: ListAppEditsRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_app_edits_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_edit_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { CreateAppEditListingIconUploadOperationRequestSchema } from \"./create_app_edit_listing_icon_upload_operation_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_request } from \"./create_app_edit_listing_icon_upload_operation_request_pb\";\nimport type { CreateAppEditListingIconUploadOperationResponseSchema } from \"./create_app_edit_listing_icon_upload_operation_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_response } from \"./create_app_edit_listing_icon_upload_operation_response_pb\";\nimport type { CreateAppEditListingRequestSchema } from \"./create_app_edit_listing_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_listing_request } from \"./create_app_edit_listing_request_pb\";\nimport type { CreateAppEditListingResponseSchema } from \"./create_app_edit_listing_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_listing_response } from \"./create_app_edit_listing_response_pb\";\nimport type { CreateAppEditRequestSchema } from \"./create_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_request } from \"./create_app_edit_request_pb\";\nimport type { CreateAppEditResponseSchema } from \"./create_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_response } from \"./create_app_edit_response_pb\";\nimport type { CreateAppEditUploadOperationRequestSchema } from \"./create_app_edit_upload_operation_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_upload_operation_request } from \"./create_app_edit_upload_operation_request_pb\";\nimport type { CreateAppEditUploadOperationResponseSchema } from \"./create_app_edit_upload_operation_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_upload_operation_response } from \"./create_app_edit_upload_operation_response_pb\";\nimport type { DeleteAppEditListingRequestSchema } from \"./delete_app_edit_listing_request_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_edit_listing_request } from \"./delete_app_edit_listing_request_pb\";\nimport type { DeleteAppEditListingResponseSchema } from \"./delete_app_edit_listing_response_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_edit_listing_response } from \"./delete_app_edit_listing_response_pb\";\nimport type { DeleteAppEditRequestSchema } from \"./delete_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_edit_request } from \"./delete_app_edit_request_pb\";\nimport type { DeleteAppEditResponseSchema } from \"./delete_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_edit_response } from \"./delete_app_edit_response_pb\";\nimport type { GetAppEditDownloadInfoRequestSchema } from \"./get_app_edit_download_info_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_edit_download_info_request } from \"./get_app_edit_download_info_request_pb\";\nimport type { GetAppEditDownloadInfoResponseSchema } from \"./get_app_edit_download_info_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_edit_download_info_response } from \"./get_app_edit_download_info_response_pb\";\nimport type { GetAppEditRequestSchema } from \"./get_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_edit_request } from \"./get_app_edit_request_pb\";\nimport type { GetAppEditResponseSchema } from \"./get_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_edit_response } from \"./get_app_edit_response_pb\";\nimport type { ListAppEditsRequestSchema } from \"./list_app_edits_request_pb\";\nimport { file_accrescent_console_v1alpha1_list_app_edits_request } from \"./list_app_edits_request_pb\";\nimport type { ListAppEditsResponseSchema } from \"./list_app_edits_response_pb\";\nimport { file_accrescent_console_v1alpha1_list_app_edits_response } from \"./list_app_edits_response_pb\";\nimport type { SubmitAppEditRequestSchema } from \"./submit_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_submit_app_edit_request } from \"./submit_app_edit_request_pb\";\nimport type { SubmitAppEditResponseSchema } from \"./submit_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_submit_app_edit_response } from \"./submit_app_edit_response_pb\";\nimport type { UpdateAppEditRequestSchema } from \"./update_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_edit_request } from \"./update_app_edit_request_pb\";\nimport type { UpdateAppEditResponseSchema } from \"./update_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_edit_response } from \"./update_app_edit_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_edit_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_edit_service: GenFile = /*@__PURE__*/\n fileDesc(\"CjJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX2VkaXRfc2VydmljZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExMs8SCg5BcHBFZGl0U2VydmljZRK4AQoNQ3JlYXRlQXBwRWRpdBIxLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0UmVxdWVzdBoyLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0UmVzcG9uc2UiQILT5JMCOjoBKiI1L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcHMve2FwcF9pZH0vZWRpdHMSsAEKCkdldEFwcEVkaXQSLi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwRWRpdFJlcXVlc3QaLy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwRWRpdFJlc3BvbnNlIkGC0+STAjsSOS9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZWRpdHMve2FwcF9lZGl0X2lkfRKoAQoMTGlzdEFwcEVkaXRzEjAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkxpc3RBcHBFZGl0c1JlcXVlc3QaMS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuTGlzdEFwcEVkaXRzUmVzcG9uc2UiM4LT5JMCLRIrL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9lZGl0cxL7AQocQ3JlYXRlQXBwRWRpdFVwbG9hZE9wZXJhdGlvbhJALmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0VXBsb2FkT3BlcmF0aW9uUmVxdWVzdBpBLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0VXBsb2FkT3BlcmF0aW9uUmVzcG9uc2UiVoLT5JMCUDoBKiJLL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9lZGl0cy97YXBwX2VkaXRfaWR9L3VwbG9hZF9vcGVyYXRpb25zEuIBChZHZXRBcHBFZGl0RG93bmxvYWRJbmZvEjouYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcEVkaXREb3dubG9hZEluZm9SZXF1ZXN0GjsuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcEVkaXREb3dubG9hZEluZm9SZXNwb25zZSJPgtPkkwJJEkcvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH0vZG93bmxvYWRfaW5mbxK8AQoNVXBkYXRlQXBwRWRpdBIxLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVBcHBFZGl0UmVxdWVzdBoyLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVBcHBFZGl0UmVzcG9uc2UiRILT5JMCPjoBKjI5L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9lZGl0cy97YXBwX2VkaXRfaWR9EsMBCg1TdWJtaXRBcHBFZGl0EjEuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlN1Ym1pdEFwcEVkaXRSZXF1ZXN0GjIuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlN1Ym1pdEFwcEVkaXRSZXNwb25zZSJLgtPkkwJFOgEqIkAvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH06c3VibWl0ErkBCg1EZWxldGVBcHBFZGl0EjEuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkRlbGV0ZUFwcEVkaXRSZXF1ZXN0GjIuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkRlbGV0ZUFwcEVkaXRSZXNwb25zZSJBgtPkkwI7KjkvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH0S5QEKFENyZWF0ZUFwcEVkaXRMaXN0aW5nEjguYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkNyZWF0ZUFwcEVkaXRMaXN0aW5nUmVxdWVzdBo5LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0TGlzdGluZ1Jlc3BvbnNlIliC0+STAlI6ASoiTS9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZWRpdHMve2FwcF9lZGl0X2lkfS9saXN0aW5ncy97bGFuZ3VhZ2V9ErICCidDcmVhdGVBcHBFZGl0TGlzdGluZ0ljb25VcGxvYWRPcGVyYXRpb24SSy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRWRpdExpc3RpbmdJY29uVXBsb2FkT3BlcmF0aW9uUmVxdWVzdBpMLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0TGlzdGluZ0ljb25VcGxvYWRPcGVyYXRpb25SZXNwb25zZSJsgtPkkwJmImQvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH0vbGlzdGluZ3Mve2xhbmd1YWdlfS9pY29uL3VwbG9hZF9vcGVyYXRpb25zEuIBChREZWxldGVBcHBFZGl0TGlzdGluZxI4LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5EZWxldGVBcHBFZGl0TGlzdGluZ1JlcXVlc3QaOS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuRGVsZXRlQXBwRWRpdExpc3RpbmdSZXNwb25zZSJVgtPkkwJPKk0vZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH0vbGlzdGluZ3Mve2xhbmd1YWdlfUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_request, file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_response, file_accrescent_console_v1alpha1_create_app_edit_listing_request, file_accrescent_console_v1alpha1_create_app_edit_listing_response, file_accrescent_console_v1alpha1_create_app_edit_request, file_accrescent_console_v1alpha1_create_app_edit_response, file_accrescent_console_v1alpha1_create_app_edit_upload_operation_request, file_accrescent_console_v1alpha1_create_app_edit_upload_operation_response, file_accrescent_console_v1alpha1_delete_app_edit_listing_request, file_accrescent_console_v1alpha1_delete_app_edit_listing_response, file_accrescent_console_v1alpha1_delete_app_edit_request, file_accrescent_console_v1alpha1_delete_app_edit_response, file_accrescent_console_v1alpha1_get_app_edit_download_info_request, file_accrescent_console_v1alpha1_get_app_edit_download_info_response, file_accrescent_console_v1alpha1_get_app_edit_request, file_accrescent_console_v1alpha1_get_app_edit_response, file_accrescent_console_v1alpha1_list_app_edits_request, file_accrescent_console_v1alpha1_list_app_edits_response, file_accrescent_console_v1alpha1_submit_app_edit_request, file_accrescent_console_v1alpha1_submit_app_edit_response, file_accrescent_console_v1alpha1_update_app_edit_request, file_accrescent_console_v1alpha1_update_app_edit_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing app edits.\n *\n * @generated from service accrescent.console.v1alpha1.AppEditService\n */\nexport const AppEditService: GenService<{\n /**\n * Creates a new app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEdit\n */\n createAppEdit: {\n methodKind: \"unary\";\n input: typeof CreateAppEditRequestSchema;\n output: typeof CreateAppEditResponseSchema;\n },\n /**\n * Gets an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEdit\n */\n getAppEdit: {\n methodKind: \"unary\";\n input: typeof GetAppEditRequestSchema;\n output: typeof GetAppEditResponseSchema;\n },\n /**\n * Lists app edits.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.ListAppEdits\n */\n listAppEdits: {\n methodKind: \"unary\";\n input: typeof ListAppEditsRequestSchema;\n output: typeof ListAppEditsResponseSchema;\n },\n /**\n * Creates an app edit upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditUploadOperation\n */\n createAppEditUploadOperation: {\n methodKind: \"unary\";\n input: typeof CreateAppEditUploadOperationRequestSchema;\n output: typeof CreateAppEditUploadOperationResponseSchema;\n },\n /**\n * Gets an app edit's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEditDownloadInfo\n */\n getAppEditDownloadInfo: {\n methodKind: \"unary\";\n input: typeof GetAppEditDownloadInfoRequestSchema;\n output: typeof GetAppEditDownloadInfoResponseSchema;\n },\n /**\n * Updates an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.UpdateAppEdit\n */\n updateAppEdit: {\n methodKind: \"unary\";\n input: typeof UpdateAppEditRequestSchema;\n output: typeof UpdateAppEditResponseSchema;\n },\n /**\n * Submits an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.SubmitAppEdit\n */\n submitAppEdit: {\n methodKind: \"unary\";\n input: typeof SubmitAppEditRequestSchema;\n output: typeof SubmitAppEditResponseSchema;\n },\n /**\n * Deletes an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEdit\n */\n deleteAppEdit: {\n methodKind: \"unary\";\n input: typeof DeleteAppEditRequestSchema;\n output: typeof DeleteAppEditResponseSchema;\n },\n /**\n * Creates a new app listing for an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListing\n */\n createAppEditListing: {\n methodKind: \"unary\";\n input: typeof CreateAppEditListingRequestSchema;\n output: typeof CreateAppEditListingResponseSchema;\n },\n /**\n * Creates an app edit listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListingIconUploadOperation\n */\n createAppEditListingIconUploadOperation: {\n methodKind: \"unary\";\n input: typeof CreateAppEditListingIconUploadOperationRequestSchema;\n output: typeof CreateAppEditListingIconUploadOperationResponseSchema;\n },\n /**\n * Deletes an existing app edit listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEditListing\n */\n deleteAppEditListing: {\n methodKind: \"unary\";\n input: typeof DeleteAppEditListingRequestSchema;\n output: typeof DeleteAppEditListingResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_app_edit_service, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app.proto.\n */\nexport const file_accrescent_console_v1alpha1_app: GenFile = /*@__PURE__*/\n fileDesc(\"CiVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiqwEKA0FwcBIXCgJpZBgBIAEoCUIGukgDyAEBSACIAQESLQoYZGVmYXVsdF9saXN0aW5nX2xhbmd1YWdlGAIgASgJQga6SAPIAQFIAYgBARIkCg9wdWJsaWNseV9saXN0ZWQYAyABKAhCBrpIA8gBAUgCiAEBQgUKA19pZEIbChlfZGVmYXVsdF9saXN0aW5nX2xhbmd1YWdlQhIKEF9wdWJsaWNseV9saXN0ZWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * A published app.\n *\n * @generated from message accrescent.console.v1alpha1.App\n */\nexport type App = Message<\"accrescent.console.v1alpha1.App\"> & {\n /**\n * The app's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The app's default listing language.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage?: string;\n\n /**\n * Whether the app is publicly listed on the store.\n *\n * @generated from field: optional bool publicly_listed = 3;\n */\n publiclyListed?: boolean;\n};\n\n/**\n * A published app.\n *\n * @generated from message accrescent.console.v1alpha1.App\n */\nexport type AppValid = Message<\"accrescent.console.v1alpha1.App\"> & {\n /**\n * The app's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The app's default listing language.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage: string;\n\n /**\n * Whether the app is publicly listed on the store.\n *\n * @generated from field: optional bool publicly_listed = 3;\n */\n publiclyListed: boolean;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.App.\n * Use `create(AppSchema)` to create a new message.\n */\nexport const AppSchema: GenMessage<App, {validType: AppValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_app, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { App, AppValid } from \"./app_pb\";\nimport { file_accrescent_console_v1alpha1_app } from \"./app_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIkcKDkdldEFwcFJlc3BvbnNlEjUKA2FwcBgBIAEoCzIgLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5BcHBCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app, file_buf_validate_validate]);\n\n/**\n * Response to getting an app.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppResponse\n */\nexport type GetAppResponse = Message<\"accrescent.console.v1alpha1.GetAppResponse\"> & {\n /**\n * The requested app.\n *\n * @generated from field: accrescent.console.v1alpha1.App app = 1;\n */\n app?: App;\n};\n\n/**\n * Response to getting an app.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppResponse\n */\nexport type GetAppResponseValid = Message<\"accrescent.console.v1alpha1.GetAppResponse\"> & {\n /**\n * The requested app.\n *\n * @generated from field: accrescent.console.v1alpha1.App app = 1;\n */\n app: AppValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppResponse.\n * Use `create(GetAppResponseSchema)` to create a new message.\n */\nexport const GetAppResponseSchema: GenMessage<GetAppResponse, {validType: GetAppResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_apps_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { App, AppValid } from \"./app_pb\";\nimport { file_accrescent_console_v1alpha1_app } from \"./app_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_apps_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_apps_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjRhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBzX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiygEKEExpc3RBcHBzUmVzcG9uc2USgwEKBGFwcHMYASADKAsyIC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQXBwQlO6SFC6AU0KFGFwcHMuaGF2ZV91bmlxdWVfaWRzEhlhcHBzIG11c3QgaGF2ZSB1bmlxdWUgSURzGhp0aGlzLm1hcChhLCBhLmlkKS51bmlxdWUoKRIcCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAlIAIgBAUISChBfbmV4dF9wYWdlX3Rva2VuQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_accrescent_console_v1alpha1_app, file_buf_validate_validate]);\n\n/**\n * Response to listing published apps.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppsResponse\n */\nexport type ListAppsResponse = Message<\"accrescent.console.v1alpha1.ListAppsResponse\"> & {\n /**\n * The apps matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.App apps = 1;\n */\n apps: App[];\n\n /**\n * An opaque token which, if passed to another invocation of ListApps, will\n * return the next page of organizations.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Response to listing published apps.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppsResponse\n */\nexport type ListAppsResponseValid = Message<\"accrescent.console.v1alpha1.ListAppsResponse\"> & {\n /**\n * The apps matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.App apps = 1;\n */\n apps: AppValid[];\n\n /**\n * An opaque token which, if passed to another invocation of ListApps, will\n * return the next page of organizations.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppsResponse.\n * Use `create(ListAppsResponseSchema)` to create a new message.\n */\nexport const ListAppsResponseSchema: GenMessage<ListAppsResponse, {validType: ListAppsResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_apps_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { FieldMask } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_field_mask } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjRhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEisQEKEFVwZGF0ZUFwcFJlcXVlc3QSFgoGYXBwX2lkGAEgASgJQga6SAPIAQESJAoPcHVibGljbHlfbGlzdGVkGAIgASgIQga6SAPIAQFIAIgBARJLCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCGrpIF8gBAeIBERIPcHVibGljbHlfbGlzdGVkQhIKEF9wdWJsaWNseV9saXN0ZWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate, file_google_protobuf_field_mask]);\n\n/**\n * Request defining parameters for updating a published app.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppRequest\n */\nexport type UpdateAppRequest = Message<\"accrescent.console.v1alpha1.UpdateAppRequest\"> & {\n /**\n * The ID of the app to update.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n\n /**\n * Whether the app is publicly listed on the store.\n *\n * @generated from field: optional bool publicly_listed = 2;\n */\n publiclyListed?: boolean;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask?: FieldMask;\n};\n\n/**\n * Request defining parameters for updating a published app.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppRequest\n */\nexport type UpdateAppRequestValid = Message<\"accrescent.console.v1alpha1.UpdateAppRequest\"> & {\n /**\n * The ID of the app to update.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n\n /**\n * Whether the app is publicly listed on the store.\n *\n * @generated from field: optional bool publicly_listed = 2;\n */\n publiclyListed: boolean;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask: FieldMask;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppRequest.\n * Use `create(UpdateAppRequestSchema)` to create a new message.\n */\nexport const UpdateAppRequestSchema: GenMessage<UpdateAppRequest, {validType: UpdateAppRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhMKEVVwZGF0ZUFwcFJlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to updating a published app.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppResponse\n */\nexport type UpdateAppResponse = Message<\"accrescent.console.v1alpha1.UpdateAppResponse\"> & {\n};\n\nexport type UpdateAppResponseValid = UpdateAppResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppResponse.\n * Use `create(UpdateAppResponseSchema)` to create a new message.\n */\nexport const UpdateAppResponseSchema: GenMessage<UpdateAppResponse, {validType: UpdateAppResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.3.0 with parameter \"target=ts,valid_types=true\"\n// @generated from file accrescent/console/v1alpha1/app_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { GetAppRequest, GetAppRequestValid } from \"./get_app_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { GetAppResponse, GetAppResponseValid } from \"./get_app_response_pb\";\nimport { GetAppResponseSchema } from \"./get_app_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { ListAppsRequest, ListAppsRequestValid } from \"./list_apps_request_pb\";\nimport type { ListAppsResponse, ListAppsResponseValid } from \"./list_apps_response_pb\";\nimport { ListAppsResponseSchema } from \"./list_apps_response_pb\";\nimport type { UpdateAppRequest, UpdateAppRequestValid } from \"./update_app_request_pb\";\nimport { UpdateAppRequestSchema } from \"./update_app_request_pb\";\nimport type { UpdateAppResponse, UpdateAppResponseValid } from \"./update_app_response_pb\";\nimport { UpdateAppResponseSchema } from \"./update_app_response_pb\";\n\nexport const NG_APP_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_APP_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing published apps.\n *\n * @generated from service accrescent.console.v1alpha1.AppService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgAppService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_APP_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Gets a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.GetApp\n */\n getApp(request: GetAppRequestValid): Observable<GetAppResponseValid>;\n /**\n * Gets a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.GetApp\n */\n getApp(request: GetAppRequest): Observable<GetAppResponse>;\n getApp(request: GetAppRequest): Observable<GetAppResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/apps/${request.appId}`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Lists published apps.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.ListApps\n */\n listApps(request: ListAppsRequestValid): Observable<ListAppsResponseValid>;\n /**\n * Lists published apps.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.ListApps\n */\n listApps(request: ListAppsRequest): Observable<ListAppsResponse>;\n listApps(request: ListAppsRequest): Observable<ListAppsResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/apps`;\n const params: Record<string, string | number | boolean> = {};\n if (request.organizationId !== undefined) params[\"organizationId\"] = request.organizationId;\n if (request.pageSize !== undefined) params[\"pageSize\"] = request.pageSize;\n if (request.pageToken !== undefined) params[\"pageToken\"] = request.pageToken;\n\n return this.httpClient.get(url, { params }).pipe(\n map((response) => fromJson(\n ListAppsResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Updates a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.UpdateApp\n */\n updateApp(request: UpdateAppRequestValid): Observable<UpdateAppResponseValid>;\n /**\n * Updates a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.UpdateApp\n */\n updateApp(request: UpdateAppRequest): Observable<UpdateAppResponse>;\n updateApp(request: UpdateAppRequest): Observable<UpdateAppResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/apps/${request.appId}`;\n const json = toJson(UpdateAppRequestSchema, request);\n const { appId: _appId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.patch(url, body).pipe(\n map((response) => fromJson(\n UpdateAppResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiJwoNR2V0QXBwUmVxdWVzdBIWCgZhcHBfaWQYASABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting a published app.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppRequest\n */\nexport type GetAppRequest = Message<\"accrescent.console.v1alpha1.GetAppRequest\"> & {\n /**\n * The ID of the app to retrieve.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n};\n\n/**\n * Request defining parameters for getting a published app.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppRequest\n */\nexport type GetAppRequestValid = Message<\"accrescent.console.v1alpha1.GetAppRequest\"> & {\n /**\n * The ID of the app to retrieve.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppRequest.\n * Use `create(GetAppRequestSchema)` to create a new message.\n */\nexport const GetAppRequestSchema: GenMessage<GetAppRequest, {validType: GetAppRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_apps_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_apps_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_apps_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBzX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSKZAQoPTGlzdEFwcHNSZXF1ZXN0EiQKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIGukgDyAEBSACIAQESFgoJcGFnZV9zaXplGAIgASgNSAGIAQESFwoKcGFnZV90b2tlbhgDIAEoCUgCiAEBQhIKEF9vcmdhbml6YXRpb25faWRCDAoKX3BhZ2Vfc2l6ZUINCgtfcGFnZV90b2tlbkJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for listing published apps.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppsRequest\n */\nexport type ListAppsRequest = Message<\"accrescent.console.v1alpha1.ListAppsRequest\"> & {\n /**\n * The organization containing the apps to list.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId?: string;\n\n /**\n * The maximum number of apps to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous ListAppsResponse.\n * If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Request defining parameters for listing published apps.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppsRequest\n */\nexport type ListAppsRequestValid = Message<\"accrescent.console.v1alpha1.ListAppsRequest\"> & {\n /**\n * The organization containing the apps to list.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId: string;\n\n /**\n * The maximum number of apps to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous ListAppsResponse.\n * If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppsRequest.\n * Use `create(ListAppsRequestSchema)` to create a new message.\n */\nexport const ListAppsRequestSchema: GenMessage<ListAppsRequest, {validType: ListAppsRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_apps_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { GetAppRequestSchema } from \"./get_app_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_request } from \"./get_app_request_pb\";\nimport type { GetAppResponseSchema } from \"./get_app_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_response } from \"./get_app_response_pb\";\nimport type { ListAppsRequestSchema } from \"./list_apps_request_pb\";\nimport { file_accrescent_console_v1alpha1_list_apps_request } from \"./list_apps_request_pb\";\nimport type { ListAppsResponseSchema } from \"./list_apps_response_pb\";\nimport { file_accrescent_console_v1alpha1_list_apps_response } from \"./list_apps_response_pb\";\nimport type { UpdateAppRequestSchema } from \"./update_app_request_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_request } from \"./update_app_request_pb\";\nimport type { UpdateAppResponseSchema } from \"./update_app_response_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_response } from \"./update_app_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_service: GenFile = /*@__PURE__*/\n fileDesc(\"Ci1hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX3NlcnZpY2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMTLsAwoKQXBwU2VydmljZRKaAQoGR2V0QXBwEiouYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcFJlcXVlc3QaKy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwUmVzcG9uc2UiN4LT5JMCMRIvL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcHMve2FwcF9pZH0SlwEKCExpc3RBcHBzEiwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkxpc3RBcHBzUmVxdWVzdBotLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5MaXN0QXBwc1Jlc3BvbnNlIi6C0+STAigSJi9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBzEqYBCglVcGRhdGVBcHASLS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuVXBkYXRlQXBwUmVxdWVzdBouLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVBcHBSZXNwb25zZSI6gtPkkwI0OgEqMi8vZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwcy97YXBwX2lkfUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_get_app_request, file_accrescent_console_v1alpha1_get_app_response, file_accrescent_console_v1alpha1_list_apps_request, file_accrescent_console_v1alpha1_list_apps_response, file_accrescent_console_v1alpha1_update_app_request, file_accrescent_console_v1alpha1_update_app_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing published apps.\n *\n * @generated from service accrescent.console.v1alpha1.AppService\n */\nexport const AppService: GenService<{\n /**\n * Gets a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.GetApp\n */\n getApp: {\n methodKind: \"unary\";\n input: typeof GetAppRequestSchema;\n output: typeof GetAppResponseSchema;\n },\n /**\n * Lists published apps.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.ListApps\n */\n listApps: {\n methodKind: \"unary\";\n input: typeof ListAppsRequestSchema;\n output: typeof ListAppsResponseSchema;\n },\n /**\n * Updates a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.UpdateApp\n */\n updateApp: {\n methodKind: \"unary\";\n input: typeof UpdateAppRequestSchema;\n output: typeof UpdateAppResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_app_service, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/rejection_reason.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/rejection_reason.proto.\n */\nexport const file_accrescent_console_v1alpha1_rejection_reason: GenFile = /*@__PURE__*/\n fileDesc(\"CjJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcmVqZWN0aW9uX3JlYXNvbi5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIjkKD1JlamVjdGlvblJlYXNvbhIbCgZyZWFzb24YASABKAlCBrpIA8gBAUgAiAEBQgkKB19yZWFzb25CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * A reason for rejecting the item in review.\n *\n * @generated from message accrescent.console.v1alpha1.RejectionReason\n */\nexport type RejectionReason = Message<\"accrescent.console.v1alpha1.RejectionReason\"> & {\n /**\n * The English explanation of the rejection reason.\n *\n * @generated from field: optional string reason = 1;\n */\n reason?: string;\n};\n\n/**\n * A reason for rejecting the item in review.\n *\n * @generated from message accrescent.console.v1alpha1.RejectionReason\n */\nexport type RejectionReasonValid = Message<\"accrescent.console.v1alpha1.RejectionReason\"> & {\n /**\n * The English explanation of the rejection reason.\n *\n * @generated from field: optional string reason = 1;\n */\n reason: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.RejectionReason.\n * Use `create(RejectionReasonSchema)` to create a new message.\n */\nexport const RejectionReasonSchema: GenMessage<RejectionReason, {validType: RejectionReasonValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_rejection_reason, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_review_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { RejectionReason, RejectionReasonValid } from \"./rejection_reason_pb\";\nimport { file_accrescent_console_v1alpha1_rejection_reason } from \"./rejection_reason_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_review_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_review_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9yZXZpZXdfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIoIDChtDcmVhdGVBcHBEcmFmdFJldmlld1JlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQESHQoIYXBwcm92ZWQYAiABKAhCBrpIA8gBAUgAiAEBEkcKEXJlamVjdGlvbl9yZWFzb25zGAMgAygLMiwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlJlamVjdGlvblJlYXNvbjrPAbpIywEayAEKJnJlamVjdGlvbl9yZWFzb25zLnByZXNlbnRfaWZmX3JlamVjdGVkEkZyZWplY3Rpb24gcmVhc29ucyBtdXN0IGJlIHByZXNlbnQgaWYgYW5kIG9ubHkgaWYgcmV2aWV3IGlzIGEgcmVqZWN0aW9uGlZ0aGlzLmFwcHJvdmVkID8gdGhpcy5yZWplY3Rpb25fcmVhc29ucy5zaXplKCkgPT0gMCA6IHRoaXMucmVqZWN0aW9uX3JlYXNvbnMuc2l6ZSgpID4gMEILCglfYXBwcm92ZWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_rejection_reason, file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app draft review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftReviewRequest\n */\nexport type CreateAppDraftReviewRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftReviewRequest\"> & {\n /**\n * The ID of the app draft to create a review for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * Whether the app draft should be approved. If false, it is rejected.\n *\n * @generated from field: optional bool approved = 2;\n */\n approved?: boolean;\n\n /**\n * The list of reasons for rejection if the review is a rejection.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.RejectionReason rejection_reasons = 3;\n */\n rejectionReasons: RejectionReason[];\n};\n\n/**\n * Request defining parameters for creating an app draft review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftReviewRequest\n */\nexport type CreateAppDraftReviewRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftReviewRequest\"> & {\n /**\n * The ID of the app draft to create a review for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * Whether the app draft should be approved. If false, it is rejected.\n *\n * @generated from field: optional bool approved = 2;\n */\n approved: boolean;\n\n /**\n * The list of reasons for rejection if the review is a rejection.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.RejectionReason rejection_reasons = 3;\n */\n rejectionReasons: RejectionReasonValid[];\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftReviewRequest.\n * Use `create(CreateAppDraftReviewRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftReviewRequestSchema: GenMessage<CreateAppDraftReviewRequest, {validType: CreateAppDraftReviewRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_review_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_review_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_review_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_review_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9yZXZpZXdfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIeChxDcmVhdGVBcHBEcmFmdFJldmlld1Jlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to creating an app draft review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftReviewResponse\n */\nexport type CreateAppDraftReviewResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftReviewResponse\"> & {\n};\n\nexport type CreateAppDraftReviewResponseValid = CreateAppDraftReviewResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftReviewResponse.\n * Use `create(CreateAppDraftReviewResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftReviewResponseSchema: GenMessage<CreateAppDraftReviewResponse, {validType: CreateAppDraftReviewResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_review_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_review_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { RejectionReason, RejectionReasonValid } from \"./rejection_reason_pb\";\nimport { file_accrescent_console_v1alpha1_rejection_reason } from \"./rejection_reason_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_review_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_review_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkBhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3Jldmlld19yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEigAMKGkNyZWF0ZUFwcEVkaXRSZXZpZXdSZXF1ZXN0EhsKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQESHQoIYXBwcm92ZWQYAiABKAhCBrpIA8gBAUgAiAEBEkcKEXJlamVjdGlvbl9yZWFzb25zGAMgAygLMiwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlJlamVjdGlvblJlYXNvbjrPAbpIywEayAEKJnJlamVjdGlvbl9yZWFzb25zLnByZXNlbnRfaWZmX3JlamVjdGVkEkZyZWplY3Rpb24gcmVhc29ucyBtdXN0IGJlIHByZXNlbnQgaWYgYW5kIG9ubHkgaWYgcmV2aWV3IGlzIGEgcmVqZWN0aW9uGlZ0aGlzLmFwcHJvdmVkID8gdGhpcy5yZWplY3Rpb25fcmVhc29ucy5zaXplKCkgPT0gMCA6IHRoaXMucmVqZWN0aW9uX3JlYXNvbnMuc2l6ZSgpID4gMEILCglfYXBwcm92ZWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_rejection_reason, file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app edit review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditReviewRequest\n */\nexport type CreateAppEditReviewRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditReviewRequest\"> & {\n /**\n * The ID of the app edit to create a review for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * Whether the app edit should be approved. If false, it is rejected.\n *\n * @generated from field: optional bool approved = 2;\n */\n approved?: boolean;\n\n /**\n * The list of reasons for rejection if the review is a rejection.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.RejectionReason rejection_reasons = 3;\n */\n rejectionReasons: RejectionReason[];\n};\n\n/**\n * Request defining parameters for creating an app edit review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditReviewRequest\n */\nexport type CreateAppEditReviewRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditReviewRequest\"> & {\n /**\n * The ID of the app edit to create a review for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * Whether the app edit should be approved. If false, it is rejected.\n *\n * @generated from field: optional bool approved = 2;\n */\n approved: boolean;\n\n /**\n * The list of reasons for rejection if the review is a rejection.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.RejectionReason rejection_reasons = 3;\n */\n rejectionReasons: RejectionReasonValid[];\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditReviewRequest.\n * Use `create(CreateAppEditReviewRequestSchema)` to create a new message.\n */\nexport const CreateAppEditReviewRequestSchema: GenMessage<CreateAppEditReviewRequest, {validType: CreateAppEditReviewRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_review_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_review_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_review_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_review_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3Jldmlld19yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIh0KG0NyZWF0ZUFwcEVkaXRSZXZpZXdSZXNwb25zZUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\");\n\n/**\n * Response to creating an app edit review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditReviewResponse\n */\nexport type CreateAppEditReviewResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditReviewResponse\"> & {\n};\n\nexport type CreateAppEditReviewResponseValid = CreateAppEditReviewResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditReviewResponse.\n * Use `create(CreateAppEditReviewResponseSchema)` to create a new message.\n */\nexport const CreateAppEditReviewResponseSchema: GenMessage<CreateAppEditReviewResponse, {validType: CreateAppEditReviewResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_review_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/error_reason.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenEnum, GenFile } from \"@bufbuild/protobuf/codegenv2\";\nimport { enumDesc, fileDesc } from \"@bufbuild/protobuf/codegenv2\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/error_reason.proto.\n */\nexport const file_accrescent_console_v1alpha1_error_reason: GenFile = /*@__PURE__*/\n fileDesc(\"Ci5hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZXJyb3JfcmVhc29uLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEqhgkKC0Vycm9yUmVhc29uEhwKGEVSUk9SX1JFQVNPTl9VTlNQRUNJRklFRBAAEiMKH0VSUk9SX1JFQVNPTl9SRVNPVVJDRV9OT1RfRk9VTkQQARIoCiRFUlJPUl9SRUFTT05fUkVTT1VSQ0VfTElNSVRfRVhDRUVERUQQAhIkCiBFUlJPUl9SRUFTT05fUkFURV9MSU1JVF9FWENFRURFRBADEigKJEVSUk9SX1JFQVNPTl9JTlNVRkZJQ0lFTlRfUEVSTUlTU0lPThAEEiAKHEVSUk9SX1JFQVNPTl9JTlZBTElEX1JFUVVFU1QQBRIjCh9FUlJPUl9SRUFTT05fUkVTT1VSQ0VfSU1NVVRBQkxFEAYSJAogRVJST1JfUkVBU09OX1JFU09VUkNFX0lOQ09NUExFVEUQBxIiCh5FUlJPUl9SRUFTT05fQUxSRUFEWV9TVUJNSVRURUQQCBIiCh5FUlJPUl9SRUFTT05fUkVTT1VSQ0VfQ09ORkxJQ1QQCRIlCiFFUlJPUl9SRUFTT05fQVNTSUdORUVfVU5BVkFJTEFCTEUQChIfChtFUlJPUl9SRUFTT05fQUxSRUFEWV9FWElTVFMQCxIfChtFUlJPUl9SRUFTT05fTk9fQ1JFREVOVElBTFMQDBIfChtFUlJPUl9SRUFTT05fTk9UX1JFR0lTVEVSRUQQDRIiCh5FUlJPUl9SRUFTT05fQUxSRUFEWV9QVUJMSVNIRUQQDhIkCiBFUlJPUl9SRUFTT05fUkVTT1VSQ0VfUFVCTElTSElORxAPEiUKIUVSUk9SX1JFQVNPTl9SRVNPVVJDRV9JTlZBTElEQVRFRBAQEiUKIUVSUk9SX1JFQVNPTl9DT05TVFJBSU5UX1ZJT0xBVElPThAREhkKFUVSUk9SX1JFQVNPTl9JTlRFUk5BTBASEh4KGkVSUk9SX1JFQVNPTl9JTlZBTElEX0lNQUdFEBMSKwonRVJST1JfUkVBU09OX0lOQ09SUkVDVF9JTUFHRV9ESU1FTlNJT05TEBQSIAocRVJST1JfUkVBU09OX0lOVkFMSURfUEFDS0FHRRAVEiMKH0VSUk9SX1JFQVNPTl9QQUNLQUdFX0RFQlVHR0FCTEUQFhIfChtFUlJPUl9SRUFTT05fTE9XX1RBUkdFVF9TREsQFxIkCiBFUlJPUl9SRUFTT05fTUlTU0lOR182NF9CSVRfQ09ERRAYEiQKIEVSUk9SX1JFQVNPTl9OT19NT0RFUk5fU0lHTkFUVVJFEBkSHQoZRVJST1JfUkVBU09OX0RFQlVHX1NJR05FUhAaEiEKHUVSUk9SX1JFQVNPTl9NVUxUSVBMRV9TSUdORVJTEBsSGgoWRVJST1JfUkVBU09OX1RFU1RfT05MWRAcEiAKHEVSUk9SX1JFQVNPTl9BUFBfSURfTUlTTUFUQ0gQHRIfChtFUlJPUl9SRUFTT05fTk9UX0FOX1VQR1JBREUQHhImCiJFUlJPUl9SRUFTT05fU0lHTklOR19DRVJUX01JU01BVENIEB9CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * The possible values for `google.rpc.ErrorInfo.reason` in the\n * \"console-api.accrescent.app\" error domain.\n *\n * @generated from enum accrescent.console.v1alpha1.ErrorReason\n */\nexport enum ErrorReason {\n /**\n * The unspecified value.\n *\n * @generated from enum value: ERROR_REASON_UNSPECIFIED = 0;\n */\n UNSPECIFIED = 0,\n\n /**\n * A resource required for the operation could not be found.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_NOT_FOUND = 1;\n */\n RESOURCE_NOT_FOUND = 1,\n\n /**\n * A resource limit would be exceeded by performing the operation.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_LIMIT_EXCEEDED = 2;\n */\n RESOURCE_LIMIT_EXCEEDED = 2,\n\n /**\n * A rate limit would be exceeded by performing the operation.\n *\n * @generated from enum value: ERROR_REASON_RATE_LIMIT_EXCEEDED = 3;\n */\n RATE_LIMIT_EXCEEDED = 3,\n\n /**\n * The caller does not have sufficient permission to perform the operation.\n *\n * @generated from enum value: ERROR_REASON_INSUFFICIENT_PERMISSION = 4;\n */\n INSUFFICIENT_PERMISSION = 4,\n\n /**\n * The provided request data is invalid.\n *\n * @generated from enum value: ERROR_REASON_INVALID_REQUEST = 5;\n */\n INVALID_REQUEST = 5,\n\n /**\n * The resource the operation would modify is immutable.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_IMMUTABLE = 6;\n */\n RESOURCE_IMMUTABLE = 6,\n\n /**\n * The operation cannot occur on the resource because the resource is\n * incomplete.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_INCOMPLETE = 7;\n */\n RESOURCE_INCOMPLETE = 7,\n\n /**\n * The resource to be submitted is already submitted.\n *\n * @generated from enum value: ERROR_REASON_ALREADY_SUBMITTED = 8;\n */\n ALREADY_SUBMITTED = 8,\n\n /**\n * The operation would cause a conflict with another resource.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_CONFLICT = 9;\n */\n RESOURCE_CONFLICT = 9,\n\n /**\n * There is no reviewer or publisher available to assign.\n *\n * @generated from enum value: ERROR_REASON_ASSIGNEE_UNAVAILABLE = 10;\n */\n ASSIGNEE_UNAVAILABLE = 10,\n\n /**\n * A resource with the requested ID already exists.\n *\n * @generated from enum value: ERROR_REASON_ALREADY_EXISTS = 11;\n */\n ALREADY_EXISTS = 11,\n\n /**\n * Authentication credentials were expected, but not provided.\n *\n * @generated from enum value: ERROR_REASON_NO_CREDENTIALS = 12;\n */\n NO_CREDENTIALS = 12,\n\n /**\n * The user has been authenticated via a third party, but has not yet\n * registered an Accrescent account.\n *\n * @generated from enum value: ERROR_REASON_NOT_REGISTERED = 13;\n */\n NOT_REGISTERED = 13,\n\n /**\n * The resource to be published is already published.\n *\n * @generated from enum value: ERROR_REASON_ALREADY_PUBLISHED = 14;\n */\n ALREADY_PUBLISHED = 14,\n\n /**\n * The operation cannot occur because the resource is publishing.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_PUBLISHING = 15;\n */\n RESOURCE_PUBLISHING = 15,\n\n /**\n * The operation cannot occur because the resource has been invalidated.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_INVALIDATED = 16;\n */\n RESOURCE_INVALIDATED = 16,\n\n /**\n * The operation would cause a data constraint violation.\n *\n * @generated from enum value: ERROR_REASON_CONSTRAINT_VIOLATION = 17;\n */\n CONSTRAINT_VIOLATION = 17,\n\n /**\n * The server encountered an internal error.\n *\n * @generated from enum value: ERROR_REASON_INTERNAL = 18;\n */\n INTERNAL = 18,\n\n /**\n * The uploaded file was not an image in the expected format.\n *\n * @generated from enum value: ERROR_REASON_INVALID_IMAGE = 19;\n */\n INVALID_IMAGE = 19,\n\n /**\n * The uploaded image's dimensions do not meet policy requirements.\n *\n * @generated from enum value: ERROR_REASON_INCORRECT_IMAGE_DIMENSIONS = 20;\n */\n INCORRECT_IMAGE_DIMENSIONS = 20,\n\n /**\n * The uploaded package file is invalid.\n *\n * @generated from enum value: ERROR_REASON_INVALID_PACKAGE = 21;\n */\n INVALID_PACKAGE = 21,\n\n /**\n * The uploaded package is debuggable.\n *\n * @generated from enum value: ERROR_REASON_PACKAGE_DEBUGGABLE = 22;\n */\n PACKAGE_DEBUGGABLE = 22,\n\n /**\n * The uploaded package's target SDK does not meet the minimum policy\n * requirements.\n *\n * @generated from enum value: ERROR_REASON_LOW_TARGET_SDK = 23;\n */\n LOW_TARGET_SDK = 23,\n\n /**\n * The uploaded package has 32-bit code but is missing corresponding 64-bit\n * code.\n *\n * @generated from enum value: ERROR_REASON_MISSING_64_BIT_CODE = 24;\n */\n MISSING_64_BIT_CODE = 24,\n\n /**\n * The uploaded package has not been signed with a modern signature scheme.\n *\n * @generated from enum value: ERROR_REASON_NO_MODERN_SIGNATURE = 25;\n */\n NO_MODERN_SIGNATURE = 25,\n\n /**\n * The uploaded package was signed with the debug signer.\n *\n * @generated from enum value: ERROR_REASON_DEBUG_SIGNER = 26;\n */\n DEBUG_SIGNER = 26,\n\n /**\n * The uploaded package was signed with multiple signers.\n *\n * @generated from enum value: ERROR_REASON_MULTIPLE_SIGNERS = 27;\n */\n MULTIPLE_SIGNERS = 27,\n\n /**\n * The uploaded package is test-only.\n *\n * @generated from enum value: ERROR_REASON_TEST_ONLY = 28;\n */\n TEST_ONLY = 28,\n\n /**\n * The uploaded edit's app ID does not match the app ID of its corresponding\n * published app.\n *\n * @generated from enum value: ERROR_REASON_APP_ID_MISMATCH = 29;\n */\n APP_ID_MISMATCH = 29,\n\n /**\n * The uploaded edit's version code is not more than the version code of its\n * corresponding published app.\n *\n * @generated from enum value: ERROR_REASON_NOT_AN_UPGRADE = 30;\n */\n NOT_AN_UPGRADE = 30,\n\n /**\n * The uploaded edit's signing certificate does not match that of its\n * corresponding published app.\n *\n * @generated from enum value: ERROR_REASON_SIGNING_CERT_MISMATCH = 31;\n */\n SIGNING_CERT_MISMATCH = 31,\n}\n\n/**\n * Describes the enum accrescent.console.v1alpha1.ErrorReason.\n */\nexport const ErrorReasonSchema: GenEnum<ErrorReason> = /*@__PURE__*/\n enumDesc(file_accrescent_console_v1alpha1_error_reason, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_organization_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_organization_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_organization_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X29yZ2FuaXphdGlvbl9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiOQoWR2V0T3JnYW5pemF0aW9uUmVxdWVzdBIfCg9vcmdhbml6YXRpb25faWQYASABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an organization.\n *\n * @generated from message accrescent.console.v1alpha1.GetOrganizationRequest\n */\nexport type GetOrganizationRequest = Message<\"accrescent.console.v1alpha1.GetOrganizationRequest\"> & {\n /**\n * The ID of the organization to retrieve.\n *\n * @generated from field: string organization_id = 1;\n */\n organizationId: string;\n};\n\n/**\n * Request defining parameters for getting an organization.\n *\n * @generated from message accrescent.console.v1alpha1.GetOrganizationRequest\n */\nexport type GetOrganizationRequestValid = Message<\"accrescent.console.v1alpha1.GetOrganizationRequest\"> & {\n /**\n * The ID of the organization to retrieve.\n *\n * @generated from field: string organization_id = 1;\n */\n organizationId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetOrganizationRequest.\n * Use `create(GetOrganizationRequestSchema)` to create a new message.\n */\nexport const GetOrganizationRequestSchema: GenMessage<GetOrganizationRequest, {validType: GetOrganizationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_organization_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/organization.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/organization.proto.\n */\nexport const file_accrescent_console_v1alpha1_organization: GenFile = /*@__PURE__*/\n fileDesc(\"Ci5hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvb3JnYW5pemF0aW9uLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiwgIKDE9yZ2FuaXphdGlvbhIXCgJpZBgBIAEoCUIGukgDyAEBSACIAQESKAoTcHVibGlzaGVkX2FwcF9saW1pdBgCIAEoDUIGukgDyAEBSAGIAQESKAoTcHVibGlzaGVkX2FwcF9jb3VudBgDIAEoDUIGukgDyAEBSAKIAQESKwoWYWN0aXZlX2FwcF9kcmFmdF9saW1pdBgEIAEoDUIGukgDyAEBSAOIAQESKwoWYWN0aXZlX2FwcF9kcmFmdF9jb3VudBgFIAEoDUIGukgDyAEBSASIAQFCBQoDX2lkQhYKFF9wdWJsaXNoZWRfYXBwX2xpbWl0QhYKFF9wdWJsaXNoZWRfYXBwX2NvdW50QhkKF19hY3RpdmVfYXBwX2RyYWZ0X2xpbWl0QhkKF19hY3RpdmVfYXBwX2RyYWZ0X2NvdW50QmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * An organization of users.\n *\n * @generated from message accrescent.console.v1alpha1.Organization\n */\nexport type Organization = Message<\"accrescent.console.v1alpha1.Organization\"> & {\n /**\n * The organization's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The maximum number of published apps allowed to exist under this organization.\n *\n * @generated from field: optional uint32 published_app_limit = 2;\n */\n publishedAppLimit?: number;\n\n /**\n * The current number of published apps in this organization.\n *\n * @generated from field: optional uint32 published_app_count = 3;\n */\n publishedAppCount?: number;\n\n /**\n * The maximum number of active app drafts allowed to exist under this organization.\n *\n * @generated from field: optional uint32 active_app_draft_limit = 4;\n */\n activeAppDraftLimit?: number;\n\n /**\n * The current number of active app drafts in this organization.\n *\n * @generated from field: optional uint32 active_app_draft_count = 5;\n */\n activeAppDraftCount?: number;\n};\n\n/**\n * An organization of users.\n *\n * @generated from message accrescent.console.v1alpha1.Organization\n */\nexport type OrganizationValid = Message<\"accrescent.console.v1alpha1.Organization\"> & {\n /**\n * The organization's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The maximum number of published apps allowed to exist under this organization.\n *\n * @generated from field: optional uint32 published_app_limit = 2;\n */\n publishedAppLimit: number;\n\n /**\n * The current number of published apps in this organization.\n *\n * @generated from field: optional uint32 published_app_count = 3;\n */\n publishedAppCount: number;\n\n /**\n * The maximum number of active app drafts allowed to exist under this organization.\n *\n * @generated from field: optional uint32 active_app_draft_limit = 4;\n */\n activeAppDraftLimit: number;\n\n /**\n * The current number of active app drafts in this organization.\n *\n * @generated from field: optional uint32 active_app_draft_count = 5;\n */\n activeAppDraftCount: number;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.Organization.\n * Use `create(OrganizationSchema)` to create a new message.\n */\nexport const OrganizationSchema: GenMessage<Organization, {validType: OrganizationValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_organization, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_organization_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Organization, OrganizationValid } from \"./organization_pb\";\nimport { file_accrescent_console_v1alpha1_organization } from \"./organization_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_organization_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_organization_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X29yZ2FuaXphdGlvbl9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExImIKF0dldE9yZ2FuaXphdGlvblJlc3BvbnNlEkcKDG9yZ2FuaXphdGlvbhgBIAEoCzIpLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5Pcmdhbml6YXRpb25CBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_organization, file_buf_validate_validate]);\n\n/**\n * Response to getting an organization.\n *\n * @generated from message accrescent.console.v1alpha1.GetOrganizationResponse\n */\nexport type GetOrganizationResponse = Message<\"accrescent.console.v1alpha1.GetOrganizationResponse\"> & {\n /**\n * The requested organization.\n *\n * @generated from field: accrescent.console.v1alpha1.Organization organization = 1;\n */\n organization?: Organization;\n};\n\n/**\n * Response to getting an organization.\n *\n * @generated from message accrescent.console.v1alpha1.GetOrganizationResponse\n */\nexport type GetOrganizationResponseValid = Message<\"accrescent.console.v1alpha1.GetOrganizationResponse\"> & {\n /**\n * The requested organization.\n *\n * @generated from field: accrescent.console.v1alpha1.Organization organization = 1;\n */\n organization: OrganizationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetOrganizationResponse.\n * Use `create(GetOrganizationResponseSchema)` to create a new message.\n */\nexport const GetOrganizationResponseSchema: GenMessage<GetOrganizationResponse, {validType: GetOrganizationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_organization_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_self_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_self_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_self_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X3NlbGZfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhAKDkdldFNlbGZSZXF1ZXN0QmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Request defining parameters for getting the currently authenticated user.\n *\n * @generated from message accrescent.console.v1alpha1.GetSelfRequest\n */\nexport type GetSelfRequest = Message<\"accrescent.console.v1alpha1.GetSelfRequest\"> & {\n};\n\nexport type GetSelfRequestValid = GetSelfRequest;\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetSelfRequest.\n * Use `create(GetSelfRequestSchema)` to create a new message.\n */\nexport const GetSelfRequestSchema: GenMessage<GetSelfRequest, {validType: GetSelfRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_self_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/user_role.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenEnum, GenFile } from \"@bufbuild/protobuf/codegenv2\";\nimport { enumDesc, fileDesc } from \"@bufbuild/protobuf/codegenv2\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/user_role.proto.\n */\nexport const file_accrescent_console_v1alpha1_user_role: GenFile = /*@__PURE__*/\n fileDesc(\"CithY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXNlcl9yb2xlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEqVgoIVXNlclJvbGUSGQoVVVNFUl9ST0xFX1VOU1BFQ0lGSUVEEAASFgoSVVNFUl9ST0xFX1JFVklFV0VSEAESFwoTVVNFUl9ST0xFX1BVQkxJU0hFUhACQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * A user authorization role.\n *\n * @generated from enum accrescent.console.v1alpha1.UserRole\n */\nexport enum UserRole {\n /**\n * The unspecified value.\n *\n * @generated from enum value: USER_ROLE_UNSPECIFIED = 0;\n */\n UNSPECIFIED = 0,\n\n /**\n * An app reviewer.\n *\n * @generated from enum value: USER_ROLE_REVIEWER = 1;\n */\n REVIEWER = 1,\n\n /**\n * An app publisher.\n *\n * @generated from enum value: USER_ROLE_PUBLISHER = 2;\n */\n PUBLISHER = 2,\n}\n\n/**\n * Describes the enum accrescent.console.v1alpha1.UserRole.\n */\nexport const UserRoleSchema: GenEnum<UserRole> = /*@__PURE__*/\n enumDesc(file_accrescent_console_v1alpha1_user_role, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/user.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { UserRole } from \"./user_role_pb\";\nimport { file_accrescent_console_v1alpha1_user_role } from \"./user_role_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/user.proto.\n */\nexport const file_accrescent_console_v1alpha1_user: GenFile = /*@__PURE__*/\n fileDesc(\"CiZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXNlci5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIpcBCgRVc2VyEhcKAmlkGAEgASgJQga6SAPIAQFIAIgBARIeCgVlbWFpbBgCIAEoCUIKukgHyAEBcgJgAUgBiAEBEkUKBXJvbGVzGAMgAygOMiUuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlVzZXJSb2xlQg+6SAySAQkYASIFggECIABCBQoDX2lkQggKBl9lbWFpbEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_user_role, file_buf_validate_validate]);\n\n/**\n * A console user.\n *\n * @generated from message accrescent.console.v1alpha1.User\n */\nexport type User = Message<\"accrescent.console.v1alpha1.User\"> & {\n /**\n * The user's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The user's email.\n *\n * @generated from field: optional string email = 2;\n */\n email?: string;\n\n /**\n * The user's roles.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.UserRole roles = 3;\n */\n roles: UserRole[];\n};\n\n/**\n * A console user.\n *\n * @generated from message accrescent.console.v1alpha1.User\n */\nexport type UserValid = Message<\"accrescent.console.v1alpha1.User\"> & {\n /**\n * The user's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The user's email.\n *\n * @generated from field: optional string email = 2;\n */\n email: string;\n\n /**\n * The user's roles.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.UserRole roles = 3;\n */\n roles: UserRole[];\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.User.\n * Use `create(UserSchema)` to create a new message.\n */\nexport const UserSchema: GenMessage<User, {validType: UserValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_user, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_self_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { User, UserValid } from \"./user_pb\";\nimport { file_accrescent_console_v1alpha1_user } from \"./user_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_self_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_self_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X3NlbGZfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJKCg9HZXRTZWxmUmVzcG9uc2USNwoEdXNlchgBIAEoCzIhLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5Vc2VyQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_user, file_buf_validate_validate]);\n\n/**\n * Response to getting the currently authenticated user.\n *\n * @generated from message accrescent.console.v1alpha1.GetSelfResponse\n */\nexport type GetSelfResponse = Message<\"accrescent.console.v1alpha1.GetSelfResponse\"> & {\n /**\n * The currently authenticated user.\n *\n * @generated from field: accrescent.console.v1alpha1.User user = 1;\n */\n user?: User;\n};\n\n/**\n * Response to getting the currently authenticated user.\n *\n * @generated from message accrescent.console.v1alpha1.GetSelfResponse\n */\nexport type GetSelfResponseValid = Message<\"accrescent.console.v1alpha1.GetSelfResponse\"> & {\n /**\n * The currently authenticated user.\n *\n * @generated from field: accrescent.console.v1alpha1.User user = 1;\n */\n user: UserValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetSelfResponse.\n * Use `create(GetSelfResponseSchema)` to create a new message.\n */\nexport const GetSelfResponseSchema: GenMessage<GetSelfResponse, {validType: GetSelfResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_self_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_organizations_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_organizations_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_organizations_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjxhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9vcmdhbml6YXRpb25zX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJoChhMaXN0T3JnYW5pemF0aW9uc1JlcXVlc3QSFgoJcGFnZV9zaXplGAEgASgNSACIAQESFwoKcGFnZV90b2tlbhgCIAEoCUgBiAEBQgwKCl9wYWdlX3NpemVCDQoLX3BhZ2VfdG9rZW5CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Request defining parameters for listing organizations.\n *\n * @generated from message accrescent.console.v1alpha1.ListOrganizationsRequest\n */\nexport type ListOrganizationsRequest = Message<\"accrescent.console.v1alpha1.ListOrganizationsRequest\"> & {\n /**\n * The maximum number of organizations to return in the response. If\n * unspecified, defaults to 50. All requests with a higher page size will be\n * capped to 50.\n *\n * @generated from field: optional uint32 page_size = 1;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListOrganizationsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 2;\n */\n pageToken?: string;\n};\n\nexport type ListOrganizationsRequestValid = ListOrganizationsRequest;\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListOrganizationsRequest.\n * Use `create(ListOrganizationsRequestSchema)` to create a new message.\n */\nexport const ListOrganizationsRequestSchema: GenMessage<ListOrganizationsRequest, {validType: ListOrganizationsRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_organizations_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_organizations_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Organization, OrganizationValid } from \"./organization_pb\";\nimport { file_accrescent_console_v1alpha1_organization } from \"./organization_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_organizations_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_organizations_response: GenFile = /*@__PURE__*/\n fileDesc(\"Cj1hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9vcmdhbml6YXRpb25zX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEi9wEKGUxpc3RPcmdhbml6YXRpb25zUmVzcG9uc2USpwEKDW9yZ2FuaXphdGlvbnMYASADKAsyKS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuT3JnYW5pemF0aW9uQmW6SGK6AV8KHW9yZ2FuaXphdGlvbnMuaGF2ZV91bmlxdWVfaWRzEiJvcmdhbml6YXRpb25zIG11c3QgaGF2ZSB1bmlxdWUgSURzGhp0aGlzLm1hcChvLCBvLmlkKS51bmlxdWUoKRIcCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAlIAIgBAUISChBfbmV4dF9wYWdlX3Rva2VuQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_accrescent_console_v1alpha1_organization, file_buf_validate_validate]);\n\n/**\n * Response to listing organizations.\n *\n * @generated from message accrescent.console.v1alpha1.ListOrganizationsResponse\n */\nexport type ListOrganizationsResponse = Message<\"accrescent.console.v1alpha1.ListOrganizationsResponse\"> & {\n /**\n * The organizations matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.Organization organizations = 1;\n */\n organizations: Organization[];\n\n /**\n * An opaque token which, if passed to another invocation of\n * ListOrganizations, will return the next page of organizations.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Response to listing organizations.\n *\n * @generated from message accrescent.console.v1alpha1.ListOrganizationsResponse\n */\nexport type ListOrganizationsResponseValid = Message<\"accrescent.console.v1alpha1.ListOrganizationsResponse\"> & {\n /**\n * The organizations matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.Organization organizations = 1;\n */\n organizations: OrganizationValid[];\n\n /**\n * An opaque token which, if passed to another invocation of\n * ListOrganizations, will return the next page of organizations.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListOrganizationsResponse.\n * Use `create(ListOrganizationsResponseSchema)` to create a new message.\n */\nexport const ListOrganizationsResponseSchema: GenMessage<ListOrganizationsResponse, {validType: ListOrganizationsResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_organizations_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.3.0 with parameter \"target=ts,valid_types=true\"\n// @generated from file accrescent/console/v1alpha1/organization_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { GetOrganizationRequest, GetOrganizationRequestValid } from \"./get_organization_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { GetOrganizationResponse, GetOrganizationResponseValid } from \"./get_organization_response_pb\";\nimport { GetOrganizationResponseSchema } from \"./get_organization_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson } from \"@bufbuild/protobuf\";\nimport type { ListOrganizationsRequest, ListOrganizationsRequestValid } from \"./list_organizations_request_pb\";\nimport type { ListOrganizationsResponse, ListOrganizationsResponseValid } from \"./list_organizations_response_pb\";\nimport { ListOrganizationsResponseSchema } from \"./list_organizations_response_pb\";\n\nexport const NG_ORGANIZATION_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_ORGANIZATION_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing organizations.\n *\n * @generated from service accrescent.console.v1alpha1.OrganizationService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgOrganizationService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_ORGANIZATION_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Gets an organization.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.GetOrganization\n */\n getOrganization(request: GetOrganizationRequestValid): Observable<GetOrganizationResponseValid>;\n /**\n * Gets an organization.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.GetOrganization\n */\n getOrganization(request: GetOrganizationRequest): Observable<GetOrganizationResponse>;\n getOrganization(request: GetOrganizationRequest): Observable<GetOrganizationResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/organizations/${request.organizationId}`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetOrganizationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Lists organizations.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.ListOrganizations\n */\n listOrganizations(request: ListOrganizationsRequestValid): Observable<ListOrganizationsResponseValid>;\n /**\n * Lists organizations.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.ListOrganizations\n */\n listOrganizations(request: ListOrganizationsRequest): Observable<ListOrganizationsResponse>;\n listOrganizations(request: ListOrganizationsRequest): Observable<ListOrganizationsResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/organizations`;\n const params: Record<string, string | number | boolean> = {};\n if (request.pageSize !== undefined) params[\"pageSize\"] = request.pageSize;\n if (request.pageToken !== undefined) params[\"pageToken\"] = request.pageToken;\n\n return this.httpClient.get(url, { params }).pipe(\n map((response) => fromJson(\n ListOrganizationsResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/organization_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { GetOrganizationRequestSchema } from \"./get_organization_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_organization_request } from \"./get_organization_request_pb\";\nimport type { GetOrganizationResponseSchema } from \"./get_organization_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_organization_response } from \"./get_organization_response_pb\";\nimport type { ListOrganizationsRequestSchema } from \"./list_organizations_request_pb\";\nimport { file_accrescent_console_v1alpha1_list_organizations_request } from \"./list_organizations_request_pb\";\nimport type { ListOrganizationsResponseSchema } from \"./list_organizations_response_pb\";\nimport { file_accrescent_console_v1alpha1_list_organizations_response } from \"./list_organizations_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/organization_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_organization_service: GenFile = /*@__PURE__*/\n fileDesc(\"CjZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvb3JnYW5pemF0aW9uX3NlcnZpY2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMTKdAwoTT3JnYW5pemF0aW9uU2VydmljZRLHAQoPR2V0T3JnYW5pemF0aW9uEjMuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldE9yZ2FuaXphdGlvblJlcXVlc3QaNC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0T3JnYW5pemF0aW9uUmVzcG9uc2UiSYLT5JMCQxJBL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL29yZ2FuaXphdGlvbnMve29yZ2FuaXphdGlvbl9pZH0SuwEKEUxpc3RPcmdhbml6YXRpb25zEjUuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkxpc3RPcmdhbml6YXRpb25zUmVxdWVzdBo2LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5MaXN0T3JnYW5pemF0aW9uc1Jlc3BvbnNlIjeC0+STAjESLy9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9vcmdhbml6YXRpb25zQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_accrescent_console_v1alpha1_get_organization_request, file_accrescent_console_v1alpha1_get_organization_response, file_accrescent_console_v1alpha1_list_organizations_request, file_accrescent_console_v1alpha1_list_organizations_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing organizations.\n *\n * @generated from service accrescent.console.v1alpha1.OrganizationService\n */\nexport const OrganizationService: GenService<{\n /**\n * Gets an organization.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.GetOrganization\n */\n getOrganization: {\n methodKind: \"unary\";\n input: typeof GetOrganizationRequestSchema;\n output: typeof GetOrganizationResponseSchema;\n },\n /**\n * Lists organizations.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.ListOrganizations\n */\n listOrganizations: {\n methodKind: \"unary\";\n input: typeof ListOrganizationsRequestSchema;\n output: typeof ListOrganizationsResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_organization_service, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/publish_app_draft_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/publish_app_draft_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_publish_app_draft_result: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcHVibGlzaF9hcHBfZHJhZnRfcmVzdWx0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiFwoVUHVibGlzaEFwcERyYWZ0UmVzdWx0QmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Result of an app draft publishing operation.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftResult\n */\nexport type PublishAppDraftResult = Message<\"accrescent.console.v1alpha1.PublishAppDraftResult\"> & {\n};\n\nexport type PublishAppDraftResultValid = PublishAppDraftResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.PublishAppDraftResult.\n * Use `create(PublishAppDraftResultSchema)` to create a new message.\n */\nexport const PublishAppDraftResultSchema: GenMessage<PublishAppDraftResult, {validType: PublishAppDraftResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_publish_app_draft_result, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/publish_app_edit_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/publish_app_edit_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_publish_app_edit_result: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcHVibGlzaF9hcHBfZWRpdF9yZXN1bHQucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIWChRQdWJsaXNoQXBwRWRpdFJlc3VsdEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\");\n\n/**\n * Result of an app edit publishing operation.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppEditResult\n */\nexport type PublishAppEditResult = Message<\"accrescent.console.v1alpha1.PublishAppEditResult\"> & {\n};\n\nexport type PublishAppEditResultValid = PublishAppEditResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.PublishAppEditResult.\n * Use `create(PublishAppEditResultSchema)` to create a new message.\n */\nexport const PublishAppEditResultSchema: GenMessage<PublishAppEditResult, {validType: PublishAppEditResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_publish_app_edit_result, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.3.0 with parameter \"target=ts,valid_types=true\"\n// @generated from file accrescent/console/v1alpha1/review_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { CreateAppDraftReviewRequest, CreateAppDraftReviewRequestValid } from \"./create_app_draft_review_request_pb\";\nimport { CreateAppDraftReviewRequestSchema } from \"./create_app_draft_review_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { CreateAppDraftReviewResponse, CreateAppDraftReviewResponseValid } from \"./create_app_draft_review_response_pb\";\nimport { CreateAppDraftReviewResponseSchema } from \"./create_app_draft_review_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { CreateAppEditReviewRequest, CreateAppEditReviewRequestValid } from \"./create_app_edit_review_request_pb\";\nimport { CreateAppEditReviewRequestSchema } from \"./create_app_edit_review_request_pb\";\nimport type { CreateAppEditReviewResponse, CreateAppEditReviewResponseValid } from \"./create_app_edit_review_response_pb\";\nimport { CreateAppEditReviewResponseSchema } from \"./create_app_edit_review_response_pb\";\n\nexport const NG_REVIEW_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_REVIEW_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing reviews on items submitted to the app\n * store\n *\n * @generated from service accrescent.console.v1alpha1.ReviewService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgReviewService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_REVIEW_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Reviews an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppDraftReview\n */\n createAppDraftReview(request: CreateAppDraftReviewRequestValid): Observable<CreateAppDraftReviewResponseValid>;\n /**\n * Reviews an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppDraftReview\n */\n createAppDraftReview(request: CreateAppDraftReviewRequest): Observable<CreateAppDraftReviewResponse>;\n createAppDraftReview(request: CreateAppDraftReviewRequest): Observable<CreateAppDraftReviewResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/reviews`;\n const json = toJson(CreateAppDraftReviewRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppDraftReviewResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Reviews an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppEditReview\n */\n createAppEditReview(request: CreateAppEditReviewRequestValid): Observable<CreateAppEditReviewResponseValid>;\n /**\n * Reviews an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppEditReview\n */\n createAppEditReview(request: CreateAppEditReviewRequest): Observable<CreateAppEditReviewResponse>;\n createAppEditReview(request: CreateAppEditReviewRequest): Observable<CreateAppEditReviewResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/reviews`;\n const json = toJson(CreateAppEditReviewRequestSchema, request);\n const { appEditId: _appEditId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppEditReviewResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/review_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { CreateAppDraftReviewRequestSchema } from \"./create_app_draft_review_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_review_request } from \"./create_app_draft_review_request_pb\";\nimport type { CreateAppDraftReviewResponseSchema } from \"./create_app_draft_review_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_review_response } from \"./create_app_draft_review_response_pb\";\nimport type { CreateAppEditReviewRequestSchema } from \"./create_app_edit_review_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_review_request } from \"./create_app_edit_review_request_pb\";\nimport type { CreateAppEditReviewResponseSchema } from \"./create_app_edit_review_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_review_response } from \"./create_app_edit_review_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/review_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_review_service: GenFile = /*@__PURE__*/\n fileDesc(\"CjBhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcmV2aWV3X3NlcnZpY2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMTLGAwoNUmV2aWV3U2VydmljZRLbAQoUQ3JlYXRlQXBwRHJhZnRSZXZpZXcSOC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRSZXZpZXdSZXF1ZXN0GjkuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkNyZWF0ZUFwcERyYWZ0UmV2aWV3UmVzcG9uc2UiToLT5JMCSDoBKiJDL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0vcmV2aWV3cxLWAQoTQ3JlYXRlQXBwRWRpdFJldmlldxI3LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0UmV2aWV3UmVxdWVzdBo4LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0UmV2aWV3UmVzcG9uc2UiTILT5JMCRjoBKiJBL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9lZGl0cy97YXBwX2VkaXRfaWR9L3Jldmlld3NCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_create_app_draft_review_request, file_accrescent_console_v1alpha1_create_app_draft_review_response, file_accrescent_console_v1alpha1_create_app_edit_review_request, file_accrescent_console_v1alpha1_create_app_edit_review_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing reviews on items submitted to the app\n * store\n *\n * @generated from service accrescent.console.v1alpha1.ReviewService\n */\nexport const ReviewService: GenService<{\n /**\n * Reviews an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppDraftReview\n */\n createAppDraftReview: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftReviewRequestSchema;\n output: typeof CreateAppDraftReviewResponseSchema;\n },\n /**\n * Reviews an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppEditReview\n */\n createAppEditReview: {\n methodKind: \"unary\";\n input: typeof CreateAppEditReviewRequestSchema;\n output: typeof CreateAppEditReviewResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_review_service, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_user_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { UserRole } from \"./user_role_pb\";\nimport { file_accrescent_console_v1alpha1_user_role } from \"./user_role_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { FieldMask } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_field_mask } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_user_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_user_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX3VzZXJfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIrYBChFVcGRhdGVVc2VyUmVxdWVzdBIXCgd1c2VyX2lkGAEgASgJQga6SAPIAQESRQoFcm9sZXMYAiADKA4yJS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuVXNlclJvbGVCD7pIDJIBCRgBIgWCAQIgABJBCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCELpIDcgBAeIBBxIFcm9sZXNCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_user_role, file_buf_validate_validate, file_google_protobuf_field_mask]);\n\n/**\n * Request defining parameters for updating a user.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateUserRequest\n */\nexport type UpdateUserRequest = Message<\"accrescent.console.v1alpha1.UpdateUserRequest\"> & {\n /**\n * The ID of the user to update.\n *\n * @generated from field: string user_id = 1;\n */\n userId: string;\n\n /**\n * The user's roles.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.UserRole roles = 2;\n */\n roles: UserRole[];\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask?: FieldMask;\n};\n\n/**\n * Request defining parameters for updating a user.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateUserRequest\n */\nexport type UpdateUserRequestValid = Message<\"accrescent.console.v1alpha1.UpdateUserRequest\"> & {\n /**\n * The ID of the user to update.\n *\n * @generated from field: string user_id = 1;\n */\n userId: string;\n\n /**\n * The user's roles.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.UserRole roles = 2;\n */\n roles: UserRole[];\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask: FieldMask;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateUserRequest.\n * Use `create(UpdateUserRequestSchema)` to create a new message.\n */\nexport const UpdateUserRequestSchema: GenMessage<UpdateUserRequest, {validType: UpdateUserRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_user_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_user_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_user_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_user_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX3VzZXJfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIUChJVcGRhdGVVc2VyUmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to updating a user.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateUserResponse\n */\nexport type UpdateUserResponse = Message<\"accrescent.console.v1alpha1.UpdateUserResponse\"> & {\n};\n\nexport type UpdateUserResponseValid = UpdateUserResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateUserResponse.\n * Use `create(UpdateUserResponseSchema)` to create a new message.\n */\nexport const UpdateUserResponseSchema: GenMessage<UpdateUserResponse, {validType: UpdateUserResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_user_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/upload_app_draft_listing_icon_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/upload_app_draft_listing_icon_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_upload_app_draft_listing_icon_result: GenFile = /*@__PURE__*/\n fileDesc(\"CkZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBsb2FkX2FwcF9kcmFmdF9saXN0aW5nX2ljb25fcmVzdWx0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiIQofVXBsb2FkQXBwRHJhZnRMaXN0aW5nSWNvblJlc3VsdEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\");\n\n/**\n * Result of an app draft listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.UploadAppDraftListingIconResult\n */\nexport type UploadAppDraftListingIconResult = Message<\"accrescent.console.v1alpha1.UploadAppDraftListingIconResult\"> & {\n};\n\nexport type UploadAppDraftListingIconResultValid = UploadAppDraftListingIconResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UploadAppDraftListingIconResult.\n * Use `create(UploadAppDraftListingIconResultSchema)` to create a new message.\n */\nexport const UploadAppDraftListingIconResultSchema: GenMessage<UploadAppDraftListingIconResult, {validType: UploadAppDraftListingIconResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_upload_app_draft_listing_icon_result, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/upload_app_draft_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/upload_app_draft_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_upload_app_draft_result: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBsb2FkX2FwcF9kcmFmdF9yZXN1bHQucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIWChRVcGxvYWRBcHBEcmFmdFJlc3VsdEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\");\n\n/**\n * Result of an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.UploadAppDraftResult\n */\nexport type UploadAppDraftResult = Message<\"accrescent.console.v1alpha1.UploadAppDraftResult\"> & {\n};\n\nexport type UploadAppDraftResultValid = UploadAppDraftResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UploadAppDraftResult.\n * Use `create(UploadAppDraftResultSchema)` to create a new message.\n */\nexport const UploadAppDraftResultSchema: GenMessage<UploadAppDraftResult, {validType: UploadAppDraftResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_upload_app_draft_result, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/upload_app_edit_listing_icon_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/upload_app_edit_listing_icon_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_upload_app_edit_listing_icon_result: GenFile = /*@__PURE__*/\n fileDesc(\"CkVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBsb2FkX2FwcF9lZGl0X2xpc3RpbmdfaWNvbl9yZXN1bHQucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIgCh5VcGxvYWRBcHBFZGl0TGlzdGluZ0ljb25SZXN1bHRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Result of an app edit listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.UploadAppEditListingIconResult\n */\nexport type UploadAppEditListingIconResult = Message<\"accrescent.console.v1alpha1.UploadAppEditListingIconResult\"> & {\n};\n\nexport type UploadAppEditListingIconResultValid = UploadAppEditListingIconResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UploadAppEditListingIconResult.\n * Use `create(UploadAppEditListingIconResultSchema)` to create a new message.\n */\nexport const UploadAppEditListingIconResultSchema: GenMessage<UploadAppEditListingIconResult, {validType: UploadAppEditListingIconResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_upload_app_edit_listing_icon_result, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/upload_app_edit_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/upload_app_edit_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_upload_app_edit_result: GenFile = /*@__PURE__*/\n fileDesc(\"CjhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBsb2FkX2FwcF9lZGl0X3Jlc3VsdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhUKE1VwbG9hZEFwcEVkaXRSZXN1bHRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Result of an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.UploadAppEditResult\n */\nexport type UploadAppEditResult = Message<\"accrescent.console.v1alpha1.UploadAppEditResult\"> & {\n};\n\nexport type UploadAppEditResultValid = UploadAppEditResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UploadAppEditResult.\n * Use `create(UploadAppEditResultSchema)` to create a new message.\n */\nexport const UploadAppEditResultSchema: GenMessage<UploadAppEditResult, {validType: UploadAppEditResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_upload_app_edit_result, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.3.0 with parameter \"target=ts,valid_types=true\"\n// @generated from file accrescent/console/v1alpha1/user_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { GetSelfRequest, GetSelfRequestValid } from \"./get_self_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { GetSelfResponse, GetSelfResponseValid } from \"./get_self_response_pb\";\nimport { GetSelfResponseSchema } from \"./get_self_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { UpdateUserRequest, UpdateUserRequestValid } from \"./update_user_request_pb\";\nimport { UpdateUserRequestSchema } from \"./update_user_request_pb\";\nimport type { UpdateUserResponse, UpdateUserResponseValid } from \"./update_user_response_pb\";\nimport { UpdateUserResponseSchema } from \"./update_user_response_pb\";\n\nexport const NG_USER_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_USER_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing users.\n *\n * @generated from service accrescent.console.v1alpha1.UserService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgUserService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_USER_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Gets the user info for the currently authenticated user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.GetSelf\n */\n getSelf(request: GetSelfRequestValid): Observable<GetSelfResponseValid>;\n /**\n * Gets the user info for the currently authenticated user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.GetSelf\n */\n getSelf(request: GetSelfRequest): Observable<GetSelfResponse>;\n getSelf(request: GetSelfRequest): Observable<GetSelfResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/user`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetSelfResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n\n /**\n * Updates a user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.UpdateUser\n */\n updateUser(request: UpdateUserRequestValid): Observable<UpdateUserResponseValid>;\n /**\n * Updates a user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.UpdateUser\n */\n updateUser(request: UpdateUserRequest): Observable<UpdateUserResponse>;\n updateUser(request: UpdateUserRequest): Observable<UpdateUserResponse> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/users/${request.userId}`;\n const json = toJson(UpdateUserRequestSchema, request);\n const { userId: _userId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.patch(url, body).pipe(\n map((response) => fromJson(\n UpdateUserResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n )),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/user_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { GetSelfRequestSchema } from \"./get_self_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_self_request } from \"./get_self_request_pb\";\nimport type { GetSelfResponseSchema } from \"./get_self_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_self_response } from \"./get_self_response_pb\";\nimport type { UpdateUserRequestSchema } from \"./update_user_request_pb\";\nimport { file_accrescent_console_v1alpha1_update_user_request } from \"./update_user_request_pb\";\nimport type { UpdateUserResponseSchema } from \"./update_user_response_pb\";\nimport { file_accrescent_console_v1alpha1_update_user_response } from \"./update_user_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/user_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_user_service: GenFile = /*@__PURE__*/\n fileDesc(\"Ci5hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXNlcl9zZXJ2aWNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEy0gIKC1VzZXJTZXJ2aWNlEpQBCgdHZXRTZWxmEisuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldFNlbGZSZXF1ZXN0GiwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldFNlbGZSZXNwb25zZSIugtPkkwIoEiYvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvdXNlchKrAQoKVXBkYXRlVXNlchIuLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVVc2VyUmVxdWVzdBovLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVVc2VyUmVzcG9uc2UiPILT5JMCNjoBKjIxL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL3VzZXJzL3t1c2VyX2lkfUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_get_self_request, file_accrescent_console_v1alpha1_get_self_response, file_accrescent_console_v1alpha1_update_user_request, file_accrescent_console_v1alpha1_update_user_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing users.\n *\n * @generated from service accrescent.console.v1alpha1.UserService\n */\nexport const UserService: GenService<{\n /**\n * Gets the user info for the currently authenticated user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.GetSelf\n */\n getSelf: {\n methodKind: \"unary\";\n input: typeof GetSelfRequestSchema;\n output: typeof GetSelfResponseSchema;\n },\n /**\n * Updates a user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.UpdateUser\n */\n updateUser: {\n methodKind: \"unary\";\n input: typeof UpdateUserRequestSchema;\n output: typeof UpdateUserResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_user_service, 0);\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"accrescent-console-client-sdk-angular-accrescent-console-v1alpha1.mjs","sources":["../../accrescent/console/v1alpha1/app_package_pb.ts","../../accrescent/console/v1alpha1/app_draft_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/list_app_drafts_response_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_upload_operation_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_upload_operation_response_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_download_info_response_pb.ts","../../accrescent/console/v1alpha1/update_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/update_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/submit_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/submit_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/delete_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_listing_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_listing_response_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_response_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_response_pb.ts","../../accrescent/console/v1alpha1/delete_app_draft_listing_response_pb.ts","../../accrescent/console/v1alpha1/publish_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/publish_app_draft_response_pb.ts","../../accrescent/console/v1alpha1/app_draft_service_ng.ts","../../accrescent/console/v1alpha1/delete_app_draft_listing_request_pb.ts","../../accrescent/console/v1alpha1/delete_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_download_info_request_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_request_pb.ts","../../accrescent/console/v1alpha1/get_app_draft_request_pb.ts","../../accrescent/console/v1alpha1/list_app_drafts_request_pb.ts","../../accrescent/console/v1alpha1/app_draft_service_pb.ts","../../accrescent/console/v1alpha1/app_edit_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/get_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/list_app_edits_response_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_upload_operation_request_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_upload_operation_response_pb.ts","../../accrescent/console/v1alpha1/get_app_edit_download_info_response_pb.ts","../../accrescent/console/v1alpha1/update_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/update_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/submit_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/submit_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/delete_app_edit_response_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_listing_request_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_listing_response_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_response_pb.ts","../../accrescent/console/v1alpha1/delete_app_edit_listing_response_pb.ts","../../accrescent/console/v1alpha1/app_edit_service_ng.ts","../../accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_request_pb.ts","../../accrescent/console/v1alpha1/delete_app_edit_listing_request_pb.ts","../../accrescent/console/v1alpha1/delete_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/get_app_edit_download_info_request_pb.ts","../../accrescent/console/v1alpha1/get_app_edit_request_pb.ts","../../accrescent/console/v1alpha1/list_app_edits_request_pb.ts","../../accrescent/console/v1alpha1/app_edit_service_pb.ts","../../accrescent/console/v1alpha1/app_pb.ts","../../accrescent/console/v1alpha1/get_app_response_pb.ts","../../accrescent/console/v1alpha1/list_apps_response_pb.ts","../../accrescent/console/v1alpha1/update_app_request_pb.ts","../../accrescent/console/v1alpha1/update_app_response_pb.ts","../../accrescent/console/v1alpha1/app_service_ng.ts","../../accrescent/console/v1alpha1/get_app_request_pb.ts","../../accrescent/console/v1alpha1/list_apps_request_pb.ts","../../accrescent/console/v1alpha1/app_service_pb.ts","../../accrescent/console/v1alpha1/rejection_reason_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_review_request_pb.ts","../../accrescent/console/v1alpha1/create_app_draft_review_response_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_review_request_pb.ts","../../accrescent/console/v1alpha1/create_app_edit_review_response_pb.ts","../../accrescent/console/v1alpha1/error_reason_pb.ts","../../accrescent/console/v1alpha1/get_organization_request_pb.ts","../../accrescent/console/v1alpha1/organization_pb.ts","../../accrescent/console/v1alpha1/get_organization_response_pb.ts","../../accrescent/console/v1alpha1/get_self_request_pb.ts","../../accrescent/console/v1alpha1/user_role_pb.ts","../../accrescent/console/v1alpha1/user_pb.ts","../../accrescent/console/v1alpha1/get_self_response_pb.ts","../../accrescent/console/v1alpha1/list_organizations_request_pb.ts","../../accrescent/console/v1alpha1/list_organizations_response_pb.ts","../../accrescent/console/v1alpha1/organization_service_ng.ts","../../accrescent/console/v1alpha1/organization_service_pb.ts","../../accrescent/console/v1alpha1/publish_app_draft_result_pb.ts","../../accrescent/console/v1alpha1/publish_app_edit_result_pb.ts","../../accrescent/console/v1alpha1/review_service_ng.ts","../../accrescent/console/v1alpha1/review_service_pb.ts","../../accrescent/console/v1alpha1/update_user_request_pb.ts","../../accrescent/console/v1alpha1/update_user_response_pb.ts","../../accrescent/console/v1alpha1/upload_app_draft_listing_icon_result_pb.ts","../../accrescent/console/v1alpha1/upload_app_draft_result_pb.ts","../../accrescent/console/v1alpha1/upload_app_edit_listing_icon_result_pb.ts","../../accrescent/console/v1alpha1/upload_app_edit_result_pb.ts","../../accrescent/console/v1alpha1/user_service_ng.ts","../../accrescent/console/v1alpha1/user_service_pb.ts","../../accrescent/console/v1alpha1/accrescent-console-client-sdk-angular-accrescent-console-v1alpha1.ts"],"sourcesContent":["// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_package.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_package.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_package: GenFile = /*@__PURE__*/\n fileDesc(\"Ci1hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX3BhY2thZ2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLQAQoKQXBwUGFja2FnZRIbCgZhcHBfaWQYASABKAlCBrpIA8gBAUgAiAEBEiUKDHZlcnNpb25fY29kZRgCIAEoBEIKukgHyAEBMgIgAEgBiAEBEiEKDHZlcnNpb25fbmFtZRgDIAEoCUIGukgDyAEBSAKIAQESHwoKdGFyZ2V0X3NkaxgEIAEoBEIGukgDyAEBSAOIAQFCCQoHX2FwcF9pZEIPCg1fdmVyc2lvbl9jb2RlQg8KDV92ZXJzaW9uX25hbWVCDQoLX3RhcmdldF9zZGtCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * An app package.\n *\n * @generated from message accrescent.console.v1alpha1.AppPackage\n */\nexport type AppPackage = Message<\"accrescent.console.v1alpha1.AppPackage\"> & {\n /**\n * The app package's Android application ID.\n *\n * @generated from field: optional string app_id = 1;\n */\n appId?: string;\n\n /**\n * The app package's version code.\n *\n * @generated from field: optional uint64 version_code = 2;\n */\n versionCode?: bigint;\n\n /**\n * The app package's version name.\n *\n * @generated from field: optional string version_name = 3;\n */\n versionName?: string;\n\n /**\n * The app package's target SDK.\n *\n * @generated from field: optional uint64 target_sdk = 4;\n */\n targetSdk?: bigint;\n};\n\n/**\n * An app package.\n *\n * @generated from message accrescent.console.v1alpha1.AppPackage\n */\nexport type AppPackageValid = Message<\"accrescent.console.v1alpha1.AppPackage\"> & {\n /**\n * The app package's Android application ID.\n *\n * @generated from field: optional string app_id = 1;\n */\n appId: string;\n\n /**\n * The app package's version code.\n *\n * @generated from field: optional uint64 version_code = 2;\n */\n versionCode: bigint;\n\n /**\n * The app package's version name.\n *\n * @generated from field: optional string version_name = 3;\n */\n versionName: string;\n\n /**\n * The app package's target SDK.\n *\n * @generated from field: optional uint64 target_sdk = 4;\n */\n targetSdk: bigint;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.AppPackage.\n * Use `create(AppPackageSchema)` to create a new message.\n */\nexport const AppPackageSchema: GenMessage<AppPackage, {validType: AppPackageValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_app_package, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_draft.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppPackage, AppPackageValid } from \"./app_package_pb\";\nimport { file_accrescent_console_v1alpha1_app_package } from \"./app_package_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Timestamp } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_draft.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_draft: GenFile = /*@__PURE__*/\n fileDesc(\"CithY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX2RyYWZ0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiyAIKCEFwcERyYWZ0EhcKAmlkGAEgASgJQga6SAPIAQFIAIgBARI2CgpjcmVhdGVkX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIGukgDyAEBEiUKGGRlZmF1bHRfbGlzdGluZ19sYW5ndWFnZRgDIAEoCUgBiAEBEjwKC2FwcF9wYWNrYWdlGAQgASgLMicuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkFwcFBhY2thZ2USMAoMc3VibWl0dGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxwdWJsaXNoZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgUKA19pZEIbChlfZGVmYXVsdF9saXN0aW5nX2xhbmd1YWdlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_accrescent_console_v1alpha1_app_package, file_buf_validate_validate, file_google_protobuf_timestamp]);\n\n/**\n * An app draft.\n *\n * @generated from message accrescent.console.v1alpha1.AppDraft\n */\nexport type AppDraft = Message<\"accrescent.console.v1alpha1.AppDraft\"> & {\n /**\n * The app draft's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The timestamp at which the app draft was created.\n *\n * @generated from field: google.protobuf.Timestamp created_at = 2;\n */\n createdAt?: Timestamp;\n\n /**\n * The draft's default listing language, if set.\n *\n * @generated from field: optional string default_listing_language = 3;\n */\n defaultListingLanguage?: string;\n\n /**\n * The draft's associated package information, if available.\n *\n * @generated from field: accrescent.console.v1alpha1.AppPackage app_package = 4;\n */\n appPackage?: AppPackage;\n\n /**\n * The timestamp at which the app draft has been submitted for review, if\n * applicable.\n *\n * @generated from field: google.protobuf.Timestamp submitted_at = 5;\n */\n submittedAt?: Timestamp;\n\n /**\n * The timestamp at which the app draft has been published, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp published_at = 6;\n */\n publishedAt?: Timestamp;\n};\n\n/**\n * An app draft.\n *\n * @generated from message accrescent.console.v1alpha1.AppDraft\n */\nexport type AppDraftValid = Message<\"accrescent.console.v1alpha1.AppDraft\"> & {\n /**\n * The app draft's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The timestamp at which the app draft was created.\n *\n * @generated from field: google.protobuf.Timestamp created_at = 2;\n */\n createdAt: Timestamp;\n\n /**\n * The draft's default listing language, if set.\n *\n * @generated from field: optional string default_listing_language = 3;\n */\n defaultListingLanguage?: string;\n\n /**\n * The draft's associated package information, if available.\n *\n * @generated from field: accrescent.console.v1alpha1.AppPackage app_package = 4;\n */\n appPackage?: AppPackageValid;\n\n /**\n * The timestamp at which the app draft has been submitted for review, if\n * applicable.\n *\n * @generated from field: google.protobuf.Timestamp submitted_at = 5;\n */\n submittedAt?: Timestamp;\n\n /**\n * The timestamp at which the app draft has been published, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp published_at = 6;\n */\n publishedAt?: Timestamp;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.AppDraft.\n * Use `create(AppDraftSchema)` to create a new message.\n */\nexport const AppDraftSchema: GenMessage<AppDraft, {validType: AppDraftValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_app_draft, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiUQoVQ3JlYXRlQXBwRHJhZnRSZXF1ZXN0EiQKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIGukgDyAEBSACIAQFCEgoQX29yZ2FuaXphdGlvbl9pZEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftRequest\n */\nexport type CreateAppDraftRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftRequest\"> & {\n /**\n * The ID of the organization to create this app draft under.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId?: string;\n};\n\n/**\n * Request defining parameters for creating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftRequest\n */\nexport type CreateAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftRequest\"> & {\n /**\n * The ID of the organization to create this app draft under.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftRequest.\n * Use `create(CreateAppDraftRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftRequestSchema: GenMessage<CreateAppDraftRequest, {validType: CreateAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIkwKFkNyZWF0ZUFwcERyYWZ0UmVzcG9uc2USIQoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQFIAIgBAUIPCg1fYXBwX2RyYWZ0X2lkQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Response to creating a new app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftResponse\n */\nexport type CreateAppDraftResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftResponse\"> & {\n /**\n * The unique ID of the created app draft.\n *\n * @generated from field: optional string app_draft_id = 1;\n */\n appDraftId?: string;\n};\n\n/**\n * Response to creating a new app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftResponse\n */\nexport type CreateAppDraftResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftResponse\"> & {\n /**\n * The unique ID of the created app draft.\n *\n * @generated from field: optional string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftResponse.\n * Use `create(CreateAppDraftResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftResponseSchema: GenMessage<CreateAppDraftResponse, {validType: CreateAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppDraft, AppDraftValid } from \"./app_draft_pb\";\nimport { file_accrescent_console_v1alpha1_app_draft } from \"./app_draft_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIlMKE0dldEFwcERyYWZ0UmVzcG9uc2USPAoFZHJhZnQYASABKAsyJS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQXBwRHJhZnRCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app_draft, file_buf_validate_validate]);\n\n/**\n * Response to getting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftResponse\n */\nexport type GetAppDraftResponse = Message<\"accrescent.console.v1alpha1.GetAppDraftResponse\"> & {\n /**\n * The requested app draft.\n *\n * @generated from field: accrescent.console.v1alpha1.AppDraft draft = 1;\n */\n draft?: AppDraft;\n};\n\n/**\n * Response to getting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftResponse\n */\nexport type GetAppDraftResponseValid = Message<\"accrescent.console.v1alpha1.GetAppDraftResponse\"> & {\n /**\n * The requested app draft.\n *\n * @generated from field: accrescent.console.v1alpha1.AppDraft draft = 1;\n */\n draft: AppDraftValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftResponse.\n * Use `create(GetAppDraftResponseSchema)` to create a new message.\n */\nexport const GetAppDraftResponseSchema: GenMessage<GetAppDraftResponse, {validType: GetAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_app_drafts_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppDraft, AppDraftValid } from \"./app_draft_pb\";\nimport { file_accrescent_console_v1alpha1_app_draft } from \"./app_draft_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_app_drafts_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_app_drafts_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBfZHJhZnRzX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEi5gEKFUxpc3RBcHBEcmFmdHNSZXNwb25zZRKaAQoKYXBwX2RyYWZ0cxgBIAMoCzIlLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5BcHBEcmFmdEJfukhcugFZChphcHBfZHJhZnRzLmhhdmVfdW5pcXVlX2lkcxIfYXBwIGRyYWZ0cyBtdXN0IGhhdmUgdW5pcXVlIElEcxoadGhpcy5tYXAoZCwgZC5pZCkudW5pcXVlKCkSHAoPbmV4dF9wYWdlX3Rva2VuGAIgASgJSACIAQFCEgoQX25leHRfcGFnZV90b2tlbkJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app_draft, file_buf_validate_validate]);\n\n/**\n * Response to listing app drafts.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppDraftsResponse\n */\nexport type ListAppDraftsResponse = Message<\"accrescent.console.v1alpha1.ListAppDraftsResponse\"> & {\n /**\n * The app drafts matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.AppDraft app_drafts = 1;\n */\n appDrafts: AppDraft[];\n\n /**\n * An opaque token which, if passed to another invocation of ListAppDrafts,\n * will return the next page of app drafts.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Response to listing app drafts.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppDraftsResponse\n */\nexport type ListAppDraftsResponseValid = Message<\"accrescent.console.v1alpha1.ListAppDraftsResponse\"> & {\n /**\n * The app drafts matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.AppDraft app_drafts = 1;\n */\n appDrafts: AppDraftValid[];\n\n /**\n * An opaque token which, if passed to another invocation of ListAppDrafts,\n * will return the next page of app drafts.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppDraftsResponse.\n * Use `create(ListAppDraftsResponseSchema)` to create a new message.\n */\nexport const ListAppDraftsResponseSchema: GenMessage<ListAppDraftsResponse, {validType: ListAppDraftsResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_app_drafts_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_upload_operation_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_upload_operation_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_upload_operation_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF91cGxvYWRfb3BlcmF0aW9uX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJECiRDcmVhdGVBcHBEcmFmdFVwbG9hZE9wZXJhdGlvblJlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest\n */\nexport type CreateAppDraftUploadOperationRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest\"> & {\n /**\n * The ID of the app draft to create an upload operation for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for creating an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest\n */\nexport type CreateAppDraftUploadOperationRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest\"> & {\n /**\n * The ID of the app draft to create an upload operation for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftUploadOperationRequest.\n * Use `create(CreateAppDraftUploadOperationRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftUploadOperationRequestSchema: GenMessage<CreateAppDraftUploadOperationRequest, {validType: CreateAppDraftUploadOperationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_upload_operation_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_upload_operation_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_upload_operation_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_upload_operation_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkxhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF91cGxvYWRfb3BlcmF0aW9uX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEisQEKJUNyZWF0ZUFwcERyYWZ0VXBsb2FkT3BlcmF0aW9uUmVzcG9uc2USLAoSYXBrX3NldF91cGxvYWRfdXJsGAEgASgJQgu6SAjIAQFyA4gBAUgAiAEBEkMKFHByb2Nlc3Npbmdfb3BlcmF0aW9uGAIgASgLMh0uZ29vZ2xlLmxvbmdydW5uaW5nLk9wZXJhdGlvbkIGukgDyAEBQhUKE19hcGtfc2V0X3VwbG9hZF91cmxCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to creating an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse\n */\nexport type CreateAppDraftUploadOperationResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which an APK set can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string apk_set_upload_url = 1;\n */\n apkSetUploadUrl?: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppDraftResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation?: Operation;\n};\n\n/**\n * Response to creating an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse\n */\nexport type CreateAppDraftUploadOperationResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which an APK set can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string apk_set_upload_url = 1;\n */\n apkSetUploadUrl: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppDraftResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftUploadOperationResponse.\n * Use `create(CreateAppDraftUploadOperationResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftUploadOperationResponseSchema: GenMessage<CreateAppDraftUploadOperationResponse, {validType: CreateAppDraftUploadOperationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_upload_operation_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_download_info_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_download_info_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_download_info_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9kb3dubG9hZF9pbmZvX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiWAofR2V0QXBwRHJhZnREb3dubG9hZEluZm9SZXNwb25zZRIlCgthcGtfc2V0X3VybBgBIAEoCUILukgIyAEBcgOIAQFIAIgBAUIOCgxfYXBrX3NldF91cmxCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Response to getting an app draft's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse\n */\nexport type GetAppDraftDownloadInfoResponse = Message<\"accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse\"> & {\n /**\n * The URL of the APK set which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string apk_set_url = 1;\n */\n apkSetUrl?: string;\n};\n\n/**\n * Response to getting an app draft's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse\n */\nexport type GetAppDraftDownloadInfoResponseValid = Message<\"accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse\"> & {\n /**\n * The URL of the APK set which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string apk_set_url = 1;\n */\n apkSetUrl: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftDownloadInfoResponse.\n * Use `create(GetAppDraftDownloadInfoResponseSchema)` to create a new message.\n */\nexport const GetAppDraftDownloadInfoResponseSchema: GenMessage<GetAppDraftDownloadInfoResponse, {validType: GetAppDraftDownloadInfoResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_download_info_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { FieldMask } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_field_mask } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEi4AEKFVVwZGF0ZUFwcERyYWZ0UmVxdWVzdBIcCgxhcHBfZHJhZnRfaWQYASABKAlCBrpIA8gBARI2ChhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2UYAiABKAlCD7pIDMgBAXIHUgVlbi1VU0gAiAEBElQKC3VwZGF0ZV9tYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IjukggyAEB4gEaEhhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2VCGwoZX2RlZmF1bHRfbGlzdGluZ19sYW5ndWFnZUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate, file_google_protobuf_field_mask]);\n\n/**\n * Request defining parameters for updating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppDraftRequest\n */\nexport type UpdateAppDraftRequest = Message<\"accrescent.console.v1alpha1.UpdateAppDraftRequest\"> & {\n /**\n * The ID of the app draft to update.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The draft's default listing language.\n *\n * Required because no other fields are supported for update yet.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage?: string;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask?: FieldMask;\n};\n\n/**\n * Request defining parameters for updating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppDraftRequest\n */\nexport type UpdateAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.UpdateAppDraftRequest\"> & {\n /**\n * The ID of the app draft to update.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The draft's default listing language.\n *\n * Required because no other fields are supported for update yet.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage: string;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask: FieldMask;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppDraftRequest.\n * Use `create(UpdateAppDraftRequestSchema)` to create a new message.\n */\nexport const UpdateAppDraftRequestSchema: GenMessage<UpdateAppDraftRequest, {validType: UpdateAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhgKFlVwZGF0ZUFwcERyYWZ0UmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to updating an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppDraftResponse\n */\nexport type UpdateAppDraftResponse = Message<\"accrescent.console.v1alpha1.UpdateAppDraftResponse\"> & {\n};\n\nexport type UpdateAppDraftResponseValid = UpdateAppDraftResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppDraftResponse.\n * Use `create(UpdateAppDraftResponseSchema)` to create a new message.\n */\nexport const UpdateAppDraftResponseSchema: GenMessage<UpdateAppDraftResponse, {validType: UpdateAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/submit_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/submit_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_submit_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvc3VibWl0X2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiNQoVU3VibWl0QXBwRHJhZnRSZXF1ZXN0EhwKDGFwcF9kcmFmdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for submitting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppDraftRequest\n */\nexport type SubmitAppDraftRequest = Message<\"accrescent.console.v1alpha1.SubmitAppDraftRequest\"> & {\n /**\n * The ID of the app draft to submit.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for submitting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppDraftRequest\n */\nexport type SubmitAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.SubmitAppDraftRequest\"> & {\n /**\n * The ID of the app draft to submit.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.SubmitAppDraftRequest.\n * Use `create(SubmitAppDraftRequestSchema)` to create a new message.\n */\nexport const SubmitAppDraftRequestSchema: GenMessage<SubmitAppDraftRequest, {validType: SubmitAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_submit_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/submit_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/submit_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_submit_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvc3VibWl0X2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhgKFlN1Ym1pdEFwcERyYWZ0UmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to submitting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppDraftResponse\n */\nexport type SubmitAppDraftResponse = Message<\"accrescent.console.v1alpha1.SubmitAppDraftResponse\"> & {\n};\n\nexport type SubmitAppDraftResponseValid = SubmitAppDraftResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.SubmitAppDraftResponse.\n * Use `create(SubmitAppDraftResponseSchema)` to create a new message.\n */\nexport const SubmitAppDraftResponseSchema: GenMessage<SubmitAppDraftResponse, {validType: SubmitAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_submit_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9kcmFmdF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhgKFkRlbGV0ZUFwcERyYWZ0UmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to deleting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftResponse\n */\nexport type DeleteAppDraftResponse = Message<\"accrescent.console.v1alpha1.DeleteAppDraftResponse\"> & {\n};\n\nexport type DeleteAppDraftResponseValid = DeleteAppDraftResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppDraftResponse.\n * Use `create(DeleteAppDraftResponseSchema)` to create a new message.\n */\nexport const DeleteAppDraftResponseSchema: GenMessage<DeleteAppDraftResponse, {validType: DeleteAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_listing_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_listing_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_listing_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9saXN0aW5nX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLNAQocQ3JlYXRlQXBwRHJhZnRMaXN0aW5nUmVxdWVzdBIcCgxhcHBfZHJhZnRfaWQYASABKAlCBrpIA8gBARIhCghsYW5ndWFnZRgCIAEoCUIPukgMyAEBcgdSBWVuLVVTEh8KBG5hbWUYAyABKAlCDLpICcgBAXIEEAMYHkgAiAEBEiwKEXNob3J0X2Rlc2NyaXB0aW9uGAQgASgJQgy6SAnIAQFyBBADGFBIAYgBAUIHCgVfbmFtZUIUChJfc2hvcnRfZGVzY3JpcHRpb25CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app listing for an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingRequest\n */\nexport type CreateAppDraftListingRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingRequest\"> & {\n /**\n * The app draft to create the app listing for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of this listing's fields as a BCP-47 tag.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n\n /**\n * The proper name of the app, possibly including very short descriptive text\n * (e.g. \"SecureChat - Secure Texting\").\n *\n * @generated from field: optional string name = 3;\n */\n name?: string;\n\n /**\n * A short description of the app to be shown in headers and small screen\n * spaces.\n *\n * @generated from field: optional string short_description = 4;\n */\n shortDescription?: string;\n};\n\n/**\n * Request defining parameters for creating an app listing for an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingRequest\n */\nexport type CreateAppDraftListingRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingRequest\"> & {\n /**\n * The app draft to create the app listing for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of this listing's fields as a BCP-47 tag.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n\n /**\n * The proper name of the app, possibly including very short descriptive text\n * (e.g. \"SecureChat - Secure Texting\").\n *\n * @generated from field: optional string name = 3;\n */\n name: string;\n\n /**\n * A short description of the app to be shown in headers and small screen\n * spaces.\n *\n * @generated from field: optional string short_description = 4;\n */\n shortDescription: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftListingRequest.\n * Use `create(CreateAppDraftListingRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftListingRequestSchema: GenMessage<CreateAppDraftListingRequest, {validType: CreateAppDraftListingRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_listing_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_listing_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_listing_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_listing_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9saXN0aW5nX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiHwodQ3JlYXRlQXBwRHJhZnRMaXN0aW5nUmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to creating a new app listing for an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingResponse\n */\nexport type CreateAppDraftListingResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingResponse\"> & {\n};\n\nexport type CreateAppDraftListingResponseValid = CreateAppDraftListingResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftListingResponse.\n * Use `create(CreateAppDraftListingResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftListingResponseSchema: GenMessage<CreateAppDraftListingResponse, {validType: CreateAppDraftListingResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_listing_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_request: GenFile = /*@__PURE__*/\n fileDesc(\"ClhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9saXN0aW5nX2ljb25fdXBsb2FkX29wZXJhdGlvbl9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiaQovQ3JlYXRlQXBwRHJhZnRMaXN0aW5nSWNvblVwbG9hZE9wZXJhdGlvblJlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQESGAoIbGFuZ3VhZ2UYAiABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app draft listing icon upload\n * operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest\n */\nexport type CreateAppDraftListingIconUploadOperationRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest\"> & {\n /**\n * The ID of the app draft to create an icon upload operation for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of the app listing to create an icon upload operation for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for creating an app draft listing icon upload\n * operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest\n */\nexport type CreateAppDraftListingIconUploadOperationRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest\"> & {\n /**\n * The ID of the app draft to create an icon upload operation for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of the app listing to create an icon upload operation for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationRequest.\n * Use `create(CreateAppDraftListingIconUploadOperationRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftListingIconUploadOperationRequestSchema: GenMessage<CreateAppDraftListingIconUploadOperationRequest, {validType: CreateAppDraftListingIconUploadOperationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_listing_icon_upload_operation_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_response: GenFile = /*@__PURE__*/\n fileDesc(\"CllhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9saXN0aW5nX2ljb25fdXBsb2FkX29wZXJhdGlvbl9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIqwBCjBDcmVhdGVBcHBEcmFmdExpc3RpbmdJY29uVXBsb2FkT3BlcmF0aW9uUmVzcG9uc2USJAoKdXBsb2FkX3VybBgBIAEoCUILukgIyAEBcgOIAQFIAIgBARJDChRwcm9jZXNzaW5nX29wZXJhdGlvbhgCIAEoCzIdLmdvb2dsZS5sb25ncnVubmluZy5PcGVyYXRpb25CBrpIA8gBAUINCgtfdXBsb2FkX3VybEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to creating an app draft listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse\n */\nexport type CreateAppDraftListingIconUploadOperationResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which the icon can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string upload_url = 1;\n */\n uploadUrl?: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppDraftListingIconResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation?: Operation;\n};\n\n/**\n * Response to creating an app draft listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse\n */\nexport type CreateAppDraftListingIconUploadOperationResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which the icon can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string upload_url = 1;\n */\n uploadUrl: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppDraftListingIconResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftListingIconUploadOperationResponse.\n * Use `create(CreateAppDraftListingIconUploadOperationResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftListingIconUploadOperationResponseSchema: GenMessage<CreateAppDraftListingIconUploadOperationResponse, {validType: CreateAppDraftListingIconUploadOperationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_response: GenFile = /*@__PURE__*/\n fileDesc(\"ClNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9saXN0aW5nX2ljb25fZG93bmxvYWRfaW5mb19yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIl0KKkdldEFwcERyYWZ0TGlzdGluZ0ljb25Eb3dubG9hZEluZm9SZXNwb25zZRIiCghpY29uX3VybBgBIAEoCUILukgIyAEBcgOIAQFIAIgBAUILCglfaWNvbl91cmxCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Response to getting an app draft listing icon's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse\n */\nexport type GetAppDraftListingIconDownloadInfoResponse = Message<\"accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse\"> & {\n /**\n * The URL of the icon which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string icon_url = 1;\n */\n iconUrl?: string;\n};\n\n/**\n * Response to getting an app draft listing icon's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse\n */\nexport type GetAppDraftListingIconDownloadInfoResponseValid = Message<\"accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse\"> & {\n /**\n * The URL of the icon which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string icon_url = 1;\n */\n iconUrl: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoResponse.\n * Use `create(GetAppDraftListingIconDownloadInfoResponseSchema)` to create a new message.\n */\nexport const GetAppDraftListingIconDownloadInfoResponseSchema: GenMessage<GetAppDraftListingIconDownloadInfoResponse, {validType: GetAppDraftListingIconDownloadInfoResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_draft_listing_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_draft_listing_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_draft_listing_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9kcmFmdF9saXN0aW5nX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiHwodRGVsZXRlQXBwRHJhZnRMaXN0aW5nUmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to deleting an app draft listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftListingResponse\n */\nexport type DeleteAppDraftListingResponse = Message<\"accrescent.console.v1alpha1.DeleteAppDraftListingResponse\"> & {\n};\n\nexport type DeleteAppDraftListingResponseValid = DeleteAppDraftListingResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppDraftListingResponse.\n * Use `create(DeleteAppDraftListingResponseSchema)` to create a new message.\n */\nexport const DeleteAppDraftListingResponseSchema: GenMessage<DeleteAppDraftListingResponse, {validType: DeleteAppDraftListingResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_draft_listing_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/publish_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/publish_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_publish_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcHVibGlzaF9hcHBfZHJhZnRfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIjYKFlB1Ymxpc2hBcHBEcmFmdFJlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for publishing an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftRequest\n */\nexport type PublishAppDraftRequest = Message<\"accrescent.console.v1alpha1.PublishAppDraftRequest\"> & {\n /**\n * The ID of the app draft to publish.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for publishing an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftRequest\n */\nexport type PublishAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.PublishAppDraftRequest\"> & {\n /**\n * The ID of the app draft to publish.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.PublishAppDraftRequest.\n * Use `create(PublishAppDraftRequestSchema)` to create a new message.\n */\nexport const PublishAppDraftRequestSchema: GenMessage<PublishAppDraftRequest, {validType: PublishAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_publish_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/publish_app_draft_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/publish_app_draft_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_publish_app_draft_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjxhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcHVibGlzaF9hcHBfZHJhZnRfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJTChdQdWJsaXNoQXBwRHJhZnRSZXNwb25zZRI4CglvcGVyYXRpb24YASABKAsyHS5nb29nbGUubG9uZ3J1bm5pbmcuT3BlcmF0aW9uQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to publishing an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftResponse\n */\nexport type PublishAppDraftResponse = Message<\"accrescent.console.v1alpha1.PublishAppDraftResponse\"> & {\n /**\n * The publishing operation.\n *\n * The response type of this operation is PublishAppDraftResult.\n *\n * @generated from field: google.longrunning.Operation operation = 1;\n */\n operation?: Operation;\n};\n\n/**\n * Response to publishing an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftResponse\n */\nexport type PublishAppDraftResponseValid = Message<\"accrescent.console.v1alpha1.PublishAppDraftResponse\"> & {\n /**\n * The publishing operation.\n *\n * The response type of this operation is PublishAppDraftResult.\n *\n * @generated from field: google.longrunning.Operation operation = 1;\n */\n operation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.PublishAppDraftResponse.\n * Use `create(PublishAppDraftResponseSchema)` to create a new message.\n */\nexport const PublishAppDraftResponseSchema: GenMessage<PublishAppDraftResponse, {validType: PublishAppDraftResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_publish_app_draft_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.4.1 with parameter \"target=ts,valid_responses=true\"\n// @generated from file accrescent/console/v1alpha1/app_draft_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { CreateAppDraftRequest } from \"./create_app_draft_request_pb\";\nimport { CreateAppDraftRequestSchema } from \"./create_app_draft_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { CreateAppDraftResponseValid } from \"./create_app_draft_response_pb\";\nimport { CreateAppDraftResponseSchema } from \"./create_app_draft_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { GetAppDraftRequest } from \"./get_app_draft_request_pb\";\nimport type { GetAppDraftResponseValid } from \"./get_app_draft_response_pb\";\nimport { GetAppDraftResponseSchema } from \"./get_app_draft_response_pb\";\nimport type { ListAppDraftsRequest } from \"./list_app_drafts_request_pb\";\nimport type { ListAppDraftsResponseValid } from \"./list_app_drafts_response_pb\";\nimport { ListAppDraftsResponseSchema } from \"./list_app_drafts_response_pb\";\nimport type { CreateAppDraftUploadOperationRequest } from \"./create_app_draft_upload_operation_request_pb\";\nimport { CreateAppDraftUploadOperationRequestSchema } from \"./create_app_draft_upload_operation_request_pb\";\nimport type { CreateAppDraftUploadOperationResponseValid } from \"./create_app_draft_upload_operation_response_pb\";\nimport { CreateAppDraftUploadOperationResponseSchema } from \"./create_app_draft_upload_operation_response_pb\";\nimport type { GetAppDraftDownloadInfoRequest } from \"./get_app_draft_download_info_request_pb\";\nimport type { GetAppDraftDownloadInfoResponseValid } from \"./get_app_draft_download_info_response_pb\";\nimport { GetAppDraftDownloadInfoResponseSchema } from \"./get_app_draft_download_info_response_pb\";\nimport type { UpdateAppDraftRequest } from \"./update_app_draft_request_pb\";\nimport { UpdateAppDraftRequestSchema } from \"./update_app_draft_request_pb\";\nimport type { UpdateAppDraftResponseValid } from \"./update_app_draft_response_pb\";\nimport { UpdateAppDraftResponseSchema } from \"./update_app_draft_response_pb\";\nimport type { SubmitAppDraftRequest } from \"./submit_app_draft_request_pb\";\nimport { SubmitAppDraftRequestSchema } from \"./submit_app_draft_request_pb\";\nimport type { SubmitAppDraftResponseValid } from \"./submit_app_draft_response_pb\";\nimport { SubmitAppDraftResponseSchema } from \"./submit_app_draft_response_pb\";\nimport type { DeleteAppDraftRequest } from \"./delete_app_draft_request_pb\";\nimport type { DeleteAppDraftResponseValid } from \"./delete_app_draft_response_pb\";\nimport { DeleteAppDraftResponseSchema } from \"./delete_app_draft_response_pb\";\nimport type { CreateAppDraftListingRequest } from \"./create_app_draft_listing_request_pb\";\nimport { CreateAppDraftListingRequestSchema } from \"./create_app_draft_listing_request_pb\";\nimport type { CreateAppDraftListingResponseValid } from \"./create_app_draft_listing_response_pb\";\nimport { CreateAppDraftListingResponseSchema } from \"./create_app_draft_listing_response_pb\";\nimport type { CreateAppDraftListingIconUploadOperationRequest } from \"./create_app_draft_listing_icon_upload_operation_request_pb\";\nimport { CreateAppDraftListingIconUploadOperationRequestSchema } from \"./create_app_draft_listing_icon_upload_operation_request_pb\";\nimport type { CreateAppDraftListingIconUploadOperationResponseValid } from \"./create_app_draft_listing_icon_upload_operation_response_pb\";\nimport { CreateAppDraftListingIconUploadOperationResponseSchema } from \"./create_app_draft_listing_icon_upload_operation_response_pb\";\nimport type { GetAppDraftListingIconDownloadInfoRequest } from \"./get_app_draft_listing_icon_download_info_request_pb\";\nimport type { GetAppDraftListingIconDownloadInfoResponseValid } from \"./get_app_draft_listing_icon_download_info_response_pb\";\nimport { GetAppDraftListingIconDownloadInfoResponseSchema } from \"./get_app_draft_listing_icon_download_info_response_pb\";\nimport type { DeleteAppDraftListingRequest } from \"./delete_app_draft_listing_request_pb\";\nimport type { DeleteAppDraftListingResponseValid } from \"./delete_app_draft_listing_response_pb\";\nimport { DeleteAppDraftListingResponseSchema } from \"./delete_app_draft_listing_response_pb\";\nimport type { PublishAppDraftRequest } from \"./publish_app_draft_request_pb\";\nimport { PublishAppDraftRequestSchema } from \"./publish_app_draft_request_pb\";\nimport type { PublishAppDraftResponseValid } from \"./publish_app_draft_response_pb\";\nimport { PublishAppDraftResponseSchema } from \"./publish_app_draft_response_pb\";\n\nexport const NG_APP_DRAFT_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_APP_DRAFT_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing app drafts.\n *\n * @generated from service accrescent.console.v1alpha1.AppDraftService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgAppDraftService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_APP_DRAFT_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Creates a new app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraft\n */\n createAppDraft(request: CreateAppDraftRequest): Observable<CreateAppDraftResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts`;\n const json = toJson(CreateAppDraftRequestSchema, request);\n\n return this.httpClient.post(url, json).pipe(\n map((response) => fromJson(\n CreateAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppDraftResponseValid),\n );\n }\n\n /**\n * Gets an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraft\n */\n getAppDraft(request: GetAppDraftRequest): Observable<GetAppDraftResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as GetAppDraftResponseValid),\n );\n }\n\n /**\n * Lists app drafts.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.ListAppDrafts\n */\n listAppDrafts(request: ListAppDraftsRequest): Observable<ListAppDraftsResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts`;\n const params: Record<string, string | number | boolean> = {};\n if (request.organizationId !== undefined) params[\"organizationId\"] = request.organizationId;\n if (request.pageSize !== undefined) params[\"pageSize\"] = request.pageSize;\n if (request.pageToken !== undefined) params[\"pageToken\"] = request.pageToken;\n\n return this.httpClient.get(url, { params }).pipe(\n map((response) => fromJson(\n ListAppDraftsResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as ListAppDraftsResponseValid),\n );\n }\n\n /**\n * Creates an app draft upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftUploadOperation\n */\n createAppDraftUploadOperation(request: CreateAppDraftUploadOperationRequest): Observable<CreateAppDraftUploadOperationResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/upload_operations`;\n const json = toJson(CreateAppDraftUploadOperationRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppDraftUploadOperationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppDraftUploadOperationResponseValid),\n );\n }\n\n /**\n * Gets an app draft's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftDownloadInfo\n */\n getAppDraftDownloadInfo(request: GetAppDraftDownloadInfoRequest): Observable<GetAppDraftDownloadInfoResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/download_info`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppDraftDownloadInfoResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as GetAppDraftDownloadInfoResponseValid),\n );\n }\n\n /**\n * Updates an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.UpdateAppDraft\n */\n updateAppDraft(request: UpdateAppDraftRequest): Observable<UpdateAppDraftResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}`;\n const json = toJson(UpdateAppDraftRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.patch(url, body).pipe(\n map((response) => fromJson(\n UpdateAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as UpdateAppDraftResponseValid),\n );\n }\n\n /**\n * Submits an app draft for review.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.SubmitAppDraft\n */\n submitAppDraft(request: SubmitAppDraftRequest): Observable<SubmitAppDraftResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}:submit`;\n const json = toJson(SubmitAppDraftRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n SubmitAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as SubmitAppDraftResponseValid),\n );\n }\n\n /**\n * Deletes an existing app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraft\n */\n deleteAppDraft(request: DeleteAppDraftRequest): Observable<DeleteAppDraftResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}`;\n\n return this.httpClient.delete(url).pipe(\n map((response) => fromJson(\n DeleteAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as DeleteAppDraftResponseValid),\n );\n }\n\n /**\n * Creates a new app listing for an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListing\n */\n createAppDraftListing(request: CreateAppDraftListingRequest): Observable<CreateAppDraftListingResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/listings/${request.language}`;\n const json = toJson(CreateAppDraftListingRequestSchema, request);\n const { appDraftId: _appDraftId, language: _language, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppDraftListingResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppDraftListingResponseValid),\n );\n }\n\n /**\n * Creates an app draft listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListingIconUploadOperation\n */\n createAppDraftListingIconUploadOperation(request: CreateAppDraftListingIconUploadOperationRequest): Observable<CreateAppDraftListingIconUploadOperationResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/listings/${request.language}/icon/upload_operations`;\n const json = toJson(CreateAppDraftListingIconUploadOperationRequestSchema, request);\n const { appDraftId: _appDraftId, language: _language, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppDraftListingIconUploadOperationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppDraftListingIconUploadOperationResponseValid),\n );\n }\n\n /**\n * Gets an app draft listing icon's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftListingIconDownloadInfo\n */\n getAppDraftListingIconDownloadInfo(request: GetAppDraftListingIconDownloadInfoRequest): Observable<GetAppDraftListingIconDownloadInfoResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/listings/${request.language}/icon/download_info`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppDraftListingIconDownloadInfoResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as GetAppDraftListingIconDownloadInfoResponseValid),\n );\n }\n\n /**\n * Deletes an existing app draft listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraftListing\n */\n deleteAppDraftListing(request: DeleteAppDraftListingRequest): Observable<DeleteAppDraftListingResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/listings/${request.language}`;\n\n return this.httpClient.delete(url).pipe(\n map((response) => fromJson(\n DeleteAppDraftListingResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as DeleteAppDraftListingResponseValid),\n );\n }\n\n /**\n * Publishes an app draft to the app store.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.PublishAppDraft\n */\n publishAppDraft(request: PublishAppDraftRequest): Observable<PublishAppDraftResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}:publish`;\n const json = toJson(PublishAppDraftRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n PublishAppDraftResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as PublishAppDraftResponseValid),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_draft_listing_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_draft_listing_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_draft_listing_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9kcmFmdF9saXN0aW5nX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJWChxEZWxldGVBcHBEcmFmdExpc3RpbmdSZXF1ZXN0EhwKDGFwcF9kcmFmdF9pZBgBIAEoCUIGukgDyAEBEhgKCGxhbmd1YWdlGAIgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for deleting an app draft listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftListingRequest\n */\nexport type DeleteAppDraftListingRequest = Message<\"accrescent.console.v1alpha1.DeleteAppDraftListingRequest\"> & {\n /**\n * The ID of the app draft the listing is associated with.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The BCP-47 language tag of the listing to delete.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for deleting an app draft listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftListingRequest\n */\nexport type DeleteAppDraftListingRequestValid = Message<\"accrescent.console.v1alpha1.DeleteAppDraftListingRequest\"> & {\n /**\n * The ID of the app draft the listing is associated with.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The BCP-47 language tag of the listing to delete.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppDraftListingRequest.\n * Use `create(DeleteAppDraftListingRequestSchema)` to create a new message.\n */\nexport const DeleteAppDraftListingRequestSchema: GenMessage<DeleteAppDraftListingRequest, {validType: DeleteAppDraftListingRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_draft_listing_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiNQoVRGVsZXRlQXBwRHJhZnRSZXF1ZXN0EhwKDGFwcF9kcmFmdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for deleting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftRequest\n */\nexport type DeleteAppDraftRequest = Message<\"accrescent.console.v1alpha1.DeleteAppDraftRequest\"> & {\n /**\n * The ID of the app draft to delete.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for deleting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppDraftRequest\n */\nexport type DeleteAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.DeleteAppDraftRequest\"> & {\n /**\n * The ID of the app draft to delete.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppDraftRequest.\n * Use `create(DeleteAppDraftRequestSchema)` to create a new message.\n */\nexport const DeleteAppDraftRequestSchema: GenMessage<DeleteAppDraftRequest, {validType: DeleteAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_download_info_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_download_info_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_download_info_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9kb3dubG9hZF9pbmZvX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSI+Ch5HZXRBcHBEcmFmdERvd25sb2FkSW5mb1JlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app draft's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest\n */\nexport type GetAppDraftDownloadInfoRequest = Message<\"accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest\"> & {\n /**\n * The ID of the app draft to get download info for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for getting an app draft's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest\n */\nexport type GetAppDraftDownloadInfoRequestValid = Message<\"accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest\"> & {\n /**\n * The ID of the app draft to get download info for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftDownloadInfoRequest.\n * Use `create(GetAppDraftDownloadInfoRequestSchema)` to create a new message.\n */\nexport const GetAppDraftDownloadInfoRequestSchema: GenMessage<GetAppDraftDownloadInfoRequest, {validType: GetAppDraftDownloadInfoRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_download_info_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_listing_icon_download_info_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_request: GenFile = /*@__PURE__*/\n fileDesc(\"ClJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9saXN0aW5nX2ljb25fZG93bmxvYWRfaW5mb19yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiYwopR2V0QXBwRHJhZnRMaXN0aW5nSWNvbkRvd25sb2FkSW5mb1JlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQESGAoIbGFuZ3VhZ2UYAiABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app draft listing icon's download\n * info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest\n */\nexport type GetAppDraftListingIconDownloadInfoRequest = Message<\"accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest\"> & {\n /**\n * The ID of the app draft of the listing to get icon download info for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of the listing to get icon download info for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for getting an app draft listing icon's download\n * info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest\n */\nexport type GetAppDraftListingIconDownloadInfoRequestValid = Message<\"accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest\"> & {\n /**\n * The ID of the app draft of the listing to get icon download info for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * The language of the listing to get icon download info for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftListingIconDownloadInfoRequest.\n * Use `create(GetAppDraftListingIconDownloadInfoRequestSchema)` to create a new message.\n */\nexport const GetAppDraftListingIconDownloadInfoRequestSchema: GenMessage<GetAppDraftListingIconDownloadInfoRequest, {validType: GetAppDraftListingIconDownloadInfoRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_draft_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_draft_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_draft_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjdhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9kcmFmdF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiMgoSR2V0QXBwRHJhZnRSZXF1ZXN0EhwKDGFwcF9kcmFmdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftRequest\n */\nexport type GetAppDraftRequest = Message<\"accrescent.console.v1alpha1.GetAppDraftRequest\"> & {\n /**\n * The ID of the app draft to retrieve.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Request defining parameters for getting an app draft.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppDraftRequest\n */\nexport type GetAppDraftRequestValid = Message<\"accrescent.console.v1alpha1.GetAppDraftRequest\"> & {\n /**\n * The ID of the app draft to retrieve.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppDraftRequest.\n * Use `create(GetAppDraftRequestSchema)` to create a new message.\n */\nexport const GetAppDraftRequestSchema: GenMessage<GetAppDraftRequest, {validType: GetAppDraftRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_draft_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_app_drafts_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_app_drafts_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_app_drafts_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBfZHJhZnRzX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSKeAQoUTGlzdEFwcERyYWZ0c1JlcXVlc3QSJAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQga6SAPIAQFIAIgBARIWCglwYWdlX3NpemUYAiABKA1IAYgBARIXCgpwYWdlX3Rva2VuGAMgASgJSAKIAQFCEgoQX29yZ2FuaXphdGlvbl9pZEIMCgpfcGFnZV9zaXplQg0KC19wYWdlX3Rva2VuQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for listing app drafts.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppDraftsRequest\n */\nexport type ListAppDraftsRequest = Message<\"accrescent.console.v1alpha1.ListAppDraftsRequest\"> & {\n /**\n * The organization containing the drafts to list.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId?: string;\n\n /**\n * The maximum number of app drafts to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListAppDraftsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Request defining parameters for listing app drafts.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppDraftsRequest\n */\nexport type ListAppDraftsRequestValid = Message<\"accrescent.console.v1alpha1.ListAppDraftsRequest\"> & {\n /**\n * The organization containing the drafts to list.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId: string;\n\n /**\n * The maximum number of app drafts to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListAppDraftsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppDraftsRequest.\n * Use `create(ListAppDraftsRequestSchema)` to create a new message.\n */\nexport const ListAppDraftsRequestSchema: GenMessage<ListAppDraftsRequest, {validType: ListAppDraftsRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_app_drafts_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_draft_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { CreateAppDraftListingIconUploadOperationRequestSchema } from \"./create_app_draft_listing_icon_upload_operation_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_request } from \"./create_app_draft_listing_icon_upload_operation_request_pb\";\nimport type { CreateAppDraftListingIconUploadOperationResponseSchema } from \"./create_app_draft_listing_icon_upload_operation_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_response } from \"./create_app_draft_listing_icon_upload_operation_response_pb\";\nimport type { CreateAppDraftListingRequestSchema } from \"./create_app_draft_listing_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_listing_request } from \"./create_app_draft_listing_request_pb\";\nimport type { CreateAppDraftListingResponseSchema } from \"./create_app_draft_listing_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_listing_response } from \"./create_app_draft_listing_response_pb\";\nimport type { CreateAppDraftRequestSchema } from \"./create_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_request } from \"./create_app_draft_request_pb\";\nimport type { CreateAppDraftResponseSchema } from \"./create_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_response } from \"./create_app_draft_response_pb\";\nimport type { CreateAppDraftUploadOperationRequestSchema } from \"./create_app_draft_upload_operation_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_upload_operation_request } from \"./create_app_draft_upload_operation_request_pb\";\nimport type { CreateAppDraftUploadOperationResponseSchema } from \"./create_app_draft_upload_operation_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_upload_operation_response } from \"./create_app_draft_upload_operation_response_pb\";\nimport type { DeleteAppDraftListingRequestSchema } from \"./delete_app_draft_listing_request_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_draft_listing_request } from \"./delete_app_draft_listing_request_pb\";\nimport type { DeleteAppDraftListingResponseSchema } from \"./delete_app_draft_listing_response_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_draft_listing_response } from \"./delete_app_draft_listing_response_pb\";\nimport type { DeleteAppDraftRequestSchema } from \"./delete_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_draft_request } from \"./delete_app_draft_request_pb\";\nimport type { DeleteAppDraftResponseSchema } from \"./delete_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_draft_response } from \"./delete_app_draft_response_pb\";\nimport type { GetAppDraftDownloadInfoRequestSchema } from \"./get_app_draft_download_info_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_download_info_request } from \"./get_app_draft_download_info_request_pb\";\nimport type { GetAppDraftDownloadInfoResponseSchema } from \"./get_app_draft_download_info_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_download_info_response } from \"./get_app_draft_download_info_response_pb\";\nimport type { GetAppDraftListingIconDownloadInfoRequestSchema } from \"./get_app_draft_listing_icon_download_info_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_request } from \"./get_app_draft_listing_icon_download_info_request_pb\";\nimport type { GetAppDraftListingIconDownloadInfoResponseSchema } from \"./get_app_draft_listing_icon_download_info_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_response } from \"./get_app_draft_listing_icon_download_info_response_pb\";\nimport type { GetAppDraftRequestSchema } from \"./get_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_request } from \"./get_app_draft_request_pb\";\nimport type { GetAppDraftResponseSchema } from \"./get_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_draft_response } from \"./get_app_draft_response_pb\";\nimport type { ListAppDraftsRequestSchema } from \"./list_app_drafts_request_pb\";\nimport { file_accrescent_console_v1alpha1_list_app_drafts_request } from \"./list_app_drafts_request_pb\";\nimport type { ListAppDraftsResponseSchema } from \"./list_app_drafts_response_pb\";\nimport { file_accrescent_console_v1alpha1_list_app_drafts_response } from \"./list_app_drafts_response_pb\";\nimport type { PublishAppDraftRequestSchema } from \"./publish_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_publish_app_draft_request } from \"./publish_app_draft_request_pb\";\nimport type { PublishAppDraftResponseSchema } from \"./publish_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_publish_app_draft_response } from \"./publish_app_draft_response_pb\";\nimport type { SubmitAppDraftRequestSchema } from \"./submit_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_submit_app_draft_request } from \"./submit_app_draft_request_pb\";\nimport type { SubmitAppDraftResponseSchema } from \"./submit_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_submit_app_draft_response } from \"./submit_app_draft_response_pb\";\nimport type { UpdateAppDraftRequestSchema } from \"./update_app_draft_request_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_draft_request } from \"./update_app_draft_request_pb\";\nimport type { UpdateAppDraftResponseSchema } from \"./update_app_draft_response_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_draft_response } from \"./update_app_draft_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_draft_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_draft_service: GenFile = /*@__PURE__*/\n fileDesc(\"CjNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX2RyYWZ0X3NlcnZpY2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMTLxFgoPQXBwRHJhZnRTZXJ2aWNlErIBCg5DcmVhdGVBcHBEcmFmdBIyLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBEcmFmdFJlcXVlc3QaMy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRSZXNwb25zZSI3gtPkkwIxOgEqIiwvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2RyYWZ0cxK1AQoLR2V0QXBwRHJhZnQSLy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwRHJhZnRSZXF1ZXN0GjAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcERyYWZ0UmVzcG9uc2UiQ4LT5JMCPRI7L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0SrAEKDUxpc3RBcHBEcmFmdHMSMS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuTGlzdEFwcERyYWZ0c1JlcXVlc3QaMi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuTGlzdEFwcERyYWZ0c1Jlc3BvbnNlIjSC0+STAi4SLC9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzEoACCh1DcmVhdGVBcHBEcmFmdFVwbG9hZE9wZXJhdGlvbhJBLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBEcmFmdFVwbG9hZE9wZXJhdGlvblJlcXVlc3QaQi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRVcGxvYWRPcGVyYXRpb25SZXNwb25zZSJYgtPkkwJSOgEqIk0vZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2RyYWZ0cy97YXBwX2RyYWZ0X2lkfS91cGxvYWRfb3BlcmF0aW9ucxLnAQoXR2V0QXBwRHJhZnREb3dubG9hZEluZm8SOy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwRHJhZnREb3dubG9hZEluZm9SZXF1ZXN0GjwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcERyYWZ0RG93bmxvYWRJbmZvUmVzcG9uc2UiUYLT5JMCSxJJL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0vZG93bmxvYWRfaW5mbxLBAQoOVXBkYXRlQXBwRHJhZnQSMi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuVXBkYXRlQXBwRHJhZnRSZXF1ZXN0GjMuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlVwZGF0ZUFwcERyYWZ0UmVzcG9uc2UiRoLT5JMCQDoBKjI7L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0SyAEKDlN1Ym1pdEFwcERyYWZ0EjIuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlN1Ym1pdEFwcERyYWZ0UmVxdWVzdBozLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5TdWJtaXRBcHBEcmFmdFJlc3BvbnNlIk2C0+STAkc6ASoiQi9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9OnN1Ym1pdBK+AQoORGVsZXRlQXBwRHJhZnQSMi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuRGVsZXRlQXBwRHJhZnRSZXF1ZXN0GjMuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkRlbGV0ZUFwcERyYWZ0UmVzcG9uc2UiQ4LT5JMCPSo7L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0S6gEKFUNyZWF0ZUFwcERyYWZ0TGlzdGluZxI5LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBEcmFmdExpc3RpbmdSZXF1ZXN0GjouYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkNyZWF0ZUFwcERyYWZ0TGlzdGluZ1Jlc3BvbnNlIlqC0+STAlQ6ASoiTy9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9L2xpc3RpbmdzL3tsYW5ndWFnZX0SugIKKENyZWF0ZUFwcERyYWZ0TGlzdGluZ0ljb25VcGxvYWRPcGVyYXRpb24STC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRMaXN0aW5nSWNvblVwbG9hZE9wZXJhdGlvblJlcXVlc3QaTS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRMaXN0aW5nSWNvblVwbG9hZE9wZXJhdGlvblJlc3BvbnNlInGC0+STAms6ASoiZi9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9L2xpc3RpbmdzL3tsYW5ndWFnZX0vaWNvbi91cGxvYWRfb3BlcmF0aW9ucxKhAgoiR2V0QXBwRHJhZnRMaXN0aW5nSWNvbkRvd25sb2FkSW5mbxJGLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5HZXRBcHBEcmFmdExpc3RpbmdJY29uRG93bmxvYWRJbmZvUmVxdWVzdBpHLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5HZXRBcHBEcmFmdExpc3RpbmdJY29uRG93bmxvYWRJbmZvUmVzcG9uc2UiaoLT5JMCZBJiL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0vbGlzdGluZ3Mve2xhbmd1YWdlfS9pY29uL2Rvd25sb2FkX2luZm8S5wEKFURlbGV0ZUFwcERyYWZ0TGlzdGluZxI5LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5EZWxldGVBcHBEcmFmdExpc3RpbmdSZXF1ZXN0GjouYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkRlbGV0ZUFwcERyYWZ0TGlzdGluZ1Jlc3BvbnNlIleC0+STAlEqTy9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9L2xpc3RpbmdzL3tsYW5ndWFnZX0SzAEKD1B1Ymxpc2hBcHBEcmFmdBIzLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5QdWJsaXNoQXBwRHJhZnRSZXF1ZXN0GjQuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlB1Ymxpc2hBcHBEcmFmdFJlc3BvbnNlIk6C0+STAkg6ASoiQy9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZHJhZnRzL3thcHBfZHJhZnRfaWR9OnB1Ymxpc2hCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_request, file_accrescent_console_v1alpha1_create_app_draft_listing_icon_upload_operation_response, file_accrescent_console_v1alpha1_create_app_draft_listing_request, file_accrescent_console_v1alpha1_create_app_draft_listing_response, file_accrescent_console_v1alpha1_create_app_draft_request, file_accrescent_console_v1alpha1_create_app_draft_response, file_accrescent_console_v1alpha1_create_app_draft_upload_operation_request, file_accrescent_console_v1alpha1_create_app_draft_upload_operation_response, file_accrescent_console_v1alpha1_delete_app_draft_listing_request, file_accrescent_console_v1alpha1_delete_app_draft_listing_response, file_accrescent_console_v1alpha1_delete_app_draft_request, file_accrescent_console_v1alpha1_delete_app_draft_response, file_accrescent_console_v1alpha1_get_app_draft_download_info_request, file_accrescent_console_v1alpha1_get_app_draft_download_info_response, file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_request, file_accrescent_console_v1alpha1_get_app_draft_listing_icon_download_info_response, file_accrescent_console_v1alpha1_get_app_draft_request, file_accrescent_console_v1alpha1_get_app_draft_response, file_accrescent_console_v1alpha1_list_app_drafts_request, file_accrescent_console_v1alpha1_list_app_drafts_response, file_accrescent_console_v1alpha1_publish_app_draft_request, file_accrescent_console_v1alpha1_publish_app_draft_response, file_accrescent_console_v1alpha1_submit_app_draft_request, file_accrescent_console_v1alpha1_submit_app_draft_response, file_accrescent_console_v1alpha1_update_app_draft_request, file_accrescent_console_v1alpha1_update_app_draft_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing app drafts.\n *\n * @generated from service accrescent.console.v1alpha1.AppDraftService\n */\nexport const AppDraftService: GenService<{\n /**\n * Creates a new app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraft\n */\n createAppDraft: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftRequestSchema;\n output: typeof CreateAppDraftResponseSchema;\n },\n /**\n * Gets an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraft\n */\n getAppDraft: {\n methodKind: \"unary\";\n input: typeof GetAppDraftRequestSchema;\n output: typeof GetAppDraftResponseSchema;\n },\n /**\n * Lists app drafts.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.ListAppDrafts\n */\n listAppDrafts: {\n methodKind: \"unary\";\n input: typeof ListAppDraftsRequestSchema;\n output: typeof ListAppDraftsResponseSchema;\n },\n /**\n * Creates an app draft upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftUploadOperation\n */\n createAppDraftUploadOperation: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftUploadOperationRequestSchema;\n output: typeof CreateAppDraftUploadOperationResponseSchema;\n },\n /**\n * Gets an app draft's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftDownloadInfo\n */\n getAppDraftDownloadInfo: {\n methodKind: \"unary\";\n input: typeof GetAppDraftDownloadInfoRequestSchema;\n output: typeof GetAppDraftDownloadInfoResponseSchema;\n },\n /**\n * Updates an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.UpdateAppDraft\n */\n updateAppDraft: {\n methodKind: \"unary\";\n input: typeof UpdateAppDraftRequestSchema;\n output: typeof UpdateAppDraftResponseSchema;\n },\n /**\n * Submits an app draft for review.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.SubmitAppDraft\n */\n submitAppDraft: {\n methodKind: \"unary\";\n input: typeof SubmitAppDraftRequestSchema;\n output: typeof SubmitAppDraftResponseSchema;\n },\n /**\n * Deletes an existing app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraft\n */\n deleteAppDraft: {\n methodKind: \"unary\";\n input: typeof DeleteAppDraftRequestSchema;\n output: typeof DeleteAppDraftResponseSchema;\n },\n /**\n * Creates a new app listing for an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListing\n */\n createAppDraftListing: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftListingRequestSchema;\n output: typeof CreateAppDraftListingResponseSchema;\n },\n /**\n * Creates an app draft listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.CreateAppDraftListingIconUploadOperation\n */\n createAppDraftListingIconUploadOperation: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftListingIconUploadOperationRequestSchema;\n output: typeof CreateAppDraftListingIconUploadOperationResponseSchema;\n },\n /**\n * Gets an app draft listing icon's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.GetAppDraftListingIconDownloadInfo\n */\n getAppDraftListingIconDownloadInfo: {\n methodKind: \"unary\";\n input: typeof GetAppDraftListingIconDownloadInfoRequestSchema;\n output: typeof GetAppDraftListingIconDownloadInfoResponseSchema;\n },\n /**\n * Deletes an existing app draft listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.DeleteAppDraftListing\n */\n deleteAppDraftListing: {\n methodKind: \"unary\";\n input: typeof DeleteAppDraftListingRequestSchema;\n output: typeof DeleteAppDraftListingResponseSchema;\n },\n /**\n * Publishes an app draft to the app store.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppDraftService.PublishAppDraft\n */\n publishAppDraft: {\n methodKind: \"unary\";\n input: typeof PublishAppDraftRequestSchema;\n output: typeof PublishAppDraftResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_app_draft_service, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_edit.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppPackage, AppPackageValid } from \"./app_package_pb\";\nimport { file_accrescent_console_v1alpha1_app_package } from \"./app_package_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Timestamp } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_edit.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_edit: GenFile = /*@__PURE__*/\n fileDesc(\"CiphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX2VkaXQucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLXAgoHQXBwRWRpdBIXCgJpZBgBIAEoCUIGukgDyAEBSACIAQESNgoKY3JlYXRlZF9hdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCBrpIA8gBARItChhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2UYAyABKAlCBrpIA8gBAUgBiAEBEkQKC2FwcF9wYWNrYWdlGAQgASgLMicuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkFwcFBhY2thZ2VCBrpIA8gBARIwCgxzdWJtaXR0ZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDHB1Ymxpc2hlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCBQoDX2lkQhsKGV9kZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_app_package, file_buf_validate_validate, file_google_protobuf_timestamp]);\n\n/**\n * An app edit.\n *\n * @generated from message accrescent.console.v1alpha1.AppEdit\n */\nexport type AppEdit = Message<\"accrescent.console.v1alpha1.AppEdit\"> & {\n /**\n * The app edit's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The timestamp at which the app edit was created.\n *\n * @generated from field: google.protobuf.Timestamp created_at = 2;\n */\n createdAt?: Timestamp;\n\n /**\n * The app edit's default listing language.\n *\n * @generated from field: optional string default_listing_language = 3;\n */\n defaultListingLanguage?: string;\n\n /**\n * The edit's associated package information.\n *\n * @generated from field: accrescent.console.v1alpha1.AppPackage app_package = 4;\n */\n appPackage?: AppPackage;\n\n /**\n * The timestamp at which the app edit has been submitted, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp submitted_at = 5;\n */\n submittedAt?: Timestamp;\n\n /**\n * The timestamp at which the app edit has been published, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp published_at = 6;\n */\n publishedAt?: Timestamp;\n};\n\n/**\n * An app edit.\n *\n * @generated from message accrescent.console.v1alpha1.AppEdit\n */\nexport type AppEditValid = Message<\"accrescent.console.v1alpha1.AppEdit\"> & {\n /**\n * The app edit's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The timestamp at which the app edit was created.\n *\n * @generated from field: google.protobuf.Timestamp created_at = 2;\n */\n createdAt: Timestamp;\n\n /**\n * The app edit's default listing language.\n *\n * @generated from field: optional string default_listing_language = 3;\n */\n defaultListingLanguage: string;\n\n /**\n * The edit's associated package information.\n *\n * @generated from field: accrescent.console.v1alpha1.AppPackage app_package = 4;\n */\n appPackage: AppPackageValid;\n\n /**\n * The timestamp at which the app edit has been submitted, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp submitted_at = 5;\n */\n submittedAt?: Timestamp;\n\n /**\n * The timestamp at which the app edit has been published, if applicable.\n *\n * @generated from field: google.protobuf.Timestamp published_at = 6;\n */\n publishedAt?: Timestamp;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.AppEdit.\n * Use `create(AppEditSchema)` to create a new message.\n */\nexport const AppEditSchema: GenMessage<AppEdit, {validType: AppEditValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_app_edit, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIuChRDcmVhdGVBcHBFZGl0UmVxdWVzdBIWCgZhcHBfaWQYASABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditRequest\n */\nexport type CreateAppEditRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditRequest\"> & {\n /**\n * The ID of the app to create an edit for.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n};\n\n/**\n * Request defining parameters for creating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditRequest\n */\nexport type CreateAppEditRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditRequest\"> & {\n /**\n * The ID of the app to create an edit for.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditRequest.\n * Use `create(CreateAppEditRequestSchema)` to create a new message.\n */\nexport const CreateAppEditRequestSchema: GenMessage<CreateAppEditRequest, {validType: CreateAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiSQoVQ3JlYXRlQXBwRWRpdFJlc3BvbnNlEiAKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQFIAIgBAUIOCgxfYXBwX2VkaXRfaWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Response to creating a new app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditResponse\n */\nexport type CreateAppEditResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditResponse\"> & {\n /**\n * The unique ID of the created app edit.\n *\n * @generated from field: optional string app_edit_id = 1;\n */\n appEditId?: string;\n};\n\n/**\n * Response to creating a new app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditResponse\n */\nexport type CreateAppEditResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppEditResponse\"> & {\n /**\n * The unique ID of the created app edit.\n *\n * @generated from field: optional string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditResponse.\n * Use `create(CreateAppEditResponseSchema)` to create a new message.\n */\nexport const CreateAppEditResponseSchema: GenMessage<CreateAppEditResponse, {validType: CreateAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppEdit, AppEditValid } from \"./app_edit_pb\";\nimport { file_accrescent_console_v1alpha1_app_edit } from \"./app_edit_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjdhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiVAoSR2V0QXBwRWRpdFJlc3BvbnNlEj4KCGFwcF9lZGl0GAEgASgLMiQuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkFwcEVkaXRCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app_edit, file_buf_validate_validate]);\n\n/**\n * Response to getting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditResponse\n */\nexport type GetAppEditResponse = Message<\"accrescent.console.v1alpha1.GetAppEditResponse\"> & {\n /**\n * The requested app edit.\n *\n * @generated from field: accrescent.console.v1alpha1.AppEdit app_edit = 1;\n */\n appEdit?: AppEdit;\n};\n\n/**\n * Response to getting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditResponse\n */\nexport type GetAppEditResponseValid = Message<\"accrescent.console.v1alpha1.GetAppEditResponse\"> & {\n /**\n * The requested app edit.\n *\n * @generated from field: accrescent.console.v1alpha1.AppEdit app_edit = 1;\n */\n appEdit: AppEditValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppEditResponse.\n * Use `create(GetAppEditResponseSchema)` to create a new message.\n */\nexport const GetAppEditResponseSchema: GenMessage<GetAppEditResponse, {validType: GetAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_app_edits_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { AppEdit, AppEditValid } from \"./app_edit_pb\";\nimport { file_accrescent_console_v1alpha1_app_edit } from \"./app_edit_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_app_edits_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_app_edits_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBfZWRpdHNfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLhAQoUTGlzdEFwcEVkaXRzUmVzcG9uc2USlgEKCWFwcF9lZGl0cxgBIAMoCzIkLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5BcHBFZGl0Ql26SFq6AVcKGWFwcF9lZGl0cy5oYXZlX3VuaXF1ZV9pZHMSHmFwcCBlZGl0cyBtdXN0IGhhdmUgdW5pcXVlIElEcxoadGhpcy5tYXAoZSwgZS5pZCkudW5pcXVlKCkSHAoPbmV4dF9wYWdlX3Rva2VuGAIgASgJSACIAQFCEgoQX25leHRfcGFnZV90b2tlbkJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app_edit, file_buf_validate_validate]);\n\n/**\n * Response to listing app edits.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppEditsResponse\n */\nexport type ListAppEditsResponse = Message<\"accrescent.console.v1alpha1.ListAppEditsResponse\"> & {\n /**\n * The app drafts matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.AppEdit app_edits = 1;\n */\n appEdits: AppEdit[];\n\n /**\n * An opaque token which, if passed to another invocation of ListAppEdits,\n * will return the next page of app edits.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Response to listing app edits.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppEditsResponse\n */\nexport type ListAppEditsResponseValid = Message<\"accrescent.console.v1alpha1.ListAppEditsResponse\"> & {\n /**\n * The app drafts matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.AppEdit app_edits = 1;\n */\n appEdits: AppEditValid[];\n\n /**\n * An opaque token which, if passed to another invocation of ListAppEdits,\n * will return the next page of app edits.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppEditsResponse.\n * Use `create(ListAppEditsResponseSchema)` to create a new message.\n */\nexport const ListAppEditsResponseSchema: GenMessage<ListAppEditsResponse, {validType: ListAppEditsResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_app_edits_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_upload_operation_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_upload_operation_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_upload_operation_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3VwbG9hZF9vcGVyYXRpb25fcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIkIKI0NyZWF0ZUFwcEVkaXRVcGxvYWRPcGVyYXRpb25SZXF1ZXN0EhsKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest\n */\nexport type CreateAppEditUploadOperationRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest\"> & {\n /**\n * The ID of the app edit to create an upload operation for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for creating an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest\n */\nexport type CreateAppEditUploadOperationRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest\"> & {\n /**\n * The ID of the app edit to create an upload operation for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditUploadOperationRequest.\n * Use `create(CreateAppEditUploadOperationRequestSchema)` to create a new message.\n */\nexport const CreateAppEditUploadOperationRequestSchema: GenMessage<CreateAppEditUploadOperationRequest, {validType: CreateAppEditUploadOperationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_upload_operation_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_upload_operation_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_upload_operation_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_upload_operation_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3VwbG9hZF9vcGVyYXRpb25fcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSKwAQokQ3JlYXRlQXBwRWRpdFVwbG9hZE9wZXJhdGlvblJlc3BvbnNlEiwKEmFwa19zZXRfdXBsb2FkX3VybBgBIAEoCUILukgIyAEBcgOIAQFIAIgBARJDChRwcm9jZXNzaW5nX29wZXJhdGlvbhgCIAEoCzIdLmdvb2dsZS5sb25ncnVubmluZy5PcGVyYXRpb25CBrpIA8gBAUIVChNfYXBrX3NldF91cGxvYWRfdXJsQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to creating an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse\n */\nexport type CreateAppEditUploadOperationResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which an APK set can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string apk_set_upload_url = 1;\n */\n apkSetUploadUrl?: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppEditResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation?: Operation;\n};\n\n/**\n * Response to creating an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse\n */\nexport type CreateAppEditUploadOperationResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which an APK set can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string apk_set_upload_url = 1;\n */\n apkSetUploadUrl: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppEditResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditUploadOperationResponse.\n * Use `create(CreateAppEditUploadOperationResponseSchema)` to create a new message.\n */\nexport const CreateAppEditUploadOperationResponseSchema: GenMessage<CreateAppEditUploadOperationResponse, {validType: CreateAppEditUploadOperationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_upload_operation_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_edit_download_info_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_edit_download_info_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_edit_download_info_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9lZGl0X2Rvd25sb2FkX2luZm9fcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJXCh5HZXRBcHBFZGl0RG93bmxvYWRJbmZvUmVzcG9uc2USJQoLYXBrX3NldF91cmwYASABKAlCC7pICMgBAXIDiAEBSACIAQFCDgoMX2Fwa19zZXRfdXJsQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Response to getting an app edit's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse\n */\nexport type GetAppEditDownloadInfoResponse = Message<\"accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse\"> & {\n /**\n * The URL of the APK set which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string apk_set_url = 1;\n */\n apkSetUrl?: string;\n};\n\n/**\n * Response to getting an app edit's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse\n */\nexport type GetAppEditDownloadInfoResponseValid = Message<\"accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse\"> & {\n /**\n * The URL of the APK set which can be retrieved with a simple HTTP GET.\n *\n * @generated from field: optional string apk_set_url = 1;\n */\n apkSetUrl: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppEditDownloadInfoResponse.\n * Use `create(GetAppEditDownloadInfoResponseSchema)` to create a new message.\n */\nexport const GetAppEditDownloadInfoResponseSchema: GenMessage<GetAppEditDownloadInfoResponse, {validType: GetAppEditDownloadInfoResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_edit_download_info_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { FieldMask } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_field_mask } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSLeAQoUVXBkYXRlQXBwRWRpdFJlcXVlc3QSGwoLYXBwX2VkaXRfaWQYASABKAlCBrpIA8gBARI2ChhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2UYAiABKAlCD7pIDMgBAXIHUgVlbi1VU0gAiAEBElQKC3VwZGF0ZV9tYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IjukggyAEB4gEaEhhkZWZhdWx0X2xpc3RpbmdfbGFuZ3VhZ2VCGwoZX2RlZmF1bHRfbGlzdGluZ19sYW5ndWFnZUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate, file_google_protobuf_field_mask]);\n\n/**\n * Request defining parameters for updating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppEditRequest\n */\nexport type UpdateAppEditRequest = Message<\"accrescent.console.v1alpha1.UpdateAppEditRequest\"> & {\n /**\n * The ID of the app draft to update.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The edit's default listing language.\n *\n * Required because no other fields are supported for update yet.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage?: string;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask?: FieldMask;\n};\n\n/**\n * Request defining parameters for updating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppEditRequest\n */\nexport type UpdateAppEditRequestValid = Message<\"accrescent.console.v1alpha1.UpdateAppEditRequest\"> & {\n /**\n * The ID of the app draft to update.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The edit's default listing language.\n *\n * Required because no other fields are supported for update yet.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage: string;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask: FieldMask;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppEditRequest.\n * Use `create(UpdateAppEditRequestSchema)` to create a new message.\n */\nexport const UpdateAppEditRequestSchema: GenMessage<UpdateAppEditRequest, {validType: UpdateAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiFwoVVXBkYXRlQXBwRWRpdFJlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to updating an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppEditResponse\n */\nexport type UpdateAppEditResponse = Message<\"accrescent.console.v1alpha1.UpdateAppEditResponse\"> & {\n};\n\nexport type UpdateAppEditResponseValid = UpdateAppEditResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppEditResponse.\n * Use `create(UpdateAppEditResponseSchema)` to create a new message.\n */\nexport const UpdateAppEditResponseSchema: GenMessage<UpdateAppEditResponse, {validType: UpdateAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/submit_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/submit_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_submit_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvc3VibWl0X2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIzChRTdWJtaXRBcHBFZGl0UmVxdWVzdBIbCgthcHBfZWRpdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for submitting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppEditRequest\n */\nexport type SubmitAppEditRequest = Message<\"accrescent.console.v1alpha1.SubmitAppEditRequest\"> & {\n /**\n * The ID of the app edit to submit.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for submitting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppEditRequest\n */\nexport type SubmitAppEditRequestValid = Message<\"accrescent.console.v1alpha1.SubmitAppEditRequest\"> & {\n /**\n * The ID of the app edit to submit.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.SubmitAppEditRequest.\n * Use `create(SubmitAppEditRequestSchema)` to create a new message.\n */\nexport const SubmitAppEditRequestSchema: GenMessage<SubmitAppEditRequest, {validType: SubmitAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_submit_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/submit_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Operation } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/submit_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_submit_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvc3VibWl0X2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiSQoVU3VibWl0QXBwRWRpdFJlc3BvbnNlEjAKCW9wZXJhdGlvbhgBIAEoCzIdLmdvb2dsZS5sb25ncnVubmluZy5PcGVyYXRpb25CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_google_longrunning_operations]);\n\n/**\n * Response to submitting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.SubmitAppEditResponse\n */\nexport type SubmitAppEditResponse = Message<\"accrescent.console.v1alpha1.SubmitAppEditResponse\"> & {\n /**\n * The publishing operation. Present if and only if the edit doesn't require\n * review.\n *\n * The response type of this operation is PublishAppEditResult.\n *\n * @generated from field: google.longrunning.Operation operation = 1;\n */\n operation?: Operation;\n};\n\nexport type SubmitAppEditResponseValid = SubmitAppEditResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.SubmitAppEditResponse.\n * Use `create(SubmitAppEditResponseSchema)` to create a new message.\n */\nexport const SubmitAppEditResponseSchema: GenMessage<SubmitAppEditResponse, {validType: SubmitAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_submit_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_edit_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_edit_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_edit_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9lZGl0X3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiFwoVRGVsZXRlQXBwRWRpdFJlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to deleting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditResponse\n */\nexport type DeleteAppEditResponse = Message<\"accrescent.console.v1alpha1.DeleteAppEditResponse\"> & {\n};\n\nexport type DeleteAppEditResponseValid = DeleteAppEditResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppEditResponse.\n * Use `create(DeleteAppEditResponseSchema)` to create a new message.\n */\nexport const DeleteAppEditResponseSchema: GenMessage<DeleteAppEditResponse, {validType: DeleteAppEditResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_edit_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_listing_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_listing_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_listing_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X2xpc3RpbmdfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIssBChtDcmVhdGVBcHBFZGl0TGlzdGluZ1JlcXVlc3QSGwoLYXBwX2VkaXRfaWQYASABKAlCBrpIA8gBARIhCghsYW5ndWFnZRgCIAEoCUIPukgMyAEBcgdSBWVuLVVTEh8KBG5hbWUYAyABKAlCDLpICcgBAXIEEAMYHkgAiAEBEiwKEXNob3J0X2Rlc2NyaXB0aW9uGAQgASgJQgy6SAnIAQFyBBADGFBIAYgBAUIHCgVfbmFtZUIUChJfc2hvcnRfZGVzY3JpcHRpb25CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app listing for an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingRequest\n */\nexport type CreateAppEditListingRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditListingRequest\"> & {\n /**\n * The app edit to create the app listing for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The language of this listing's fields as a BCP-47 tag.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n\n /**\n * The proper name of the app, possibly including very short descriptive text\n * (e.g. \"SecureChat - Secure Texting\").\n *\n * @generated from field: optional string name = 3;\n */\n name?: string;\n\n /**\n * A short description of the app to be shown in headers and small screen\n * spaces.\n *\n * @generated from field: optional string short_description = 4;\n */\n shortDescription?: string;\n};\n\n/**\n * Request defining parameters for creating an app listing for an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingRequest\n */\nexport type CreateAppEditListingRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditListingRequest\"> & {\n /**\n * The app edit to create the app listing for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The language of this listing's fields as a BCP-47 tag.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n\n /**\n * The proper name of the app, possibly including very short descriptive text\n * (e.g. \"SecureChat - Secure Texting\").\n *\n * @generated from field: optional string name = 3;\n */\n name: string;\n\n /**\n * A short description of the app to be shown in headers and small screen\n * spaces.\n *\n * @generated from field: optional string short_description = 4;\n */\n shortDescription: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditListingRequest.\n * Use `create(CreateAppEditListingRequestSchema)` to create a new message.\n */\nexport const CreateAppEditListingRequestSchema: GenMessage<CreateAppEditListingRequest, {validType: CreateAppEditListingRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_listing_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_listing_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_listing_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_listing_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X2xpc3RpbmdfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIeChxDcmVhdGVBcHBFZGl0TGlzdGluZ1Jlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to creating a new app listing for an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingResponse\n */\nexport type CreateAppEditListingResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditListingResponse\"> & {\n};\n\nexport type CreateAppEditListingResponseValid = CreateAppEditListingResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditListingResponse.\n * Use `create(CreateAppEditListingResponseSchema)` to create a new message.\n */\nexport const CreateAppEditListingResponseSchema: GenMessage<CreateAppEditListingResponse, {validType: CreateAppEditListingResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_listing_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Operation, OperationValid } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport { file_google_longrunning_operations } from \"@accrescent/console-client-sdk-angular/google/longrunning\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_response: GenFile = /*@__PURE__*/\n fileDesc(\"ClhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X2xpc3RpbmdfaWNvbl91cGxvYWRfb3BlcmF0aW9uX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiqwEKL0NyZWF0ZUFwcEVkaXRMaXN0aW5nSWNvblVwbG9hZE9wZXJhdGlvblJlc3BvbnNlEiQKCnVwbG9hZF91cmwYASABKAlCC7pICMgBAXIDiAEBSACIAQESQwoUcHJvY2Vzc2luZ19vcGVyYXRpb24YAiABKAsyHS5nb29nbGUubG9uZ3J1bm5pbmcuT3BlcmF0aW9uQga6SAPIAQFCDQoLX3VwbG9hZF91cmxCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate, file_google_longrunning_operations]);\n\n/**\n * Response to creating an app edit listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse\n */\nexport type CreateAppEditListingIconUploadOperationResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which the icon can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string upload_url = 1;\n */\n uploadUrl?: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppEditListingIconResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation?: Operation;\n};\n\n/**\n * Response to creating an app edit listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse\n */\nexport type CreateAppEditListingIconUploadOperationResponseValid = Message<\"accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse\"> & {\n /**\n * An HTTP or HTTPS URL at which the icon can be submitted with an HTTP PUT\n * request.\n *\n * @generated from field: optional string upload_url = 1;\n */\n uploadUrl: string;\n\n /**\n * The upload processing operation.\n *\n * The response type of this operation is UploadAppEditListingIconResult.\n *\n * @generated from field: google.longrunning.Operation processing_operation = 2;\n */\n processingOperation: OperationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationResponse.\n * Use `create(CreateAppEditListingIconUploadOperationResponseSchema)` to create a new message.\n */\nexport const CreateAppEditListingIconUploadOperationResponseSchema: GenMessage<CreateAppEditListingIconUploadOperationResponse, {validType: CreateAppEditListingIconUploadOperationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_edit_listing_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_edit_listing_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_edit_listing_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9lZGl0X2xpc3RpbmdfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIeChxEZWxldGVBcHBFZGl0TGlzdGluZ1Jlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to deleting an app edit listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditListingResponse\n */\nexport type DeleteAppEditListingResponse = Message<\"accrescent.console.v1alpha1.DeleteAppEditListingResponse\"> & {\n};\n\nexport type DeleteAppEditListingResponseValid = DeleteAppEditListingResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppEditListingResponse.\n * Use `create(DeleteAppEditListingResponseSchema)` to create a new message.\n */\nexport const DeleteAppEditListingResponseSchema: GenMessage<DeleteAppEditListingResponse, {validType: DeleteAppEditListingResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_edit_listing_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.4.1 with parameter \"target=ts,valid_responses=true\"\n// @generated from file accrescent/console/v1alpha1/app_edit_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { CreateAppEditRequest } from \"./create_app_edit_request_pb\";\nimport { CreateAppEditRequestSchema } from \"./create_app_edit_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { CreateAppEditResponseValid } from \"./create_app_edit_response_pb\";\nimport { CreateAppEditResponseSchema } from \"./create_app_edit_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { GetAppEditRequest } from \"./get_app_edit_request_pb\";\nimport type { GetAppEditResponseValid } from \"./get_app_edit_response_pb\";\nimport { GetAppEditResponseSchema } from \"./get_app_edit_response_pb\";\nimport type { ListAppEditsRequest } from \"./list_app_edits_request_pb\";\nimport type { ListAppEditsResponseValid } from \"./list_app_edits_response_pb\";\nimport { ListAppEditsResponseSchema } from \"./list_app_edits_response_pb\";\nimport type { CreateAppEditUploadOperationRequest } from \"./create_app_edit_upload_operation_request_pb\";\nimport { CreateAppEditUploadOperationRequestSchema } from \"./create_app_edit_upload_operation_request_pb\";\nimport type { CreateAppEditUploadOperationResponseValid } from \"./create_app_edit_upload_operation_response_pb\";\nimport { CreateAppEditUploadOperationResponseSchema } from \"./create_app_edit_upload_operation_response_pb\";\nimport type { GetAppEditDownloadInfoRequest } from \"./get_app_edit_download_info_request_pb\";\nimport type { GetAppEditDownloadInfoResponseValid } from \"./get_app_edit_download_info_response_pb\";\nimport { GetAppEditDownloadInfoResponseSchema } from \"./get_app_edit_download_info_response_pb\";\nimport type { UpdateAppEditRequest } from \"./update_app_edit_request_pb\";\nimport { UpdateAppEditRequestSchema } from \"./update_app_edit_request_pb\";\nimport type { UpdateAppEditResponseValid } from \"./update_app_edit_response_pb\";\nimport { UpdateAppEditResponseSchema } from \"./update_app_edit_response_pb\";\nimport type { SubmitAppEditRequest } from \"./submit_app_edit_request_pb\";\nimport { SubmitAppEditRequestSchema } from \"./submit_app_edit_request_pb\";\nimport type { SubmitAppEditResponseValid } from \"./submit_app_edit_response_pb\";\nimport { SubmitAppEditResponseSchema } from \"./submit_app_edit_response_pb\";\nimport type { DeleteAppEditRequest } from \"./delete_app_edit_request_pb\";\nimport type { DeleteAppEditResponseValid } from \"./delete_app_edit_response_pb\";\nimport { DeleteAppEditResponseSchema } from \"./delete_app_edit_response_pb\";\nimport type { CreateAppEditListingRequest } from \"./create_app_edit_listing_request_pb\";\nimport { CreateAppEditListingRequestSchema } from \"./create_app_edit_listing_request_pb\";\nimport type { CreateAppEditListingResponseValid } from \"./create_app_edit_listing_response_pb\";\nimport { CreateAppEditListingResponseSchema } from \"./create_app_edit_listing_response_pb\";\nimport type { CreateAppEditListingIconUploadOperationRequest } from \"./create_app_edit_listing_icon_upload_operation_request_pb\";\nimport type { CreateAppEditListingIconUploadOperationResponseValid } from \"./create_app_edit_listing_icon_upload_operation_response_pb\";\nimport { CreateAppEditListingIconUploadOperationResponseSchema } from \"./create_app_edit_listing_icon_upload_operation_response_pb\";\nimport type { DeleteAppEditListingRequest } from \"./delete_app_edit_listing_request_pb\";\nimport type { DeleteAppEditListingResponseValid } from \"./delete_app_edit_listing_response_pb\";\nimport { DeleteAppEditListingResponseSchema } from \"./delete_app_edit_listing_response_pb\";\n\nexport const NG_APP_EDIT_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_APP_EDIT_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing app edits.\n *\n * @generated from service accrescent.console.v1alpha1.AppEditService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgAppEditService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_APP_EDIT_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Creates a new app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEdit\n */\n createAppEdit(request: CreateAppEditRequest): Observable<CreateAppEditResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/apps/${request.appId}/edits`;\n const json = toJson(CreateAppEditRequestSchema, request);\n const { appId: _appId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppEditResponseValid),\n );\n }\n\n /**\n * Gets an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEdit\n */\n getAppEdit(request: GetAppEditRequest): Observable<GetAppEditResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as GetAppEditResponseValid),\n );\n }\n\n /**\n * Lists app edits.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.ListAppEdits\n */\n listAppEdits(request: ListAppEditsRequest): Observable<ListAppEditsResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits`;\n const params: Record<string, string | number | boolean> = {};\n if (request.appId !== undefined) params[\"appId\"] = request.appId;\n if (request.pageSize !== undefined) params[\"pageSize\"] = request.pageSize;\n if (request.pageToken !== undefined) params[\"pageToken\"] = request.pageToken;\n\n return this.httpClient.get(url, { params }).pipe(\n map((response) => fromJson(\n ListAppEditsResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as ListAppEditsResponseValid),\n );\n }\n\n /**\n * Creates an app edit upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditUploadOperation\n */\n createAppEditUploadOperation(request: CreateAppEditUploadOperationRequest): Observable<CreateAppEditUploadOperationResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/upload_operations`;\n const json = toJson(CreateAppEditUploadOperationRequestSchema, request);\n const { appEditId: _appEditId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppEditUploadOperationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppEditUploadOperationResponseValid),\n );\n }\n\n /**\n * Gets an app edit's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEditDownloadInfo\n */\n getAppEditDownloadInfo(request: GetAppEditDownloadInfoRequest): Observable<GetAppEditDownloadInfoResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/download_info`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppEditDownloadInfoResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as GetAppEditDownloadInfoResponseValid),\n );\n }\n\n /**\n * Updates an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.UpdateAppEdit\n */\n updateAppEdit(request: UpdateAppEditRequest): Observable<UpdateAppEditResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}`;\n const json = toJson(UpdateAppEditRequestSchema, request);\n const { appEditId: _appEditId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.patch(url, body).pipe(\n map((response) => fromJson(\n UpdateAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as UpdateAppEditResponseValid),\n );\n }\n\n /**\n * Submits an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.SubmitAppEdit\n */\n submitAppEdit(request: SubmitAppEditRequest): Observable<SubmitAppEditResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}:submit`;\n const json = toJson(SubmitAppEditRequestSchema, request);\n const { appEditId: _appEditId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n SubmitAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as SubmitAppEditResponseValid),\n );\n }\n\n /**\n * Deletes an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEdit\n */\n deleteAppEdit(request: DeleteAppEditRequest): Observable<DeleteAppEditResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}`;\n\n return this.httpClient.delete(url).pipe(\n map((response) => fromJson(\n DeleteAppEditResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as DeleteAppEditResponseValid),\n );\n }\n\n /**\n * Creates a new app listing for an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListing\n */\n createAppEditListing(request: CreateAppEditListingRequest): Observable<CreateAppEditListingResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/listings/${request.language}`;\n const json = toJson(CreateAppEditListingRequestSchema, request);\n const { appEditId: _appEditId, language: _language, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppEditListingResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppEditListingResponseValid),\n );\n }\n\n /**\n * Creates an app edit listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListingIconUploadOperation\n */\n createAppEditListingIconUploadOperation(request: CreateAppEditListingIconUploadOperationRequest): Observable<CreateAppEditListingIconUploadOperationResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/listings/${request.language}/icon/upload_operations`;\n\n return this.httpClient.post(url, null).pipe(\n map((response) => fromJson(\n CreateAppEditListingIconUploadOperationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppEditListingIconUploadOperationResponseValid),\n );\n }\n\n /**\n * Deletes an existing app edit listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEditListing\n */\n deleteAppEditListing(request: DeleteAppEditListingRequest): Observable<DeleteAppEditListingResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/listings/${request.language}`;\n\n return this.httpClient.delete(url).pipe(\n map((response) => fromJson(\n DeleteAppEditListingResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as DeleteAppEditListingResponseValid),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_listing_icon_upload_operation_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_request: GenFile = /*@__PURE__*/\n fileDesc(\"CldhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X2xpc3RpbmdfaWNvbl91cGxvYWRfb3BlcmF0aW9uX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJnCi5DcmVhdGVBcHBFZGl0TGlzdGluZ0ljb25VcGxvYWRPcGVyYXRpb25SZXF1ZXN0EhsKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQESGAoIbGFuZ3VhZ2UYAiABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app edit listing icon upload\n * operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest\n */\nexport type CreateAppEditListingIconUploadOperationRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest\"> & {\n /**\n * The ID of the app edit to create an icon upload operation for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The language of the app listing to create an icon upload operation for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for creating an app edit listing icon upload\n * operation.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest\n */\nexport type CreateAppEditListingIconUploadOperationRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest\"> & {\n /**\n * The ID of the app edit to create an icon upload operation for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The language of the app listing to create an icon upload operation for.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditListingIconUploadOperationRequest.\n * Use `create(CreateAppEditListingIconUploadOperationRequestSchema)` to create a new message.\n */\nexport const CreateAppEditListingIconUploadOperationRequestSchema: GenMessage<CreateAppEditListingIconUploadOperationRequest, {validType: CreateAppEditListingIconUploadOperationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_edit_listing_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_edit_listing_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_edit_listing_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9lZGl0X2xpc3RpbmdfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIlQKG0RlbGV0ZUFwcEVkaXRMaXN0aW5nUmVxdWVzdBIbCgthcHBfZWRpdF9pZBgBIAEoCUIGukgDyAEBEhgKCGxhbmd1YWdlGAIgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for deleting an app edit listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditListingRequest\n */\nexport type DeleteAppEditListingRequest = Message<\"accrescent.console.v1alpha1.DeleteAppEditListingRequest\"> & {\n /**\n * The ID of the app edit the listing is associated with.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The BCP-47 language tag of the listing to delete.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Request defining parameters for deleting an app edit listing.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditListingRequest\n */\nexport type DeleteAppEditListingRequestValid = Message<\"accrescent.console.v1alpha1.DeleteAppEditListingRequest\"> & {\n /**\n * The ID of the app edit the listing is associated with.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * The BCP-47 language tag of the listing to delete.\n *\n * @generated from field: string language = 2;\n */\n language: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppEditListingRequest.\n * Use `create(DeleteAppEditListingRequestSchema)` to create a new message.\n */\nexport const DeleteAppEditListingRequestSchema: GenMessage<DeleteAppEditListingRequest, {validType: DeleteAppEditListingRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_edit_listing_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/delete_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/delete_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_delete_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZGVsZXRlX2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIzChREZWxldGVBcHBFZGl0UmVxdWVzdBIbCgthcHBfZWRpdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for deleting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditRequest\n */\nexport type DeleteAppEditRequest = Message<\"accrescent.console.v1alpha1.DeleteAppEditRequest\"> & {\n /**\n * The ID of the app edit to delete.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for deleting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.DeleteAppEditRequest\n */\nexport type DeleteAppEditRequestValid = Message<\"accrescent.console.v1alpha1.DeleteAppEditRequest\"> & {\n /**\n * The ID of the app edit to delete.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.DeleteAppEditRequest.\n * Use `create(DeleteAppEditRequestSchema)` to create a new message.\n */\nexport const DeleteAppEditRequestSchema: GenMessage<DeleteAppEditRequest, {validType: DeleteAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_delete_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_edit_download_info_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_edit_download_info_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_edit_download_info_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkRhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9lZGl0X2Rvd25sb2FkX2luZm9fcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIjwKHUdldEFwcEVkaXREb3dubG9hZEluZm9SZXF1ZXN0EhsKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app edit's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest\n */\nexport type GetAppEditDownloadInfoRequest = Message<\"accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest\"> & {\n /**\n * The ID of the app edit to get download info for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for getting an app edit's download info.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest\n */\nexport type GetAppEditDownloadInfoRequestValid = Message<\"accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest\"> & {\n /**\n * The ID of the app edit to get download info for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppEditDownloadInfoRequest.\n * Use `create(GetAppEditDownloadInfoRequestSchema)` to create a new message.\n */\nexport const GetAppEditDownloadInfoRequestSchema: GenMessage<GetAppEditDownloadInfoRequest, {validType: GetAppEditDownloadInfoRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_edit_download_info_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_edit_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_edit_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_edit_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9lZGl0X3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIwChFHZXRBcHBFZGl0UmVxdWVzdBIbCgthcHBfZWRpdF9pZBgBIAEoCUIGukgDyAEBQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditRequest\n */\nexport type GetAppEditRequest = Message<\"accrescent.console.v1alpha1.GetAppEditRequest\"> & {\n /**\n * The ID of the app edit to retrieve.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Request defining parameters for getting an app edit.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppEditRequest\n */\nexport type GetAppEditRequestValid = Message<\"accrescent.console.v1alpha1.GetAppEditRequest\"> & {\n /**\n * The ID of the app edit to retrieve.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppEditRequest.\n * Use `create(GetAppEditRequestSchema)` to create a new message.\n */\nexport const GetAppEditRequestSchema: GenMessage<GetAppEditRequest, {validType: GetAppEditRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_edit_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_app_edits_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_app_edits_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_app_edits_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBfZWRpdHNfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIosBChNMaXN0QXBwRWRpdHNSZXF1ZXN0EhsKBmFwcF9pZBgBIAEoCUIGukgDyAEBSACIAQESFgoJcGFnZV9zaXplGAIgASgNSAGIAQESFwoKcGFnZV90b2tlbhgDIAEoCUgCiAEBQgkKB19hcHBfaWRCDAoKX3BhZ2Vfc2l6ZUINCgtfcGFnZV90b2tlbkJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for listing app edits.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppEditsRequest\n */\nexport type ListAppEditsRequest = Message<\"accrescent.console.v1alpha1.ListAppEditsRequest\"> & {\n /**\n * The app containing the edits to list.\n *\n * @generated from field: optional string app_id = 1;\n */\n appId?: string;\n\n /**\n * The maximum number of app edits to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListAppEditsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Request defining parameters for listing app edits.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppEditsRequest\n */\nexport type ListAppEditsRequestValid = Message<\"accrescent.console.v1alpha1.ListAppEditsRequest\"> & {\n /**\n * The app containing the edits to list.\n *\n * @generated from field: optional string app_id = 1;\n */\n appId: string;\n\n /**\n * The maximum number of app edits to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListAppEditsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppEditsRequest.\n * Use `create(ListAppEditsRequestSchema)` to create a new message.\n */\nexport const ListAppEditsRequestSchema: GenMessage<ListAppEditsRequest, {validType: ListAppEditsRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_app_edits_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_edit_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { CreateAppEditListingIconUploadOperationRequestSchema } from \"./create_app_edit_listing_icon_upload_operation_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_request } from \"./create_app_edit_listing_icon_upload_operation_request_pb\";\nimport type { CreateAppEditListingIconUploadOperationResponseSchema } from \"./create_app_edit_listing_icon_upload_operation_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_response } from \"./create_app_edit_listing_icon_upload_operation_response_pb\";\nimport type { CreateAppEditListingRequestSchema } from \"./create_app_edit_listing_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_listing_request } from \"./create_app_edit_listing_request_pb\";\nimport type { CreateAppEditListingResponseSchema } from \"./create_app_edit_listing_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_listing_response } from \"./create_app_edit_listing_response_pb\";\nimport type { CreateAppEditRequestSchema } from \"./create_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_request } from \"./create_app_edit_request_pb\";\nimport type { CreateAppEditResponseSchema } from \"./create_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_response } from \"./create_app_edit_response_pb\";\nimport type { CreateAppEditUploadOperationRequestSchema } from \"./create_app_edit_upload_operation_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_upload_operation_request } from \"./create_app_edit_upload_operation_request_pb\";\nimport type { CreateAppEditUploadOperationResponseSchema } from \"./create_app_edit_upload_operation_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_upload_operation_response } from \"./create_app_edit_upload_operation_response_pb\";\nimport type { DeleteAppEditListingRequestSchema } from \"./delete_app_edit_listing_request_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_edit_listing_request } from \"./delete_app_edit_listing_request_pb\";\nimport type { DeleteAppEditListingResponseSchema } from \"./delete_app_edit_listing_response_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_edit_listing_response } from \"./delete_app_edit_listing_response_pb\";\nimport type { DeleteAppEditRequestSchema } from \"./delete_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_edit_request } from \"./delete_app_edit_request_pb\";\nimport type { DeleteAppEditResponseSchema } from \"./delete_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_delete_app_edit_response } from \"./delete_app_edit_response_pb\";\nimport type { GetAppEditDownloadInfoRequestSchema } from \"./get_app_edit_download_info_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_edit_download_info_request } from \"./get_app_edit_download_info_request_pb\";\nimport type { GetAppEditDownloadInfoResponseSchema } from \"./get_app_edit_download_info_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_edit_download_info_response } from \"./get_app_edit_download_info_response_pb\";\nimport type { GetAppEditRequestSchema } from \"./get_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_edit_request } from \"./get_app_edit_request_pb\";\nimport type { GetAppEditResponseSchema } from \"./get_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_edit_response } from \"./get_app_edit_response_pb\";\nimport type { ListAppEditsRequestSchema } from \"./list_app_edits_request_pb\";\nimport { file_accrescent_console_v1alpha1_list_app_edits_request } from \"./list_app_edits_request_pb\";\nimport type { ListAppEditsResponseSchema } from \"./list_app_edits_response_pb\";\nimport { file_accrescent_console_v1alpha1_list_app_edits_response } from \"./list_app_edits_response_pb\";\nimport type { SubmitAppEditRequestSchema } from \"./submit_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_submit_app_edit_request } from \"./submit_app_edit_request_pb\";\nimport type { SubmitAppEditResponseSchema } from \"./submit_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_submit_app_edit_response } from \"./submit_app_edit_response_pb\";\nimport type { UpdateAppEditRequestSchema } from \"./update_app_edit_request_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_edit_request } from \"./update_app_edit_request_pb\";\nimport type { UpdateAppEditResponseSchema } from \"./update_app_edit_response_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_edit_response } from \"./update_app_edit_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_edit_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_edit_service: GenFile = /*@__PURE__*/\n fileDesc(\"CjJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX2VkaXRfc2VydmljZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExMs8SCg5BcHBFZGl0U2VydmljZRK4AQoNQ3JlYXRlQXBwRWRpdBIxLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0UmVxdWVzdBoyLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0UmVzcG9uc2UiQILT5JMCOjoBKiI1L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcHMve2FwcF9pZH0vZWRpdHMSsAEKCkdldEFwcEVkaXQSLi5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwRWRpdFJlcXVlc3QaLy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwRWRpdFJlc3BvbnNlIkGC0+STAjsSOS9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZWRpdHMve2FwcF9lZGl0X2lkfRKoAQoMTGlzdEFwcEVkaXRzEjAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkxpc3RBcHBFZGl0c1JlcXVlc3QaMS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuTGlzdEFwcEVkaXRzUmVzcG9uc2UiM4LT5JMCLRIrL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9lZGl0cxL7AQocQ3JlYXRlQXBwRWRpdFVwbG9hZE9wZXJhdGlvbhJALmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0VXBsb2FkT3BlcmF0aW9uUmVxdWVzdBpBLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0VXBsb2FkT3BlcmF0aW9uUmVzcG9uc2UiVoLT5JMCUDoBKiJLL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9lZGl0cy97YXBwX2VkaXRfaWR9L3VwbG9hZF9vcGVyYXRpb25zEuIBChZHZXRBcHBFZGl0RG93bmxvYWRJbmZvEjouYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcEVkaXREb3dubG9hZEluZm9SZXF1ZXN0GjsuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcEVkaXREb3dubG9hZEluZm9SZXNwb25zZSJPgtPkkwJJEkcvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH0vZG93bmxvYWRfaW5mbxK8AQoNVXBkYXRlQXBwRWRpdBIxLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVBcHBFZGl0UmVxdWVzdBoyLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVBcHBFZGl0UmVzcG9uc2UiRILT5JMCPjoBKjI5L2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9lZGl0cy97YXBwX2VkaXRfaWR9EsMBCg1TdWJtaXRBcHBFZGl0EjEuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlN1Ym1pdEFwcEVkaXRSZXF1ZXN0GjIuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlN1Ym1pdEFwcEVkaXRSZXNwb25zZSJLgtPkkwJFOgEqIkAvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH06c3VibWl0ErkBCg1EZWxldGVBcHBFZGl0EjEuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkRlbGV0ZUFwcEVkaXRSZXF1ZXN0GjIuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkRlbGV0ZUFwcEVkaXRSZXNwb25zZSJBgtPkkwI7KjkvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH0S5QEKFENyZWF0ZUFwcEVkaXRMaXN0aW5nEjguYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkNyZWF0ZUFwcEVkaXRMaXN0aW5nUmVxdWVzdBo5LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0TGlzdGluZ1Jlc3BvbnNlIliC0+STAlI6ASoiTS9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBfZWRpdHMve2FwcF9lZGl0X2lkfS9saXN0aW5ncy97bGFuZ3VhZ2V9ErICCidDcmVhdGVBcHBFZGl0TGlzdGluZ0ljb25VcGxvYWRPcGVyYXRpb24SSy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRWRpdExpc3RpbmdJY29uVXBsb2FkT3BlcmF0aW9uUmVxdWVzdBpMLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0TGlzdGluZ0ljb25VcGxvYWRPcGVyYXRpb25SZXNwb25zZSJsgtPkkwJmImQvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH0vbGlzdGluZ3Mve2xhbmd1YWdlfS9pY29uL3VwbG9hZF9vcGVyYXRpb25zEuIBChREZWxldGVBcHBFZGl0TGlzdGluZxI4LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5EZWxldGVBcHBFZGl0TGlzdGluZ1JlcXVlc3QaOS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuRGVsZXRlQXBwRWRpdExpc3RpbmdSZXNwb25zZSJVgtPkkwJPKk0vZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwX2VkaXRzL3thcHBfZWRpdF9pZH0vbGlzdGluZ3Mve2xhbmd1YWdlfUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_request, file_accrescent_console_v1alpha1_create_app_edit_listing_icon_upload_operation_response, file_accrescent_console_v1alpha1_create_app_edit_listing_request, file_accrescent_console_v1alpha1_create_app_edit_listing_response, file_accrescent_console_v1alpha1_create_app_edit_request, file_accrescent_console_v1alpha1_create_app_edit_response, file_accrescent_console_v1alpha1_create_app_edit_upload_operation_request, file_accrescent_console_v1alpha1_create_app_edit_upload_operation_response, file_accrescent_console_v1alpha1_delete_app_edit_listing_request, file_accrescent_console_v1alpha1_delete_app_edit_listing_response, file_accrescent_console_v1alpha1_delete_app_edit_request, file_accrescent_console_v1alpha1_delete_app_edit_response, file_accrescent_console_v1alpha1_get_app_edit_download_info_request, file_accrescent_console_v1alpha1_get_app_edit_download_info_response, file_accrescent_console_v1alpha1_get_app_edit_request, file_accrescent_console_v1alpha1_get_app_edit_response, file_accrescent_console_v1alpha1_list_app_edits_request, file_accrescent_console_v1alpha1_list_app_edits_response, file_accrescent_console_v1alpha1_submit_app_edit_request, file_accrescent_console_v1alpha1_submit_app_edit_response, file_accrescent_console_v1alpha1_update_app_edit_request, file_accrescent_console_v1alpha1_update_app_edit_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing app edits.\n *\n * @generated from service accrescent.console.v1alpha1.AppEditService\n */\nexport const AppEditService: GenService<{\n /**\n * Creates a new app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEdit\n */\n createAppEdit: {\n methodKind: \"unary\";\n input: typeof CreateAppEditRequestSchema;\n output: typeof CreateAppEditResponseSchema;\n },\n /**\n * Gets an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEdit\n */\n getAppEdit: {\n methodKind: \"unary\";\n input: typeof GetAppEditRequestSchema;\n output: typeof GetAppEditResponseSchema;\n },\n /**\n * Lists app edits.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.ListAppEdits\n */\n listAppEdits: {\n methodKind: \"unary\";\n input: typeof ListAppEditsRequestSchema;\n output: typeof ListAppEditsResponseSchema;\n },\n /**\n * Creates an app edit upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditUploadOperation\n */\n createAppEditUploadOperation: {\n methodKind: \"unary\";\n input: typeof CreateAppEditUploadOperationRequestSchema;\n output: typeof CreateAppEditUploadOperationResponseSchema;\n },\n /**\n * Gets an app edit's download info.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.GetAppEditDownloadInfo\n */\n getAppEditDownloadInfo: {\n methodKind: \"unary\";\n input: typeof GetAppEditDownloadInfoRequestSchema;\n output: typeof GetAppEditDownloadInfoResponseSchema;\n },\n /**\n * Updates an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.UpdateAppEdit\n */\n updateAppEdit: {\n methodKind: \"unary\";\n input: typeof UpdateAppEditRequestSchema;\n output: typeof UpdateAppEditResponseSchema;\n },\n /**\n * Submits an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.SubmitAppEdit\n */\n submitAppEdit: {\n methodKind: \"unary\";\n input: typeof SubmitAppEditRequestSchema;\n output: typeof SubmitAppEditResponseSchema;\n },\n /**\n * Deletes an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEdit\n */\n deleteAppEdit: {\n methodKind: \"unary\";\n input: typeof DeleteAppEditRequestSchema;\n output: typeof DeleteAppEditResponseSchema;\n },\n /**\n * Creates a new app listing for an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListing\n */\n createAppEditListing: {\n methodKind: \"unary\";\n input: typeof CreateAppEditListingRequestSchema;\n output: typeof CreateAppEditListingResponseSchema;\n },\n /**\n * Creates an app edit listing icon upload operation.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.CreateAppEditListingIconUploadOperation\n */\n createAppEditListingIconUploadOperation: {\n methodKind: \"unary\";\n input: typeof CreateAppEditListingIconUploadOperationRequestSchema;\n output: typeof CreateAppEditListingIconUploadOperationResponseSchema;\n },\n /**\n * Deletes an existing app edit listing.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppEditService.DeleteAppEditListing\n */\n deleteAppEditListing: {\n methodKind: \"unary\";\n input: typeof DeleteAppEditListingRequestSchema;\n output: typeof DeleteAppEditListingResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_app_edit_service, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app.proto.\n */\nexport const file_accrescent_console_v1alpha1_app: GenFile = /*@__PURE__*/\n fileDesc(\"CiVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiqwEKA0FwcBIXCgJpZBgBIAEoCUIGukgDyAEBSACIAQESLQoYZGVmYXVsdF9saXN0aW5nX2xhbmd1YWdlGAIgASgJQga6SAPIAQFIAYgBARIkCg9wdWJsaWNseV9saXN0ZWQYAyABKAhCBrpIA8gBAUgCiAEBQgUKA19pZEIbChlfZGVmYXVsdF9saXN0aW5nX2xhbmd1YWdlQhIKEF9wdWJsaWNseV9saXN0ZWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * A published app.\n *\n * @generated from message accrescent.console.v1alpha1.App\n */\nexport type App = Message<\"accrescent.console.v1alpha1.App\"> & {\n /**\n * The app's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The app's default listing language.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage?: string;\n\n /**\n * Whether the app is publicly listed on the store.\n *\n * @generated from field: optional bool publicly_listed = 3;\n */\n publiclyListed?: boolean;\n};\n\n/**\n * A published app.\n *\n * @generated from message accrescent.console.v1alpha1.App\n */\nexport type AppValid = Message<\"accrescent.console.v1alpha1.App\"> & {\n /**\n * The app's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The app's default listing language.\n *\n * @generated from field: optional string default_listing_language = 2;\n */\n defaultListingLanguage: string;\n\n /**\n * Whether the app is publicly listed on the store.\n *\n * @generated from field: optional bool publicly_listed = 3;\n */\n publiclyListed: boolean;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.App.\n * Use `create(AppSchema)` to create a new message.\n */\nexport const AppSchema: GenMessage<App, {validType: AppValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_app, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { App, AppValid } from \"./app_pb\";\nimport { file_accrescent_console_v1alpha1_app } from \"./app_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIkcKDkdldEFwcFJlc3BvbnNlEjUKA2FwcBgBIAEoCzIgLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5BcHBCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_app, file_buf_validate_validate]);\n\n/**\n * Response to getting an app.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppResponse\n */\nexport type GetAppResponse = Message<\"accrescent.console.v1alpha1.GetAppResponse\"> & {\n /**\n * The requested app.\n *\n * @generated from field: accrescent.console.v1alpha1.App app = 1;\n */\n app?: App;\n};\n\n/**\n * Response to getting an app.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppResponse\n */\nexport type GetAppResponseValid = Message<\"accrescent.console.v1alpha1.GetAppResponse\"> & {\n /**\n * The requested app.\n *\n * @generated from field: accrescent.console.v1alpha1.App app = 1;\n */\n app: AppValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppResponse.\n * Use `create(GetAppResponseSchema)` to create a new message.\n */\nexport const GetAppResponseSchema: GenMessage<GetAppResponse, {validType: GetAppResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_apps_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { App, AppValid } from \"./app_pb\";\nimport { file_accrescent_console_v1alpha1_app } from \"./app_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_apps_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_apps_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjRhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBzX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiygEKEExpc3RBcHBzUmVzcG9uc2USgwEKBGFwcHMYASADKAsyIC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQXBwQlO6SFC6AU0KFGFwcHMuaGF2ZV91bmlxdWVfaWRzEhlhcHBzIG11c3QgaGF2ZSB1bmlxdWUgSURzGhp0aGlzLm1hcChhLCBhLmlkKS51bmlxdWUoKRIcCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAlIAIgBAUISChBfbmV4dF9wYWdlX3Rva2VuQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_accrescent_console_v1alpha1_app, file_buf_validate_validate]);\n\n/**\n * Response to listing published apps.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppsResponse\n */\nexport type ListAppsResponse = Message<\"accrescent.console.v1alpha1.ListAppsResponse\"> & {\n /**\n * The apps matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.App apps = 1;\n */\n apps: App[];\n\n /**\n * An opaque token which, if passed to another invocation of ListApps, will\n * return the next page of organizations.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Response to listing published apps.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppsResponse\n */\nexport type ListAppsResponseValid = Message<\"accrescent.console.v1alpha1.ListAppsResponse\"> & {\n /**\n * The apps matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.App apps = 1;\n */\n apps: AppValid[];\n\n /**\n * An opaque token which, if passed to another invocation of ListApps, will\n * return the next page of organizations.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppsResponse.\n * Use `create(ListAppsResponseSchema)` to create a new message.\n */\nexport const ListAppsResponseSchema: GenMessage<ListAppsResponse, {validType: ListAppsResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_apps_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { FieldMask } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_field_mask } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjRhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEisQEKEFVwZGF0ZUFwcFJlcXVlc3QSFgoGYXBwX2lkGAEgASgJQga6SAPIAQESJAoPcHVibGljbHlfbGlzdGVkGAIgASgIQga6SAPIAQFIAIgBARJLCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCGrpIF8gBAeIBERIPcHVibGljbHlfbGlzdGVkQhIKEF9wdWJsaWNseV9saXN0ZWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate, file_google_protobuf_field_mask]);\n\n/**\n * Request defining parameters for updating a published app.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppRequest\n */\nexport type UpdateAppRequest = Message<\"accrescent.console.v1alpha1.UpdateAppRequest\"> & {\n /**\n * The ID of the app to update.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n\n /**\n * Whether the app is publicly listed on the store.\n *\n * @generated from field: optional bool publicly_listed = 2;\n */\n publiclyListed?: boolean;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask?: FieldMask;\n};\n\n/**\n * Request defining parameters for updating a published app.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppRequest\n */\nexport type UpdateAppRequestValid = Message<\"accrescent.console.v1alpha1.UpdateAppRequest\"> & {\n /**\n * The ID of the app to update.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n\n /**\n * Whether the app is publicly listed on the store.\n *\n * @generated from field: optional bool publicly_listed = 2;\n */\n publiclyListed: boolean;\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask: FieldMask;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppRequest.\n * Use `create(UpdateAppRequestSchema)` to create a new message.\n */\nexport const UpdateAppRequestSchema: GenMessage<UpdateAppRequest, {validType: UpdateAppRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_app_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_app_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_app_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX2FwcF9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhMKEVVwZGF0ZUFwcFJlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to updating a published app.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateAppResponse\n */\nexport type UpdateAppResponse = Message<\"accrescent.console.v1alpha1.UpdateAppResponse\"> & {\n};\n\nexport type UpdateAppResponseValid = UpdateAppResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateAppResponse.\n * Use `create(UpdateAppResponseSchema)` to create a new message.\n */\nexport const UpdateAppResponseSchema: GenMessage<UpdateAppResponse, {validType: UpdateAppResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_app_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.4.1 with parameter \"target=ts,valid_responses=true\"\n// @generated from file accrescent/console/v1alpha1/app_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { GetAppRequest } from \"./get_app_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { GetAppResponseValid } from \"./get_app_response_pb\";\nimport { GetAppResponseSchema } from \"./get_app_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { ListAppsRequest } from \"./list_apps_request_pb\";\nimport type { ListAppsResponseValid } from \"./list_apps_response_pb\";\nimport { ListAppsResponseSchema } from \"./list_apps_response_pb\";\nimport type { UpdateAppRequest } from \"./update_app_request_pb\";\nimport { UpdateAppRequestSchema } from \"./update_app_request_pb\";\nimport type { UpdateAppResponseValid } from \"./update_app_response_pb\";\nimport { UpdateAppResponseSchema } from \"./update_app_response_pb\";\n\nexport const NG_APP_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_APP_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing published apps.\n *\n * @generated from service accrescent.console.v1alpha1.AppService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgAppService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_APP_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Gets a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.GetApp\n */\n getApp(request: GetAppRequest): Observable<GetAppResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/apps/${request.appId}`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetAppResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as GetAppResponseValid),\n );\n }\n\n /**\n * Lists published apps.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.ListApps\n */\n listApps(request: ListAppsRequest): Observable<ListAppsResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/apps`;\n const params: Record<string, string | number | boolean> = {};\n if (request.organizationId !== undefined) params[\"organizationId\"] = request.organizationId;\n if (request.pageSize !== undefined) params[\"pageSize\"] = request.pageSize;\n if (request.pageToken !== undefined) params[\"pageToken\"] = request.pageToken;\n\n return this.httpClient.get(url, { params }).pipe(\n map((response) => fromJson(\n ListAppsResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as ListAppsResponseValid),\n );\n }\n\n /**\n * Updates a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.UpdateApp\n */\n updateApp(request: UpdateAppRequest): Observable<UpdateAppResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/apps/${request.appId}`;\n const json = toJson(UpdateAppRequestSchema, request);\n const { appId: _appId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.patch(url, body).pipe(\n map((response) => fromJson(\n UpdateAppResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as UpdateAppResponseValid),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_app_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_app_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_app_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X2FwcF9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiJwoNR2V0QXBwUmVxdWVzdBIWCgZhcHBfaWQYASABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting a published app.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppRequest\n */\nexport type GetAppRequest = Message<\"accrescent.console.v1alpha1.GetAppRequest\"> & {\n /**\n * The ID of the app to retrieve.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n};\n\n/**\n * Request defining parameters for getting a published app.\n *\n * @generated from message accrescent.console.v1alpha1.GetAppRequest\n */\nexport type GetAppRequestValid = Message<\"accrescent.console.v1alpha1.GetAppRequest\"> & {\n /**\n * The ID of the app to retrieve.\n *\n * @generated from field: string app_id = 1;\n */\n appId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetAppRequest.\n * Use `create(GetAppRequestSchema)` to create a new message.\n */\nexport const GetAppRequestSchema: GenMessage<GetAppRequest, {validType: GetAppRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_app_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_apps_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_apps_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_apps_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9hcHBzX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSKZAQoPTGlzdEFwcHNSZXF1ZXN0EiQKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIGukgDyAEBSACIAQESFgoJcGFnZV9zaXplGAIgASgNSAGIAQESFwoKcGFnZV90b2tlbhgDIAEoCUgCiAEBQhIKEF9vcmdhbml6YXRpb25faWRCDAoKX3BhZ2Vfc2l6ZUINCgtfcGFnZV90b2tlbkJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for listing published apps.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppsRequest\n */\nexport type ListAppsRequest = Message<\"accrescent.console.v1alpha1.ListAppsRequest\"> & {\n /**\n * The organization containing the apps to list.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId?: string;\n\n /**\n * The maximum number of apps to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous ListAppsResponse.\n * If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Request defining parameters for listing published apps.\n *\n * @generated from message accrescent.console.v1alpha1.ListAppsRequest\n */\nexport type ListAppsRequestValid = Message<\"accrescent.console.v1alpha1.ListAppsRequest\"> & {\n /**\n * The organization containing the apps to list.\n *\n * @generated from field: optional string organization_id = 1;\n */\n organizationId: string;\n\n /**\n * The maximum number of apps to return in the response. If unspecified,\n * defaults to 50. All requests with a higher page size will be capped to 50.\n *\n * @generated from field: optional uint32 page_size = 2;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous ListAppsResponse.\n * If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 3;\n */\n pageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListAppsRequest.\n * Use `create(ListAppsRequestSchema)` to create a new message.\n */\nexport const ListAppsRequestSchema: GenMessage<ListAppsRequest, {validType: ListAppsRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_apps_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/app_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { GetAppRequestSchema } from \"./get_app_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_request } from \"./get_app_request_pb\";\nimport type { GetAppResponseSchema } from \"./get_app_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_app_response } from \"./get_app_response_pb\";\nimport type { ListAppsRequestSchema } from \"./list_apps_request_pb\";\nimport { file_accrescent_console_v1alpha1_list_apps_request } from \"./list_apps_request_pb\";\nimport type { ListAppsResponseSchema } from \"./list_apps_response_pb\";\nimport { file_accrescent_console_v1alpha1_list_apps_response } from \"./list_apps_response_pb\";\nimport type { UpdateAppRequestSchema } from \"./update_app_request_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_request } from \"./update_app_request_pb\";\nimport type { UpdateAppResponseSchema } from \"./update_app_response_pb\";\nimport { file_accrescent_console_v1alpha1_update_app_response } from \"./update_app_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/app_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_app_service: GenFile = /*@__PURE__*/\n fileDesc(\"Ci1hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvYXBwX3NlcnZpY2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMTLsAwoKQXBwU2VydmljZRKaAQoGR2V0QXBwEiouYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldEFwcFJlcXVlc3QaKy5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0QXBwUmVzcG9uc2UiN4LT5JMCMRIvL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcHMve2FwcF9pZH0SlwEKCExpc3RBcHBzEiwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkxpc3RBcHBzUmVxdWVzdBotLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5MaXN0QXBwc1Jlc3BvbnNlIi6C0+STAigSJi9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9hcHBzEqYBCglVcGRhdGVBcHASLS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuVXBkYXRlQXBwUmVxdWVzdBouLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVBcHBSZXNwb25zZSI6gtPkkwI0OgEqMi8vZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvYXBwcy97YXBwX2lkfUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_get_app_request, file_accrescent_console_v1alpha1_get_app_response, file_accrescent_console_v1alpha1_list_apps_request, file_accrescent_console_v1alpha1_list_apps_response, file_accrescent_console_v1alpha1_update_app_request, file_accrescent_console_v1alpha1_update_app_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing published apps.\n *\n * @generated from service accrescent.console.v1alpha1.AppService\n */\nexport const AppService: GenService<{\n /**\n * Gets a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.GetApp\n */\n getApp: {\n methodKind: \"unary\";\n input: typeof GetAppRequestSchema;\n output: typeof GetAppResponseSchema;\n },\n /**\n * Lists published apps.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.ListApps\n */\n listApps: {\n methodKind: \"unary\";\n input: typeof ListAppsRequestSchema;\n output: typeof ListAppsResponseSchema;\n },\n /**\n * Updates a published app.\n *\n * @generated from rpc accrescent.console.v1alpha1.AppService.UpdateApp\n */\n updateApp: {\n methodKind: \"unary\";\n input: typeof UpdateAppRequestSchema;\n output: typeof UpdateAppResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_app_service, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/rejection_reason.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/rejection_reason.proto.\n */\nexport const file_accrescent_console_v1alpha1_rejection_reason: GenFile = /*@__PURE__*/\n fileDesc(\"CjJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcmVqZWN0aW9uX3JlYXNvbi5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIjkKD1JlamVjdGlvblJlYXNvbhIbCgZyZWFzb24YASABKAlCBrpIA8gBAUgAiAEBQgkKB19yZWFzb25CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_buf_validate_validate]);\n\n/**\n * A reason for rejecting the item in review.\n *\n * @generated from message accrescent.console.v1alpha1.RejectionReason\n */\nexport type RejectionReason = Message<\"accrescent.console.v1alpha1.RejectionReason\"> & {\n /**\n * The English explanation of the rejection reason.\n *\n * @generated from field: optional string reason = 1;\n */\n reason?: string;\n};\n\n/**\n * A reason for rejecting the item in review.\n *\n * @generated from message accrescent.console.v1alpha1.RejectionReason\n */\nexport type RejectionReasonValid = Message<\"accrescent.console.v1alpha1.RejectionReason\"> & {\n /**\n * The English explanation of the rejection reason.\n *\n * @generated from field: optional string reason = 1;\n */\n reason: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.RejectionReason.\n * Use `create(RejectionReasonSchema)` to create a new message.\n */\nexport const RejectionReasonSchema: GenMessage<RejectionReason, {validType: RejectionReasonValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_rejection_reason, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_review_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { RejectionReason, RejectionReasonValid } from \"./rejection_reason_pb\";\nimport { file_accrescent_console_v1alpha1_rejection_reason } from \"./rejection_reason_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_review_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_review_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9yZXZpZXdfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIoIDChtDcmVhdGVBcHBEcmFmdFJldmlld1JlcXVlc3QSHAoMYXBwX2RyYWZ0X2lkGAEgASgJQga6SAPIAQESHQoIYXBwcm92ZWQYAiABKAhCBrpIA8gBAUgAiAEBEkcKEXJlamVjdGlvbl9yZWFzb25zGAMgAygLMiwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlJlamVjdGlvblJlYXNvbjrPAbpIywEayAEKJnJlamVjdGlvbl9yZWFzb25zLnByZXNlbnRfaWZmX3JlamVjdGVkEkZyZWplY3Rpb24gcmVhc29ucyBtdXN0IGJlIHByZXNlbnQgaWYgYW5kIG9ubHkgaWYgcmV2aWV3IGlzIGEgcmVqZWN0aW9uGlZ0aGlzLmFwcHJvdmVkID8gdGhpcy5yZWplY3Rpb25fcmVhc29ucy5zaXplKCkgPT0gMCA6IHRoaXMucmVqZWN0aW9uX3JlYXNvbnMuc2l6ZSgpID4gMEILCglfYXBwcm92ZWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_rejection_reason, file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app draft review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftReviewRequest\n */\nexport type CreateAppDraftReviewRequest = Message<\"accrescent.console.v1alpha1.CreateAppDraftReviewRequest\"> & {\n /**\n * The ID of the app draft to create a review for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * Whether the app draft should be approved. If false, it is rejected.\n *\n * @generated from field: optional bool approved = 2;\n */\n approved?: boolean;\n\n /**\n * The list of reasons for rejection if the review is a rejection.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.RejectionReason rejection_reasons = 3;\n */\n rejectionReasons: RejectionReason[];\n};\n\n/**\n * Request defining parameters for creating an app draft review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftReviewRequest\n */\nexport type CreateAppDraftReviewRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppDraftReviewRequest\"> & {\n /**\n * The ID of the app draft to create a review for.\n *\n * @generated from field: string app_draft_id = 1;\n */\n appDraftId: string;\n\n /**\n * Whether the app draft should be approved. If false, it is rejected.\n *\n * @generated from field: optional bool approved = 2;\n */\n approved: boolean;\n\n /**\n * The list of reasons for rejection if the review is a rejection.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.RejectionReason rejection_reasons = 3;\n */\n rejectionReasons: RejectionReasonValid[];\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftReviewRequest.\n * Use `create(CreateAppDraftReviewRequestSchema)` to create a new message.\n */\nexport const CreateAppDraftReviewRequestSchema: GenMessage<CreateAppDraftReviewRequest, {validType: CreateAppDraftReviewRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_review_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_draft_review_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_draft_review_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_draft_review_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9kcmFmdF9yZXZpZXdfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIeChxDcmVhdGVBcHBEcmFmdFJldmlld1Jlc3BvbnNlQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Response to creating an app draft review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppDraftReviewResponse\n */\nexport type CreateAppDraftReviewResponse = Message<\"accrescent.console.v1alpha1.CreateAppDraftReviewResponse\"> & {\n};\n\nexport type CreateAppDraftReviewResponseValid = CreateAppDraftReviewResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppDraftReviewResponse.\n * Use `create(CreateAppDraftReviewResponseSchema)` to create a new message.\n */\nexport const CreateAppDraftReviewResponseSchema: GenMessage<CreateAppDraftReviewResponse, {validType: CreateAppDraftReviewResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_draft_review_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_review_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { RejectionReason, RejectionReasonValid } from \"./rejection_reason_pb\";\nimport { file_accrescent_console_v1alpha1_rejection_reason } from \"./rejection_reason_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_review_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_review_request: GenFile = /*@__PURE__*/\n fileDesc(\"CkBhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3Jldmlld19yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEigAMKGkNyZWF0ZUFwcEVkaXRSZXZpZXdSZXF1ZXN0EhsKC2FwcF9lZGl0X2lkGAEgASgJQga6SAPIAQESHQoIYXBwcm92ZWQYAiABKAhCBrpIA8gBAUgAiAEBEkcKEXJlamVjdGlvbl9yZWFzb25zGAMgAygLMiwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlJlamVjdGlvblJlYXNvbjrPAbpIywEayAEKJnJlamVjdGlvbl9yZWFzb25zLnByZXNlbnRfaWZmX3JlamVjdGVkEkZyZWplY3Rpb24gcmVhc29ucyBtdXN0IGJlIHByZXNlbnQgaWYgYW5kIG9ubHkgaWYgcmV2aWV3IGlzIGEgcmVqZWN0aW9uGlZ0aGlzLmFwcHJvdmVkID8gdGhpcy5yZWplY3Rpb25fcmVhc29ucy5zaXplKCkgPT0gMCA6IHRoaXMucmVqZWN0aW9uX3JlYXNvbnMuc2l6ZSgpID4gMEILCglfYXBwcm92ZWRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_rejection_reason, file_buf_validate_validate]);\n\n/**\n * Request defining parameters for creating an app edit review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditReviewRequest\n */\nexport type CreateAppEditReviewRequest = Message<\"accrescent.console.v1alpha1.CreateAppEditReviewRequest\"> & {\n /**\n * The ID of the app edit to create a review for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * Whether the app edit should be approved. If false, it is rejected.\n *\n * @generated from field: optional bool approved = 2;\n */\n approved?: boolean;\n\n /**\n * The list of reasons for rejection if the review is a rejection.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.RejectionReason rejection_reasons = 3;\n */\n rejectionReasons: RejectionReason[];\n};\n\n/**\n * Request defining parameters for creating an app edit review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditReviewRequest\n */\nexport type CreateAppEditReviewRequestValid = Message<\"accrescent.console.v1alpha1.CreateAppEditReviewRequest\"> & {\n /**\n * The ID of the app edit to create a review for.\n *\n * @generated from field: string app_edit_id = 1;\n */\n appEditId: string;\n\n /**\n * Whether the app edit should be approved. If false, it is rejected.\n *\n * @generated from field: optional bool approved = 2;\n */\n approved: boolean;\n\n /**\n * The list of reasons for rejection if the review is a rejection.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.RejectionReason rejection_reasons = 3;\n */\n rejectionReasons: RejectionReasonValid[];\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditReviewRequest.\n * Use `create(CreateAppEditReviewRequestSchema)` to create a new message.\n */\nexport const CreateAppEditReviewRequestSchema: GenMessage<CreateAppEditReviewRequest, {validType: CreateAppEditReviewRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_review_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/create_app_edit_review_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/create_app_edit_review_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_create_app_edit_review_response: GenFile = /*@__PURE__*/\n fileDesc(\"CkFhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvY3JlYXRlX2FwcF9lZGl0X3Jldmlld19yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIh0KG0NyZWF0ZUFwcEVkaXRSZXZpZXdSZXNwb25zZUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\");\n\n/**\n * Response to creating an app edit review.\n *\n * @generated from message accrescent.console.v1alpha1.CreateAppEditReviewResponse\n */\nexport type CreateAppEditReviewResponse = Message<\"accrescent.console.v1alpha1.CreateAppEditReviewResponse\"> & {\n};\n\nexport type CreateAppEditReviewResponseValid = CreateAppEditReviewResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.CreateAppEditReviewResponse.\n * Use `create(CreateAppEditReviewResponseSchema)` to create a new message.\n */\nexport const CreateAppEditReviewResponseSchema: GenMessage<CreateAppEditReviewResponse, {validType: CreateAppEditReviewResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_create_app_edit_review_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/error_reason.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenEnum, GenFile } from \"@bufbuild/protobuf/codegenv2\";\nimport { enumDesc, fileDesc } from \"@bufbuild/protobuf/codegenv2\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/error_reason.proto.\n */\nexport const file_accrescent_console_v1alpha1_error_reason: GenFile = /*@__PURE__*/\n fileDesc(\"Ci5hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZXJyb3JfcmVhc29uLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEqhgkKC0Vycm9yUmVhc29uEhwKGEVSUk9SX1JFQVNPTl9VTlNQRUNJRklFRBAAEiMKH0VSUk9SX1JFQVNPTl9SRVNPVVJDRV9OT1RfRk9VTkQQARIoCiRFUlJPUl9SRUFTT05fUkVTT1VSQ0VfTElNSVRfRVhDRUVERUQQAhIkCiBFUlJPUl9SRUFTT05fUkFURV9MSU1JVF9FWENFRURFRBADEigKJEVSUk9SX1JFQVNPTl9JTlNVRkZJQ0lFTlRfUEVSTUlTU0lPThAEEiAKHEVSUk9SX1JFQVNPTl9JTlZBTElEX1JFUVVFU1QQBRIjCh9FUlJPUl9SRUFTT05fUkVTT1VSQ0VfSU1NVVRBQkxFEAYSJAogRVJST1JfUkVBU09OX1JFU09VUkNFX0lOQ09NUExFVEUQBxIiCh5FUlJPUl9SRUFTT05fQUxSRUFEWV9TVUJNSVRURUQQCBIiCh5FUlJPUl9SRUFTT05fUkVTT1VSQ0VfQ09ORkxJQ1QQCRIlCiFFUlJPUl9SRUFTT05fQVNTSUdORUVfVU5BVkFJTEFCTEUQChIfChtFUlJPUl9SRUFTT05fQUxSRUFEWV9FWElTVFMQCxIfChtFUlJPUl9SRUFTT05fTk9fQ1JFREVOVElBTFMQDBIfChtFUlJPUl9SRUFTT05fTk9UX1JFR0lTVEVSRUQQDRIiCh5FUlJPUl9SRUFTT05fQUxSRUFEWV9QVUJMSVNIRUQQDhIkCiBFUlJPUl9SRUFTT05fUkVTT1VSQ0VfUFVCTElTSElORxAPEiUKIUVSUk9SX1JFQVNPTl9SRVNPVVJDRV9JTlZBTElEQVRFRBAQEiUKIUVSUk9SX1JFQVNPTl9DT05TVFJBSU5UX1ZJT0xBVElPThAREhkKFUVSUk9SX1JFQVNPTl9JTlRFUk5BTBASEh4KGkVSUk9SX1JFQVNPTl9JTlZBTElEX0lNQUdFEBMSKwonRVJST1JfUkVBU09OX0lOQ09SUkVDVF9JTUFHRV9ESU1FTlNJT05TEBQSIAocRVJST1JfUkVBU09OX0lOVkFMSURfUEFDS0FHRRAVEiMKH0VSUk9SX1JFQVNPTl9QQUNLQUdFX0RFQlVHR0FCTEUQFhIfChtFUlJPUl9SRUFTT05fTE9XX1RBUkdFVF9TREsQFxIkCiBFUlJPUl9SRUFTT05fTUlTU0lOR182NF9CSVRfQ09ERRAYEiQKIEVSUk9SX1JFQVNPTl9OT19NT0RFUk5fU0lHTkFUVVJFEBkSHQoZRVJST1JfUkVBU09OX0RFQlVHX1NJR05FUhAaEiEKHUVSUk9SX1JFQVNPTl9NVUxUSVBMRV9TSUdORVJTEBsSGgoWRVJST1JfUkVBU09OX1RFU1RfT05MWRAcEiAKHEVSUk9SX1JFQVNPTl9BUFBfSURfTUlTTUFUQ0gQHRIfChtFUlJPUl9SRUFTT05fTk9UX0FOX1VQR1JBREUQHhImCiJFUlJPUl9SRUFTT05fU0lHTklOR19DRVJUX01JU01BVENIEB9CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * The possible values for `google.rpc.ErrorInfo.reason` in the\n * \"console-api.accrescent.app\" error domain.\n *\n * @generated from enum accrescent.console.v1alpha1.ErrorReason\n */\nexport enum ErrorReason {\n /**\n * The unspecified value.\n *\n * @generated from enum value: ERROR_REASON_UNSPECIFIED = 0;\n */\n UNSPECIFIED = 0,\n\n /**\n * A resource required for the operation could not be found.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_NOT_FOUND = 1;\n */\n RESOURCE_NOT_FOUND = 1,\n\n /**\n * A resource limit would be exceeded by performing the operation.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_LIMIT_EXCEEDED = 2;\n */\n RESOURCE_LIMIT_EXCEEDED = 2,\n\n /**\n * A rate limit would be exceeded by performing the operation.\n *\n * @generated from enum value: ERROR_REASON_RATE_LIMIT_EXCEEDED = 3;\n */\n RATE_LIMIT_EXCEEDED = 3,\n\n /**\n * The caller does not have sufficient permission to perform the operation.\n *\n * @generated from enum value: ERROR_REASON_INSUFFICIENT_PERMISSION = 4;\n */\n INSUFFICIENT_PERMISSION = 4,\n\n /**\n * The provided request data is invalid.\n *\n * @generated from enum value: ERROR_REASON_INVALID_REQUEST = 5;\n */\n INVALID_REQUEST = 5,\n\n /**\n * The resource the operation would modify is immutable.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_IMMUTABLE = 6;\n */\n RESOURCE_IMMUTABLE = 6,\n\n /**\n * The operation cannot occur on the resource because the resource is\n * incomplete.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_INCOMPLETE = 7;\n */\n RESOURCE_INCOMPLETE = 7,\n\n /**\n * The resource to be submitted is already submitted.\n *\n * @generated from enum value: ERROR_REASON_ALREADY_SUBMITTED = 8;\n */\n ALREADY_SUBMITTED = 8,\n\n /**\n * The operation would cause a conflict with another resource.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_CONFLICT = 9;\n */\n RESOURCE_CONFLICT = 9,\n\n /**\n * There is no reviewer or publisher available to assign.\n *\n * @generated from enum value: ERROR_REASON_ASSIGNEE_UNAVAILABLE = 10;\n */\n ASSIGNEE_UNAVAILABLE = 10,\n\n /**\n * A resource with the requested ID already exists.\n *\n * @generated from enum value: ERROR_REASON_ALREADY_EXISTS = 11;\n */\n ALREADY_EXISTS = 11,\n\n /**\n * Authentication credentials were expected, but not provided.\n *\n * @generated from enum value: ERROR_REASON_NO_CREDENTIALS = 12;\n */\n NO_CREDENTIALS = 12,\n\n /**\n * The user has been authenticated via a third party, but has not yet\n * registered an Accrescent account.\n *\n * @generated from enum value: ERROR_REASON_NOT_REGISTERED = 13;\n */\n NOT_REGISTERED = 13,\n\n /**\n * The resource to be published is already published.\n *\n * @generated from enum value: ERROR_REASON_ALREADY_PUBLISHED = 14;\n */\n ALREADY_PUBLISHED = 14,\n\n /**\n * The operation cannot occur because the resource is publishing.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_PUBLISHING = 15;\n */\n RESOURCE_PUBLISHING = 15,\n\n /**\n * The operation cannot occur because the resource has been invalidated.\n *\n * @generated from enum value: ERROR_REASON_RESOURCE_INVALIDATED = 16;\n */\n RESOURCE_INVALIDATED = 16,\n\n /**\n * The operation would cause a data constraint violation.\n *\n * @generated from enum value: ERROR_REASON_CONSTRAINT_VIOLATION = 17;\n */\n CONSTRAINT_VIOLATION = 17,\n\n /**\n * The server encountered an internal error.\n *\n * @generated from enum value: ERROR_REASON_INTERNAL = 18;\n */\n INTERNAL = 18,\n\n /**\n * The uploaded file was not an image in the expected format.\n *\n * @generated from enum value: ERROR_REASON_INVALID_IMAGE = 19;\n */\n INVALID_IMAGE = 19,\n\n /**\n * The uploaded image's dimensions do not meet policy requirements.\n *\n * @generated from enum value: ERROR_REASON_INCORRECT_IMAGE_DIMENSIONS = 20;\n */\n INCORRECT_IMAGE_DIMENSIONS = 20,\n\n /**\n * The uploaded package file is invalid.\n *\n * @generated from enum value: ERROR_REASON_INVALID_PACKAGE = 21;\n */\n INVALID_PACKAGE = 21,\n\n /**\n * The uploaded package is debuggable.\n *\n * @generated from enum value: ERROR_REASON_PACKAGE_DEBUGGABLE = 22;\n */\n PACKAGE_DEBUGGABLE = 22,\n\n /**\n * The uploaded package's target SDK does not meet the minimum policy\n * requirements.\n *\n * @generated from enum value: ERROR_REASON_LOW_TARGET_SDK = 23;\n */\n LOW_TARGET_SDK = 23,\n\n /**\n * The uploaded package has 32-bit code but is missing corresponding 64-bit\n * code.\n *\n * @generated from enum value: ERROR_REASON_MISSING_64_BIT_CODE = 24;\n */\n MISSING_64_BIT_CODE = 24,\n\n /**\n * The uploaded package has not been signed with a modern signature scheme.\n *\n * @generated from enum value: ERROR_REASON_NO_MODERN_SIGNATURE = 25;\n */\n NO_MODERN_SIGNATURE = 25,\n\n /**\n * The uploaded package was signed with the debug signer.\n *\n * @generated from enum value: ERROR_REASON_DEBUG_SIGNER = 26;\n */\n DEBUG_SIGNER = 26,\n\n /**\n * The uploaded package was signed with multiple signers.\n *\n * @generated from enum value: ERROR_REASON_MULTIPLE_SIGNERS = 27;\n */\n MULTIPLE_SIGNERS = 27,\n\n /**\n * The uploaded package is test-only.\n *\n * @generated from enum value: ERROR_REASON_TEST_ONLY = 28;\n */\n TEST_ONLY = 28,\n\n /**\n * The uploaded edit's app ID does not match the app ID of its corresponding\n * published app.\n *\n * @generated from enum value: ERROR_REASON_APP_ID_MISMATCH = 29;\n */\n APP_ID_MISMATCH = 29,\n\n /**\n * The uploaded edit's version code is not more than the version code of its\n * corresponding published app.\n *\n * @generated from enum value: ERROR_REASON_NOT_AN_UPGRADE = 30;\n */\n NOT_AN_UPGRADE = 30,\n\n /**\n * The uploaded edit's signing certificate does not match that of its\n * corresponding published app.\n *\n * @generated from enum value: ERROR_REASON_SIGNING_CERT_MISMATCH = 31;\n */\n SIGNING_CERT_MISMATCH = 31,\n}\n\n/**\n * Describes the enum accrescent.console.v1alpha1.ErrorReason.\n */\nexport const ErrorReasonSchema: GenEnum<ErrorReason> = /*@__PURE__*/\n enumDesc(file_accrescent_console_v1alpha1_error_reason, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_organization_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_organization_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_organization_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X29yZ2FuaXphdGlvbl9yZXF1ZXN0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiOQoWR2V0T3JnYW5pemF0aW9uUmVxdWVzdBIfCg9vcmdhbml6YXRpb25faWQYASABKAlCBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_buf_validate_validate]);\n\n/**\n * Request defining parameters for getting an organization.\n *\n * @generated from message accrescent.console.v1alpha1.GetOrganizationRequest\n */\nexport type GetOrganizationRequest = Message<\"accrescent.console.v1alpha1.GetOrganizationRequest\"> & {\n /**\n * The ID of the organization to retrieve.\n *\n * @generated from field: string organization_id = 1;\n */\n organizationId: string;\n};\n\n/**\n * Request defining parameters for getting an organization.\n *\n * @generated from message accrescent.console.v1alpha1.GetOrganizationRequest\n */\nexport type GetOrganizationRequestValid = Message<\"accrescent.console.v1alpha1.GetOrganizationRequest\"> & {\n /**\n * The ID of the organization to retrieve.\n *\n * @generated from field: string organization_id = 1;\n */\n organizationId: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetOrganizationRequest.\n * Use `create(GetOrganizationRequestSchema)` to create a new message.\n */\nexport const GetOrganizationRequestSchema: GenMessage<GetOrganizationRequest, {validType: GetOrganizationRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_organization_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/organization.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/organization.proto.\n */\nexport const file_accrescent_console_v1alpha1_organization: GenFile = /*@__PURE__*/\n fileDesc(\"Ci5hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvb3JnYW5pemF0aW9uLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiwgIKDE9yZ2FuaXphdGlvbhIXCgJpZBgBIAEoCUIGukgDyAEBSACIAQESKAoTcHVibGlzaGVkX2FwcF9saW1pdBgCIAEoDUIGukgDyAEBSAGIAQESKAoTcHVibGlzaGVkX2FwcF9jb3VudBgDIAEoDUIGukgDyAEBSAKIAQESKwoWYWN0aXZlX2FwcF9kcmFmdF9saW1pdBgEIAEoDUIGukgDyAEBSAOIAQESKwoWYWN0aXZlX2FwcF9kcmFmdF9jb3VudBgFIAEoDUIGukgDyAEBSASIAQFCBQoDX2lkQhYKFF9wdWJsaXNoZWRfYXBwX2xpbWl0QhYKFF9wdWJsaXNoZWRfYXBwX2NvdW50QhkKF19hY3RpdmVfYXBwX2RyYWZ0X2xpbWl0QhkKF19hY3RpdmVfYXBwX2RyYWZ0X2NvdW50QmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_buf_validate_validate]);\n\n/**\n * An organization of users.\n *\n * @generated from message accrescent.console.v1alpha1.Organization\n */\nexport type Organization = Message<\"accrescent.console.v1alpha1.Organization\"> & {\n /**\n * The organization's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The maximum number of published apps allowed to exist under this organization.\n *\n * @generated from field: optional uint32 published_app_limit = 2;\n */\n publishedAppLimit?: number;\n\n /**\n * The current number of published apps in this organization.\n *\n * @generated from field: optional uint32 published_app_count = 3;\n */\n publishedAppCount?: number;\n\n /**\n * The maximum number of active app drafts allowed to exist under this organization.\n *\n * @generated from field: optional uint32 active_app_draft_limit = 4;\n */\n activeAppDraftLimit?: number;\n\n /**\n * The current number of active app drafts in this organization.\n *\n * @generated from field: optional uint32 active_app_draft_count = 5;\n */\n activeAppDraftCount?: number;\n};\n\n/**\n * An organization of users.\n *\n * @generated from message accrescent.console.v1alpha1.Organization\n */\nexport type OrganizationValid = Message<\"accrescent.console.v1alpha1.Organization\"> & {\n /**\n * The organization's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The maximum number of published apps allowed to exist under this organization.\n *\n * @generated from field: optional uint32 published_app_limit = 2;\n */\n publishedAppLimit: number;\n\n /**\n * The current number of published apps in this organization.\n *\n * @generated from field: optional uint32 published_app_count = 3;\n */\n publishedAppCount: number;\n\n /**\n * The maximum number of active app drafts allowed to exist under this organization.\n *\n * @generated from field: optional uint32 active_app_draft_limit = 4;\n */\n activeAppDraftLimit: number;\n\n /**\n * The current number of active app drafts in this organization.\n *\n * @generated from field: optional uint32 active_app_draft_count = 5;\n */\n activeAppDraftCount: number;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.Organization.\n * Use `create(OrganizationSchema)` to create a new message.\n */\nexport const OrganizationSchema: GenMessage<Organization, {validType: OrganizationValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_organization, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_organization_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Organization, OrganizationValid } from \"./organization_pb\";\nimport { file_accrescent_console_v1alpha1_organization } from \"./organization_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_organization_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_organization_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjthY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X29yZ2FuaXphdGlvbl9yZXNwb25zZS5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExImIKF0dldE9yZ2FuaXphdGlvblJlc3BvbnNlEkcKDG9yZ2FuaXphdGlvbhgBIAEoCzIpLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5Pcmdhbml6YXRpb25CBrpIA8gBAUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_organization, file_buf_validate_validate]);\n\n/**\n * Response to getting an organization.\n *\n * @generated from message accrescent.console.v1alpha1.GetOrganizationResponse\n */\nexport type GetOrganizationResponse = Message<\"accrescent.console.v1alpha1.GetOrganizationResponse\"> & {\n /**\n * The requested organization.\n *\n * @generated from field: accrescent.console.v1alpha1.Organization organization = 1;\n */\n organization?: Organization;\n};\n\n/**\n * Response to getting an organization.\n *\n * @generated from message accrescent.console.v1alpha1.GetOrganizationResponse\n */\nexport type GetOrganizationResponseValid = Message<\"accrescent.console.v1alpha1.GetOrganizationResponse\"> & {\n /**\n * The requested organization.\n *\n * @generated from field: accrescent.console.v1alpha1.Organization organization = 1;\n */\n organization: OrganizationValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetOrganizationResponse.\n * Use `create(GetOrganizationResponseSchema)` to create a new message.\n */\nexport const GetOrganizationResponseSchema: GenMessage<GetOrganizationResponse, {validType: GetOrganizationResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_organization_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_self_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_self_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_self_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjJhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X3NlbGZfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhAKDkdldFNlbGZSZXF1ZXN0QmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Request defining parameters for getting the currently authenticated user.\n *\n * @generated from message accrescent.console.v1alpha1.GetSelfRequest\n */\nexport type GetSelfRequest = Message<\"accrescent.console.v1alpha1.GetSelfRequest\"> & {\n};\n\nexport type GetSelfRequestValid = GetSelfRequest;\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetSelfRequest.\n * Use `create(GetSelfRequestSchema)` to create a new message.\n */\nexport const GetSelfRequestSchema: GenMessage<GetSelfRequest, {validType: GetSelfRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_self_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/user_role.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenEnum, GenFile } from \"@bufbuild/protobuf/codegenv2\";\nimport { enumDesc, fileDesc } from \"@bufbuild/protobuf/codegenv2\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/user_role.proto.\n */\nexport const file_accrescent_console_v1alpha1_user_role: GenFile = /*@__PURE__*/\n fileDesc(\"CithY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXNlcl9yb2xlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEqVgoIVXNlclJvbGUSGQoVVVNFUl9ST0xFX1VOU1BFQ0lGSUVEEAASFgoSVVNFUl9ST0xFX1JFVklFV0VSEAESFwoTVVNFUl9ST0xFX1BVQkxJU0hFUhACQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * A user authorization role.\n *\n * @generated from enum accrescent.console.v1alpha1.UserRole\n */\nexport enum UserRole {\n /**\n * The unspecified value.\n *\n * @generated from enum value: USER_ROLE_UNSPECIFIED = 0;\n */\n UNSPECIFIED = 0,\n\n /**\n * An app reviewer.\n *\n * @generated from enum value: USER_ROLE_REVIEWER = 1;\n */\n REVIEWER = 1,\n\n /**\n * An app publisher.\n *\n * @generated from enum value: USER_ROLE_PUBLISHER = 2;\n */\n PUBLISHER = 2,\n}\n\n/**\n * Describes the enum accrescent.console.v1alpha1.UserRole.\n */\nexport const UserRoleSchema: GenEnum<UserRole> = /*@__PURE__*/\n enumDesc(file_accrescent_console_v1alpha1_user_role, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/user.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { UserRole } from \"./user_role_pb\";\nimport { file_accrescent_console_v1alpha1_user_role } from \"./user_role_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/user.proto.\n */\nexport const file_accrescent_console_v1alpha1_user: GenFile = /*@__PURE__*/\n fileDesc(\"CiZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXNlci5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIpcBCgRVc2VyEhcKAmlkGAEgASgJQga6SAPIAQFIAIgBARIeCgVlbWFpbBgCIAEoCUIKukgHyAEBcgJgAUgBiAEBEkUKBXJvbGVzGAMgAygOMiUuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLlVzZXJSb2xlQg+6SAySAQkYASIFggECIABCBQoDX2lkQggKBl9lbWFpbEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_user_role, file_buf_validate_validate]);\n\n/**\n * A console user.\n *\n * @generated from message accrescent.console.v1alpha1.User\n */\nexport type User = Message<\"accrescent.console.v1alpha1.User\"> & {\n /**\n * The user's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id?: string;\n\n /**\n * The user's email.\n *\n * @generated from field: optional string email = 2;\n */\n email?: string;\n\n /**\n * The user's roles.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.UserRole roles = 3;\n */\n roles: UserRole[];\n};\n\n/**\n * A console user.\n *\n * @generated from message accrescent.console.v1alpha1.User\n */\nexport type UserValid = Message<\"accrescent.console.v1alpha1.User\"> & {\n /**\n * The user's unique ID.\n *\n * @generated from field: optional string id = 1;\n */\n id: string;\n\n /**\n * The user's email.\n *\n * @generated from field: optional string email = 2;\n */\n email: string;\n\n /**\n * The user's roles.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.UserRole roles = 3;\n */\n roles: UserRole[];\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.User.\n * Use `create(UserSchema)` to create a new message.\n */\nexport const UserSchema: GenMessage<User, {validType: UserValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_user, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/get_self_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { User, UserValid } from \"./user_pb\";\nimport { file_accrescent_console_v1alpha1_user } from \"./user_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/get_self_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_get_self_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjNhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvZ2V0X3NlbGZfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJKCg9HZXRTZWxmUmVzcG9uc2USNwoEdXNlchgBIAEoCzIhLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5Vc2VyQga6SAPIAQFCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_user, file_buf_validate_validate]);\n\n/**\n * Response to getting the currently authenticated user.\n *\n * @generated from message accrescent.console.v1alpha1.GetSelfResponse\n */\nexport type GetSelfResponse = Message<\"accrescent.console.v1alpha1.GetSelfResponse\"> & {\n /**\n * The currently authenticated user.\n *\n * @generated from field: accrescent.console.v1alpha1.User user = 1;\n */\n user?: User;\n};\n\n/**\n * Response to getting the currently authenticated user.\n *\n * @generated from message accrescent.console.v1alpha1.GetSelfResponse\n */\nexport type GetSelfResponseValid = Message<\"accrescent.console.v1alpha1.GetSelfResponse\"> & {\n /**\n * The currently authenticated user.\n *\n * @generated from field: accrescent.console.v1alpha1.User user = 1;\n */\n user: UserValid;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.GetSelfResponse.\n * Use `create(GetSelfResponseSchema)` to create a new message.\n */\nexport const GetSelfResponseSchema: GenMessage<GetSelfResponse, {validType: GetSelfResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_get_self_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_organizations_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_organizations_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_organizations_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjxhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9vcmdhbml6YXRpb25zX3JlcXVlc3QucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSJoChhMaXN0T3JnYW5pemF0aW9uc1JlcXVlc3QSFgoJcGFnZV9zaXplGAEgASgNSACIAQESFwoKcGFnZV90b2tlbhgCIAEoCUgBiAEBQgwKCl9wYWdlX3NpemVCDQoLX3BhZ2VfdG9rZW5CZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Request defining parameters for listing organizations.\n *\n * @generated from message accrescent.console.v1alpha1.ListOrganizationsRequest\n */\nexport type ListOrganizationsRequest = Message<\"accrescent.console.v1alpha1.ListOrganizationsRequest\"> & {\n /**\n * The maximum number of organizations to return in the response. If\n * unspecified, defaults to 50. All requests with a higher page size will be\n * capped to 50.\n *\n * @generated from field: optional uint32 page_size = 1;\n */\n pageSize?: number;\n\n /**\n * An opaque page continuation token returned in a previous\n * ListOrganizationsResponse. If unspecified, the first page is returned.\n *\n * @generated from field: optional string page_token = 2;\n */\n pageToken?: string;\n};\n\nexport type ListOrganizationsRequestValid = ListOrganizationsRequest;\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListOrganizationsRequest.\n * Use `create(ListOrganizationsRequestSchema)` to create a new message.\n */\nexport const ListOrganizationsRequestSchema: GenMessage<ListOrganizationsRequest, {validType: ListOrganizationsRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_organizations_request, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/list_organizations_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Organization, OrganizationValid } from \"./organization_pb\";\nimport { file_accrescent_console_v1alpha1_organization } from \"./organization_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/list_organizations_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_list_organizations_response: GenFile = /*@__PURE__*/\n fileDesc(\"Cj1hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvbGlzdF9vcmdhbml6YXRpb25zX3Jlc3BvbnNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEi9wEKGUxpc3RPcmdhbml6YXRpb25zUmVzcG9uc2USpwEKDW9yZ2FuaXphdGlvbnMYASADKAsyKS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuT3JnYW5pemF0aW9uQmW6SGK6AV8KHW9yZ2FuaXphdGlvbnMuaGF2ZV91bmlxdWVfaWRzEiJvcmdhbml6YXRpb25zIG11c3QgaGF2ZSB1bmlxdWUgSURzGhp0aGlzLm1hcChvLCBvLmlkKS51bmlxdWUoKRIcCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAlIAIgBAUISChBfbmV4dF9wYWdlX3Rva2VuQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_accrescent_console_v1alpha1_organization, file_buf_validate_validate]);\n\n/**\n * Response to listing organizations.\n *\n * @generated from message accrescent.console.v1alpha1.ListOrganizationsResponse\n */\nexport type ListOrganizationsResponse = Message<\"accrescent.console.v1alpha1.ListOrganizationsResponse\"> & {\n /**\n * The organizations matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.Organization organizations = 1;\n */\n organizations: Organization[];\n\n /**\n * An opaque token which, if passed to another invocation of\n * ListOrganizations, will return the next page of organizations.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Response to listing organizations.\n *\n * @generated from message accrescent.console.v1alpha1.ListOrganizationsResponse\n */\nexport type ListOrganizationsResponseValid = Message<\"accrescent.console.v1alpha1.ListOrganizationsResponse\"> & {\n /**\n * The organizations matching the request parameters.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.Organization organizations = 1;\n */\n organizations: OrganizationValid[];\n\n /**\n * An opaque token which, if passed to another invocation of\n * ListOrganizations, will return the next page of organizations.\n *\n * @generated from field: optional string next_page_token = 2;\n */\n nextPageToken?: string;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.ListOrganizationsResponse.\n * Use `create(ListOrganizationsResponseSchema)` to create a new message.\n */\nexport const ListOrganizationsResponseSchema: GenMessage<ListOrganizationsResponse, {validType: ListOrganizationsResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_list_organizations_response, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.4.1 with parameter \"target=ts,valid_responses=true\"\n// @generated from file accrescent/console/v1alpha1/organization_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { GetOrganizationRequest } from \"./get_organization_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { GetOrganizationResponseValid } from \"./get_organization_response_pb\";\nimport { GetOrganizationResponseSchema } from \"./get_organization_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson } from \"@bufbuild/protobuf\";\nimport type { ListOrganizationsRequest } from \"./list_organizations_request_pb\";\nimport type { ListOrganizationsResponseValid } from \"./list_organizations_response_pb\";\nimport { ListOrganizationsResponseSchema } from \"./list_organizations_response_pb\";\n\nexport const NG_ORGANIZATION_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_ORGANIZATION_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing organizations.\n *\n * @generated from service accrescent.console.v1alpha1.OrganizationService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgOrganizationService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_ORGANIZATION_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Gets an organization.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.GetOrganization\n */\n getOrganization(request: GetOrganizationRequest): Observable<GetOrganizationResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/organizations/${request.organizationId}`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetOrganizationResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as GetOrganizationResponseValid),\n );\n }\n\n /**\n * Lists organizations.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.ListOrganizations\n */\n listOrganizations(request: ListOrganizationsRequest): Observable<ListOrganizationsResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/organizations`;\n const params: Record<string, string | number | boolean> = {};\n if (request.pageSize !== undefined) params[\"pageSize\"] = request.pageSize;\n if (request.pageToken !== undefined) params[\"pageToken\"] = request.pageToken;\n\n return this.httpClient.get(url, { params }).pipe(\n map((response) => fromJson(\n ListOrganizationsResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as ListOrganizationsResponseValid),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/organization_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { GetOrganizationRequestSchema } from \"./get_organization_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_organization_request } from \"./get_organization_request_pb\";\nimport type { GetOrganizationResponseSchema } from \"./get_organization_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_organization_response } from \"./get_organization_response_pb\";\nimport type { ListOrganizationsRequestSchema } from \"./list_organizations_request_pb\";\nimport { file_accrescent_console_v1alpha1_list_organizations_request } from \"./list_organizations_request_pb\";\nimport type { ListOrganizationsResponseSchema } from \"./list_organizations_response_pb\";\nimport { file_accrescent_console_v1alpha1_list_organizations_response } from \"./list_organizations_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/organization_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_organization_service: GenFile = /*@__PURE__*/\n fileDesc(\"CjZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvb3JnYW5pemF0aW9uX3NlcnZpY2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMTKdAwoTT3JnYW5pemF0aW9uU2VydmljZRLHAQoPR2V0T3JnYW5pemF0aW9uEjMuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldE9yZ2FuaXphdGlvblJlcXVlc3QaNC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuR2V0T3JnYW5pemF0aW9uUmVzcG9uc2UiSYLT5JMCQxJBL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL29yZ2FuaXphdGlvbnMve29yZ2FuaXphdGlvbl9pZH0SuwEKEUxpc3RPcmdhbml6YXRpb25zEjUuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkxpc3RPcmdhbml6YXRpb25zUmVxdWVzdBo2LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5MaXN0T3JnYW5pemF0aW9uc1Jlc3BvbnNlIjeC0+STAjESLy9ncnBjL2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS9vcmdhbml6YXRpb25zQmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\", [file_accrescent_console_v1alpha1_get_organization_request, file_accrescent_console_v1alpha1_get_organization_response, file_accrescent_console_v1alpha1_list_organizations_request, file_accrescent_console_v1alpha1_list_organizations_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing organizations.\n *\n * @generated from service accrescent.console.v1alpha1.OrganizationService\n */\nexport const OrganizationService: GenService<{\n /**\n * Gets an organization.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.GetOrganization\n */\n getOrganization: {\n methodKind: \"unary\";\n input: typeof GetOrganizationRequestSchema;\n output: typeof GetOrganizationResponseSchema;\n },\n /**\n * Lists organizations.\n *\n * @generated from rpc accrescent.console.v1alpha1.OrganizationService.ListOrganizations\n */\n listOrganizations: {\n methodKind: \"unary\";\n input: typeof ListOrganizationsRequestSchema;\n output: typeof ListOrganizationsResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_organization_service, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/publish_app_draft_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/publish_app_draft_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_publish_app_draft_result: GenFile = /*@__PURE__*/\n fileDesc(\"CjphY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcHVibGlzaF9hcHBfZHJhZnRfcmVzdWx0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiFwoVUHVibGlzaEFwcERyYWZ0UmVzdWx0QmcKH2FwcC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTFQAVpCZ29sYW5nLmFjY3Jlc2NlbnQuYXBwL2dlbnByb3RvL2FjY3Jlc2NlbnQvY29uc29sZS92MWFscGhhMTtjb25zb2xlYgZwcm90bzM\");\n\n/**\n * Result of an app draft publishing operation.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppDraftResult\n */\nexport type PublishAppDraftResult = Message<\"accrescent.console.v1alpha1.PublishAppDraftResult\"> & {\n};\n\nexport type PublishAppDraftResultValid = PublishAppDraftResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.PublishAppDraftResult.\n * Use `create(PublishAppDraftResultSchema)` to create a new message.\n */\nexport const PublishAppDraftResultSchema: GenMessage<PublishAppDraftResult, {validType: PublishAppDraftResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_publish_app_draft_result, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/publish_app_edit_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/publish_app_edit_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_publish_app_edit_result: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcHVibGlzaF9hcHBfZWRpdF9yZXN1bHQucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIWChRQdWJsaXNoQXBwRWRpdFJlc3VsdEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\");\n\n/**\n * Result of an app edit publishing operation.\n *\n * @generated from message accrescent.console.v1alpha1.PublishAppEditResult\n */\nexport type PublishAppEditResult = Message<\"accrescent.console.v1alpha1.PublishAppEditResult\"> & {\n};\n\nexport type PublishAppEditResultValid = PublishAppEditResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.PublishAppEditResult.\n * Use `create(PublishAppEditResultSchema)` to create a new message.\n */\nexport const PublishAppEditResultSchema: GenMessage<PublishAppEditResult, {validType: PublishAppEditResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_publish_app_edit_result, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.4.1 with parameter \"target=ts,valid_responses=true\"\n// @generated from file accrescent/console/v1alpha1/review_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { CreateAppDraftReviewRequest } from \"./create_app_draft_review_request_pb\";\nimport { CreateAppDraftReviewRequestSchema } from \"./create_app_draft_review_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { CreateAppDraftReviewResponseValid } from \"./create_app_draft_review_response_pb\";\nimport { CreateAppDraftReviewResponseSchema } from \"./create_app_draft_review_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { CreateAppEditReviewRequest } from \"./create_app_edit_review_request_pb\";\nimport { CreateAppEditReviewRequestSchema } from \"./create_app_edit_review_request_pb\";\nimport type { CreateAppEditReviewResponseValid } from \"./create_app_edit_review_response_pb\";\nimport { CreateAppEditReviewResponseSchema } from \"./create_app_edit_review_response_pb\";\n\nexport const NG_REVIEW_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_REVIEW_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing reviews on items submitted to the app\n * store\n *\n * @generated from service accrescent.console.v1alpha1.ReviewService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgReviewService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_REVIEW_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Reviews an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppDraftReview\n */\n createAppDraftReview(request: CreateAppDraftReviewRequest): Observable<CreateAppDraftReviewResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_drafts/${request.appDraftId}/reviews`;\n const json = toJson(CreateAppDraftReviewRequestSchema, request);\n const { appDraftId: _appDraftId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppDraftReviewResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppDraftReviewResponseValid),\n );\n }\n\n /**\n * Reviews an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppEditReview\n */\n createAppEditReview(request: CreateAppEditReviewRequest): Observable<CreateAppEditReviewResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/app_edits/${request.appEditId}/reviews`;\n const json = toJson(CreateAppEditReviewRequestSchema, request);\n const { appEditId: _appEditId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.post(url, body).pipe(\n map((response) => fromJson(\n CreateAppEditReviewResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as CreateAppEditReviewResponseValid),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/review_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { CreateAppDraftReviewRequestSchema } from \"./create_app_draft_review_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_review_request } from \"./create_app_draft_review_request_pb\";\nimport type { CreateAppDraftReviewResponseSchema } from \"./create_app_draft_review_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_draft_review_response } from \"./create_app_draft_review_response_pb\";\nimport type { CreateAppEditReviewRequestSchema } from \"./create_app_edit_review_request_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_review_request } from \"./create_app_edit_review_request_pb\";\nimport type { CreateAppEditReviewResponseSchema } from \"./create_app_edit_review_response_pb\";\nimport { file_accrescent_console_v1alpha1_create_app_edit_review_response } from \"./create_app_edit_review_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/review_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_review_service: GenFile = /*@__PURE__*/\n fileDesc(\"CjBhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvcmV2aWV3X3NlcnZpY2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMTLGAwoNUmV2aWV3U2VydmljZRLbAQoUQ3JlYXRlQXBwRHJhZnRSZXZpZXcSOC5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuQ3JlYXRlQXBwRHJhZnRSZXZpZXdSZXF1ZXN0GjkuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkNyZWF0ZUFwcERyYWZ0UmV2aWV3UmVzcG9uc2UiToLT5JMCSDoBKiJDL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9kcmFmdHMve2FwcF9kcmFmdF9pZH0vcmV2aWV3cxLWAQoTQ3JlYXRlQXBwRWRpdFJldmlldxI3LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0UmV2aWV3UmVxdWVzdBo4LmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5DcmVhdGVBcHBFZGl0UmV2aWV3UmVzcG9uc2UiTILT5JMCRjoBKiJBL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL2FwcF9lZGl0cy97YXBwX2VkaXRfaWR9L3Jldmlld3NCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_create_app_draft_review_request, file_accrescent_console_v1alpha1_create_app_draft_review_response, file_accrescent_console_v1alpha1_create_app_edit_review_request, file_accrescent_console_v1alpha1_create_app_edit_review_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing reviews on items submitted to the app\n * store\n *\n * @generated from service accrescent.console.v1alpha1.ReviewService\n */\nexport const ReviewService: GenService<{\n /**\n * Reviews an app draft.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppDraftReview\n */\n createAppDraftReview: {\n methodKind: \"unary\";\n input: typeof CreateAppDraftReviewRequestSchema;\n output: typeof CreateAppDraftReviewResponseSchema;\n },\n /**\n * Reviews an app edit.\n *\n * @generated from rpc accrescent.console.v1alpha1.ReviewService.CreateAppEditReview\n */\n createAppEditReview: {\n methodKind: \"unary\";\n input: typeof CreateAppEditReviewRequestSchema;\n output: typeof CreateAppEditReviewResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_review_service, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_user_request.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { UserRole } from \"./user_role_pb\";\nimport { file_accrescent_console_v1alpha1_user_role } from \"./user_role_pb\";\nimport { file_buf_validate_validate } from \"@accrescent/console-client-sdk-angular/buf/validate\";\nimport type { FieldMask } from \"@bufbuild/protobuf/wkt\";\nimport { file_google_protobuf_field_mask } from \"@bufbuild/protobuf/wkt\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_user_request.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_user_request: GenFile = /*@__PURE__*/\n fileDesc(\"CjVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX3VzZXJfcmVxdWVzdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIrYBChFVcGRhdGVVc2VyUmVxdWVzdBIXCgd1c2VyX2lkGAEgASgJQga6SAPIAQESRQoFcm9sZXMYAiADKA4yJS5hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEuVXNlclJvbGVCD7pIDJIBCRgBIgWCAQIgABJBCgt1cGRhdGVfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCELpIDcgBAeIBBxIFcm9sZXNCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\", [file_accrescent_console_v1alpha1_user_role, file_buf_validate_validate, file_google_protobuf_field_mask]);\n\n/**\n * Request defining parameters for updating a user.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateUserRequest\n */\nexport type UpdateUserRequest = Message<\"accrescent.console.v1alpha1.UpdateUserRequest\"> & {\n /**\n * The ID of the user to update.\n *\n * @generated from field: string user_id = 1;\n */\n userId: string;\n\n /**\n * The user's roles.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.UserRole roles = 2;\n */\n roles: UserRole[];\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask?: FieldMask;\n};\n\n/**\n * Request defining parameters for updating a user.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateUserRequest\n */\nexport type UpdateUserRequestValid = Message<\"accrescent.console.v1alpha1.UpdateUserRequest\"> & {\n /**\n * The ID of the user to update.\n *\n * @generated from field: string user_id = 1;\n */\n userId: string;\n\n /**\n * The user's roles.\n *\n * @generated from field: repeated accrescent.console.v1alpha1.UserRole roles = 2;\n */\n roles: UserRole[];\n\n /**\n * The list of fields to update.\n *\n * Required to enforce forward-compatible use by clients.\n *\n * @generated from field: google.protobuf.FieldMask update_mask = 3;\n */\n updateMask: FieldMask;\n};\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateUserRequest.\n * Use `create(UpdateUserRequestSchema)` to create a new message.\n */\nexport const UpdateUserRequestSchema: GenMessage<UpdateUserRequest, {validType: UpdateUserRequestValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_user_request, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/update_user_response.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/update_user_response.proto.\n */\nexport const file_accrescent_console_v1alpha1_update_user_response: GenFile = /*@__PURE__*/\n fileDesc(\"CjZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBkYXRlX3VzZXJfcmVzcG9uc2UucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIUChJVcGRhdGVVc2VyUmVzcG9uc2VCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Response to updating a user.\n *\n * @generated from message accrescent.console.v1alpha1.UpdateUserResponse\n */\nexport type UpdateUserResponse = Message<\"accrescent.console.v1alpha1.UpdateUserResponse\"> & {\n};\n\nexport type UpdateUserResponseValid = UpdateUserResponse;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UpdateUserResponse.\n * Use `create(UpdateUserResponseSchema)` to create a new message.\n */\nexport const UpdateUserResponseSchema: GenMessage<UpdateUserResponse, {validType: UpdateUserResponseValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_update_user_response, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/upload_app_draft_listing_icon_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/upload_app_draft_listing_icon_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_upload_app_draft_listing_icon_result: GenFile = /*@__PURE__*/\n fileDesc(\"CkZhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBsb2FkX2FwcF9kcmFmdF9saXN0aW5nX2ljb25fcmVzdWx0LnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEiIQofVXBsb2FkQXBwRHJhZnRMaXN0aW5nSWNvblJlc3VsdEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\");\n\n/**\n * Result of an app draft listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.UploadAppDraftListingIconResult\n */\nexport type UploadAppDraftListingIconResult = Message<\"accrescent.console.v1alpha1.UploadAppDraftListingIconResult\"> & {\n};\n\nexport type UploadAppDraftListingIconResultValid = UploadAppDraftListingIconResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UploadAppDraftListingIconResult.\n * Use `create(UploadAppDraftListingIconResultSchema)` to create a new message.\n */\nexport const UploadAppDraftListingIconResultSchema: GenMessage<UploadAppDraftListingIconResult, {validType: UploadAppDraftListingIconResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_upload_app_draft_listing_icon_result, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/upload_app_draft_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/upload_app_draft_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_upload_app_draft_result: GenFile = /*@__PURE__*/\n fileDesc(\"CjlhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBsb2FkX2FwcF9kcmFmdF9yZXN1bHQucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIWChRVcGxvYWRBcHBEcmFmdFJlc3VsdEJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\");\n\n/**\n * Result of an app draft upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.UploadAppDraftResult\n */\nexport type UploadAppDraftResult = Message<\"accrescent.console.v1alpha1.UploadAppDraftResult\"> & {\n};\n\nexport type UploadAppDraftResultValid = UploadAppDraftResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UploadAppDraftResult.\n * Use `create(UploadAppDraftResultSchema)` to create a new message.\n */\nexport const UploadAppDraftResultSchema: GenMessage<UploadAppDraftResult, {validType: UploadAppDraftResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_upload_app_draft_result, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/upload_app_edit_listing_icon_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/upload_app_edit_listing_icon_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_upload_app_edit_listing_icon_result: GenFile = /*@__PURE__*/\n fileDesc(\"CkVhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBsb2FkX2FwcF9lZGl0X2xpc3RpbmdfaWNvbl9yZXN1bHQucHJvdG8SG2FjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMSIgCh5VcGxvYWRBcHBFZGl0TGlzdGluZ0ljb25SZXN1bHRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Result of an app edit listing icon upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.UploadAppEditListingIconResult\n */\nexport type UploadAppEditListingIconResult = Message<\"accrescent.console.v1alpha1.UploadAppEditListingIconResult\"> & {\n};\n\nexport type UploadAppEditListingIconResultValid = UploadAppEditListingIconResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UploadAppEditListingIconResult.\n * Use `create(UploadAppEditListingIconResultSchema)` to create a new message.\n */\nexport const UploadAppEditListingIconResultSchema: GenMessage<UploadAppEditListingIconResult, {validType: UploadAppEditListingIconResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_upload_app_edit_listing_icon_result, 0);\n\n","// SPDX-FileCopyrightText: © 2026 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/upload_app_edit_result.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenMessage } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { Message } from \"@bufbuild/protobuf\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/upload_app_edit_result.proto.\n */\nexport const file_accrescent_console_v1alpha1_upload_app_edit_result: GenFile = /*@__PURE__*/\n fileDesc(\"CjhhY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXBsb2FkX2FwcF9lZGl0X3Jlc3VsdC5wcm90bxIbYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExIhUKE1VwbG9hZEFwcEVkaXRSZXN1bHRCZwofYXBwLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMVABWkJnb2xhbmcuYWNjcmVzY2VudC5hcHAvZ2VucHJvdG8vYWNjcmVzY2VudC9jb25zb2xlL3YxYWxwaGExO2NvbnNvbGViBnByb3RvMw\");\n\n/**\n * Result of an app edit upload operation.\n *\n * @generated from message accrescent.console.v1alpha1.UploadAppEditResult\n */\nexport type UploadAppEditResult = Message<\"accrescent.console.v1alpha1.UploadAppEditResult\"> & {\n};\n\nexport type UploadAppEditResultValid = UploadAppEditResult;\n\n/**\n * Describes the message accrescent.console.v1alpha1.UploadAppEditResult.\n * Use `create(UploadAppEditResultSchema)` to create a new message.\n */\nexport const UploadAppEditResultSchema: GenMessage<UploadAppEditResult, {validType: UploadAppEditResultValid}> = /*@__PURE__*/\n messageDesc(file_accrescent_console_v1alpha1_upload_app_edit_result, 0);\n\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-grpc-angular 0.4.1 with parameter \"target=ts,valid_responses=true\"\n// @generated from file accrescent/console/v1alpha1/user_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport type { GetSelfRequest } from \"./get_self_request_pb\";\nimport { map, Observable } from \"rxjs\";\nimport type { GetSelfResponseValid } from \"./get_self_response_pb\";\nimport { GetSelfResponseSchema } from \"./get_self_response_pb\";\nimport type { JsonValue } from \"@bufbuild/protobuf\";\nimport { fromJson, toJson } from \"@bufbuild/protobuf\";\nimport type { UpdateUserRequest } from \"./update_user_request_pb\";\nimport { UpdateUserRequestSchema } from \"./update_user_request_pb\";\nimport type { UpdateUserResponseValid } from \"./update_user_response_pb\";\nimport { UpdateUserResponseSchema } from \"./update_user_response_pb\";\n\nexport const NG_USER_SERVICE_BASE_URL = new InjectionToken<string>(\"NG_USER_SERVICE_BASE_URL\");\n\n/**\n * Service providing RPCs for managing users.\n *\n * @generated from service accrescent.console.v1alpha1.UserService\n */\n@Injectable({ providedIn: \"root\" })\nexport class NgUserService {\n private readonly httpClient = inject(HttpClient);\n private readonly baseUrl = inject(NG_USER_SERVICE_BASE_URL, { optional: true }) ?? \"\";\n\n /**\n * Gets the user info for the currently authenticated user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.GetSelf\n */\n getSelf(request: GetSelfRequest): Observable<GetSelfResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/user`;\n\n return this.httpClient.get(url).pipe(\n map((response) => fromJson(\n GetSelfResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as GetSelfResponseValid),\n );\n }\n\n /**\n * Updates a user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.UpdateUser\n */\n updateUser(request: UpdateUserRequest): Observable<UpdateUserResponseValid> {\n const url = `${this.baseUrl}/grpc/accrescent.console.v1alpha1/users/${request.userId}`;\n const json = toJson(UpdateUserRequestSchema, request);\n const { userId: _userId, ...body } = json as Record<string, unknown>;\n\n return this.httpClient.patch(url, body).pipe(\n map((response) => fromJson(\n UpdateUserResponseSchema,\n response as JsonValue,\n { ignoreUnknownFields: true },\n ) as UpdateUserResponseValid),\n );\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Logan Magee\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// @generated by protoc-gen-es v2.11.0 with parameter \"target=ts,valid_types=protovalidate_required\"\n// @generated from file accrescent/console/v1alpha1/user_service.proto (package accrescent.console.v1alpha1, syntax proto3)\n/* eslint-disable */\n\nimport type { GenFile, GenService } from \"@bufbuild/protobuf/codegenv2\";\nimport { fileDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport type { GetSelfRequestSchema } from \"./get_self_request_pb\";\nimport { file_accrescent_console_v1alpha1_get_self_request } from \"./get_self_request_pb\";\nimport type { GetSelfResponseSchema } from \"./get_self_response_pb\";\nimport { file_accrescent_console_v1alpha1_get_self_response } from \"./get_self_response_pb\";\nimport type { UpdateUserRequestSchema } from \"./update_user_request_pb\";\nimport { file_accrescent_console_v1alpha1_update_user_request } from \"./update_user_request_pb\";\nimport type { UpdateUserResponseSchema } from \"./update_user_response_pb\";\nimport { file_accrescent_console_v1alpha1_update_user_response } from \"./update_user_response_pb\";\nimport { file_google_api_annotations } from \"@accrescent/console-client-sdk-angular/google/api\";\n\n/**\n * Describes the file accrescent/console/v1alpha1/user_service.proto.\n */\nexport const file_accrescent_console_v1alpha1_user_service: GenFile = /*@__PURE__*/\n fileDesc(\"Ci5hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTEvdXNlcl9zZXJ2aWNlLnByb3RvEhthY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEy0gIKC1VzZXJTZXJ2aWNlEpQBCgdHZXRTZWxmEisuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldFNlbGZSZXF1ZXN0GiwuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExLkdldFNlbGZSZXNwb25zZSIugtPkkwIoEiYvZ3JwYy9hY2NyZXNjZW50LmNvbnNvbGUudjFhbHBoYTEvdXNlchKrAQoKVXBkYXRlVXNlchIuLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVVc2VyUmVxdWVzdBovLmFjY3Jlc2NlbnQuY29uc29sZS52MWFscGhhMS5VcGRhdGVVc2VyUmVzcG9uc2UiPILT5JMCNjoBKjIxL2dycGMvYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExL3VzZXJzL3t1c2VyX2lkfUJnCh9hcHAuYWNjcmVzY2VudC5jb25zb2xlLnYxYWxwaGExUAFaQmdvbGFuZy5hY2NyZXNjZW50LmFwcC9nZW5wcm90by9hY2NyZXNjZW50L2NvbnNvbGUvdjFhbHBoYTE7Y29uc29sZWIGcHJvdG8z\", [file_accrescent_console_v1alpha1_get_self_request, file_accrescent_console_v1alpha1_get_self_response, file_accrescent_console_v1alpha1_update_user_request, file_accrescent_console_v1alpha1_update_user_response, file_google_api_annotations]);\n\n/**\n * Service providing RPCs for managing users.\n *\n * @generated from service accrescent.console.v1alpha1.UserService\n */\nexport const UserService: GenService<{\n /**\n * Gets the user info for the currently authenticated user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.GetSelf\n */\n getSelf: {\n methodKind: \"unary\";\n input: typeof GetSelfRequestSchema;\n output: typeof GetSelfResponseSchema;\n },\n /**\n * Updates a user.\n *\n * @generated from rpc accrescent.console.v1alpha1.UserService.UpdateUser\n */\n updateUser: {\n methodKind: \"unary\";\n input: typeof UpdateUserRequestSchema;\n output: typeof UpdateUserResponseSchema;\n },\n}> = /*@__PURE__*/\n serviceDesc(file_accrescent_console_v1alpha1_user_service, 0);\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|