@tailor-platform/sdk 2.0.0-next.9 → 2.0.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/CHANGELOG.md +611 -0
- package/dist/{application-D_oSqto2.mjs → application-CM6hKnSK.mjs} +489 -118
- package/dist/application-CM6hKnSK.mjs.map +1 -0
- package/dist/application-CXNaUNhv.mjs +3 -0
- package/dist/cli/commands/deploy/aigateway.d.mts +1 -1
- package/dist/cli/commands/deploy/application.d.mts +1 -1
- package/dist/cli/commands/deploy/auth.d.mts +1 -1
- package/dist/cli/commands/deploy/deploy.d.mts +1 -0
- package/dist/cli/commands/deploy/executor.d.mts +1 -1
- package/dist/cli/commands/deploy/function-registry.d.mts +1 -2
- package/dist/cli/commands/deploy/idp.d.mts +1 -1
- package/dist/cli/commands/deploy/label.d.mts +2 -0
- package/dist/cli/commands/deploy/resolver.d.mts +1 -1
- package/dist/cli/commands/deploy/staticwebsite.d.mts +1 -1
- package/dist/cli/commands/deploy/tailordb/index.d.mts +3 -1
- package/dist/cli/commands/deploy/types.d.mts +2 -1
- package/dist/cli/commands/deploy/workflow-execution-policy.d.mts +1 -2
- package/dist/cli/commands/deploy/workflow.d.mts +1 -1
- package/dist/cli/commands/executor/get.d.mts +1 -10
- package/dist/cli/commands/executor/jobs.d.mts +1 -38
- package/dist/cli/commands/executor/trigger.d.mts +1 -11
- package/dist/cli/commands/generate/seed/bundler.d.mts +2 -1
- package/dist/cli/commands/tailordb/migrate/bundler.d.mts +3 -2
- package/dist/cli/commands/tailordb/migrate/diff-calculator.d.mts +11 -1
- package/dist/cli/commands/tailordb/migrate/schema-checks.d.mts +5 -0
- package/dist/cli/commands/tailordb/migrate/snapshot.d.mts +1 -1
- package/dist/cli/commands/workflow/executions.d.mts +1 -13
- package/dist/cli/commands/workflow/get.d.mts +1 -10
- package/dist/cli/commands/workflow/start.d.mts +2 -14
- package/dist/cli/index.mjs +12 -6561
- package/dist/cli/lib.d.mts +9 -12
- package/dist/cli/lib.mjs +99 -42
- package/dist/cli/lib.mjs.map +1 -1
- package/dist/cli/{index.d.mts → main.d.mts} +1 -1
- package/dist/cli/main.mjs +6777 -0
- package/dist/cli/main.mjs.map +1 -0
- package/dist/cli/services/http-adapter/bundler.d.mts +1 -0
- package/dist/cli/services/workflow/bundler.d.mts +2 -1
- package/dist/cli/shared/client.d.mts +28 -3
- package/dist/cli/shared/config-loader.d.mts +11 -4
- package/dist/cli/shared/error-json.d.mts +23 -0
- package/dist/cli/shared/tsconfig-paths-plugin.d.mts +2 -0
- package/dist/cli/shared/type-generator.d.mts +4 -3
- package/dist/completion/zsh-worker.zsh +85 -22
- package/dist/configure/config/types.d.mts +29 -4
- package/dist/configure/index.d.mts +4 -3
- package/dist/configure/index.mjs +183 -6
- package/dist/configure/index.mjs.map +1 -1
- package/dist/configure/services/executor/index.d.mts +2 -2
- package/dist/configure/services/executor/trigger/event.d.mts +245 -2
- package/dist/configure/services/executor/trigger/index.d.mts +3 -3
- package/dist/configure/services/idp/index.d.mts +2 -2
- package/dist/configure/services/idp/permission.d.mts +1 -16
- package/dist/configure/services/idp/types.d.mts +5 -1
- package/dist/configure/services/index.d.mts +4 -3
- package/dist/configure/services/resolver/index.d.mts +2 -1
- package/dist/configure/services/resolver/permission.d.mts +64 -0
- package/dist/configure/services/resolver/resolver.d.mts +14 -2
- package/dist/configure/services/tailordb/index.d.mts +0 -1
- package/dist/configure/services/tailordb/permission.d.mts +1 -16
- package/dist/configure/services/workflow/execution-policy.d.mts +3 -3
- package/dist/configure/services/workflow/execution-policy.types.d.mts +1 -1
- package/dist/configure/services/workflow/job.d.mts +11 -2
- package/dist/configure/services/workflow/workflow.d.mts +10 -0
- package/dist/configure/types/permission-operand.types.d.mts +20 -0
- package/dist/{crashreport-CxHne11E.mjs → crashreport-B5LqCTfF.mjs} +2 -2
- package/dist/{crashreport-CxHne11E.mjs.map → crashreport-B5LqCTfF.mjs.map} +1 -1
- package/dist/{crashreport-0ioNRZ4K.mjs → crashreport-eI7ty7ok.mjs} +1 -1
- package/dist/{errors-DfnF4ibq.mjs → errors-D7583Zz7.mjs} +2 -44
- package/dist/errors-D7583Zz7.mjs.map +1 -0
- package/dist/{globals-CBZ0egXT.mjs → globals-TfAVItuK.mjs} +21 -5
- package/dist/globals-TfAVItuK.mjs.map +1 -0
- package/dist/logger-BtX0suGY.mjs +48 -0
- package/dist/logger-BtX0suGY.mjs.map +1 -0
- package/dist/{logger-BwS4ppwO.mjs → logger-CXQq9YIp.mjs} +110 -13
- package/dist/logger-CXQq9YIp.mjs.map +1 -0
- package/dist/node-builtins-CmaL2Cbq.mjs +36 -0
- package/dist/node-builtins-CmaL2Cbq.mjs.map +1 -0
- package/dist/plugin/builtin/enum-constants/index.mjs +115 -2
- package/dist/plugin/builtin/enum-constants/index.mjs.map +1 -0
- package/dist/plugin/builtin/file-utils/index.mjs +149 -2
- package/dist/plugin/builtin/file-utils/index.mjs.map +1 -0
- package/dist/plugin/builtin/kysely-type/index.mjs +274 -2
- package/dist/plugin/builtin/kysely-type/index.mjs.map +1 -0
- package/dist/plugin/builtin/seed/index.mjs +1 -1
- package/dist/plugin/builtin/seed/seed-type-processor.d.mts +2 -0
- package/dist/{register-ts-hook-DgnmGTCt.mjs → register-ts-hook-LYV7zH-e.mjs} +2949 -1001
- package/dist/register-ts-hook-LYV7zH-e.mjs.map +1 -0
- package/dist/{registry-i7EdJ-D5.mjs → registry-BIGVUrMB.mjs} +3 -3
- package/dist/registry-BIGVUrMB.mjs.map +1 -0
- package/dist/runtime/globals.d.mts +7 -0
- package/dist/runtime/index.d.mts +3 -1
- package/dist/runtime/index.mjs +3 -2
- package/dist/runtime/logger.d.mts +98 -0
- package/dist/runtime/logger.mjs +3 -0
- package/dist/runtime/workflow.d.mts +15 -7
- package/dist/runtime/workflow.mjs +1 -1
- package/dist/{seed-LUVr7jHL.mjs → seed-B-yckgQY.mjs} +42 -3
- package/dist/seed-B-yckgQY.mjs.map +1 -0
- package/dist/{service-DaeJlBoH.mjs → service-B5WynBHQ.mjs} +3 -3
- package/dist/{service-DaeJlBoH.mjs.map → service-B5WynBHQ.mjs.map} +1 -1
- package/dist/service-M7OYziQP.mjs +3 -0
- package/dist/{service-CXFce28G.mjs → service-k1xy_A5G.mjs} +30 -3
- package/dist/{service-CXFce28G.mjs.map → service-k1xy_A5G.mjs.map} +1 -1
- package/dist/{service_pb-BoLM0X4K.mjs → service_pb-D5--My_M.mjs} +5 -5
- package/dist/service_pb-D5--My_M.mjs.map +1 -0
- package/dist/{service_pb-r1T7kpJc.mjs → service_pb-i8CmnQP4.mjs} +1 -1
- package/dist/tailor-proto/src/tailor/v1/application_pb.d.mts +106 -1
- package/dist/tailor-proto/src/tailor/v1/executor_resource_pb.d.mts +24 -1
- package/dist/tailor-proto/src/tailor/v1/function_pb.d.mts +49 -1
- package/dist/tailor-proto/src/tailor/v1/service_pb.d.mts +89 -6
- package/dist/tailor-proto/src/tailor/v1/telemetryrouter_resource_pb.d.mts +26 -1
- package/dist/tailor-proto/src/tailor/v1/workflow_pb.d.mts +101 -1
- package/dist/tailor-proto/src/tailor/v1/workflow_resource_pb.d.mts +22 -1
- package/dist/types/auth.generated.d.mts +14 -2
- package/dist/types/executor.generated.d.mts +45 -3
- package/dist/types/http-adapter.generated.d.mts +5 -0
- package/dist/types/idp.generated.d.mts +31 -1
- package/dist/types/resolver.generated.d.mts +30 -2
- package/dist/types/tailordb.generated.d.mts +15 -1
- package/dist/utils/test/index.d.mts +1 -2
- package/dist/utils/test/index.mjs +1 -169
- package/dist/utils/test/index.mjs.map +1 -1
- package/dist/vitest/environment.mjs +1 -1
- package/dist/vitest/index.d.mts +6 -4
- package/dist/vitest/index.mjs +112 -62
- package/dist/vitest/index.mjs.map +1 -1
- package/dist/vitest/mock.d.mts +2 -1
- package/dist/vitest/mocks/logger.d.mts +45 -0
- package/dist/vitest/mocks/workflow.d.mts +8 -8
- package/dist/vitest/setup.mjs +1 -1
- package/dist/{workflow-CsBvRE3g.mjs → workflow-Bamae_Yc.mjs} +5 -5
- package/dist/workflow-Bamae_Yc.mjs.map +1 -0
- package/dist/{workspace_resource_pb-Db3fv68L.mjs → workspace_resource_pb-DXnO2AT-.mjs} +13 -8
- package/dist/workspace_resource_pb-DXnO2AT-.mjs.map +1 -0
- package/docs/cli/application.md +5 -1
- package/docs/cli/tailordb.md +47 -13
- package/docs/cli-reference.md +31 -30
- package/docs/configuration.md +53 -1
- package/docs/github-actions.md +2 -2
- package/docs/migration/v2.md +307 -10
- package/docs/runtime.md +5 -1
- package/docs/services/executor.md +83 -3
- package/docs/services/idp.md +8 -6
- package/docs/services/resolver.md +60 -4
- package/docs/services/tailordb-migration.md +31 -7
- package/docs/services/tailordb.md +7 -5
- package/docs/services/workflow.md +33 -3
- package/docs/testing.md +34 -7
- package/package.json +31 -24
- package/dist/application-CtuzFhg8.mjs +0 -3
- package/dist/application-D_oSqto2.mjs.map +0 -1
- package/dist/cli/index.mjs.map +0 -1
- package/dist/enum-constants-j9QBF0cB.mjs +0 -116
- package/dist/enum-constants-j9QBF0cB.mjs.map +0 -1
- package/dist/errors-DfnF4ibq.mjs.map +0 -1
- package/dist/file-utils-yEiIS4nJ.mjs +0 -150
- package/dist/file-utils-yEiIS4nJ.mjs.map +0 -1
- package/dist/globals-CBZ0egXT.mjs.map +0 -1
- package/dist/kysely-type-DqIRgDYR.mjs +0 -275
- package/dist/kysely-type-DqIRgDYR.mjs.map +0 -1
- package/dist/logger-BwS4ppwO.mjs.map +0 -1
- package/dist/register-ts-hook-DgnmGTCt.mjs.map +0 -1
- package/dist/registry-i7EdJ-D5.mjs.map +0 -1
- package/dist/seed-LUVr7jHL.mjs.map +0 -1
- package/dist/service-DjhjpJpm.mjs +0 -3
- package/dist/service_pb-BoLM0X4K.mjs.map +0 -1
- package/dist/utils/test/mock.d.mts +0 -86
- package/dist/workflow-CsBvRE3g.mjs.map +0 -1
- package/dist/workspace_resource_pb-Db3fv68L.mjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registry-i7EdJ-D5.mjs","names":[],"sources":["../src/configure/services/workflow/registry.ts"],"sourcesContent":["import type { TailorEnv, TailorPrincipal } from \"#/runtime/types\";\nimport type { StartJobFunctionOptions, StartWorkflowOptions } from \"#/runtime/workflow\";\n\n/**\n * Body signature shared by workflow jobs at registry-write time.\n * The user's `createWorkflowJob`/`createWorkflow` body uses concrete types,\n * but the registry erases them for storage.\n */\nexport type RegisteredJobBody = (\n args: unknown,\n context: { env: TailorEnv; invoker: TailorPrincipal | null },\n) => unknown | Promise<unknown>;\n\nconst JOB_REGISTRY_KEY: unique symbol = Symbol.for(\"tailor-platform/sdk:job-registry\");\n\ntype PlatformWorkflow = {\n startWorkflow: (name: string, args?: unknown, options?: StartWorkflowOptions) => Promise<string>;\n startJobFunction: (name: string, args?: unknown, options?: StartJobFunctionOptions) => unknown;\n};\n\ntype GlobalWithRegistry = typeof globalThis & {\n [JOB_REGISTRY_KEY]?: Map<string, RegisteredJobBody>;\n tailor?: { workflow?: PlatformWorkflow };\n};\n\nfunction jobs(): Map<string, RegisteredJobBody> {\n const g = globalThis as GlobalWithRegistry;\n let map = g[JOB_REGISTRY_KEY];\n if (!map) {\n map = new Map();\n g[JOB_REGISTRY_KEY] = map;\n }\n return map;\n}\n\n/**\n * Register a job body keyed by job name. Called as a side effect by\n * `createWorkflowJob` so `runWorkflowLocally()` can execute dependent job\n * bodies when `globalThis.tailor.workflow.startJobFunction(name, args)` is invoked.\n *\n * In production builds the bundler rewrites `.start()` calls so this registry\n * is never read; the gated write is dropped as dead code.\n * @param name - Job name\n * @param body - Job body function\n */\nexport function registerJob(name: string, body: RegisteredJobBody): void {\n jobs().set(name, body);\n}\n\n/**\n * Look up a registered job body by name.\n * @param name - Job name\n * @returns The registered body, or undefined when no job is registered\n */\nexport function getRegisteredJob(name: string): RegisteredJobBody | undefined {\n return jobs().get(name);\n}\n\nfunction currentPlatformWorkflow(): PlatformWorkflow | undefined {\n // globalThis may not have the tailor property at runtime\n // oxlint-disable-next-line typescript/no-unnecessary-condition\n return (globalThis as GlobalWithRegistry).tailor?.workflow;\n}\n\nfunction requirePlatformWorkflow(): PlatformWorkflow {\n const workflow = currentPlatformWorkflow();\n if (!workflow) {\n throw new Error(\n \"tailor.workflow is not available. Run tests in the `tailor-runtime` Vitest environment and use mockWorkflow(), or use runWorkflowLocally() from @tailor-platform/sdk/vitest for local workflow execution.\",\n );\n }\n return workflow;\n}\n\n// A valid placeholder UUID, so callers that validate the execution id behave the\n// same locally as against the platform.\nexport const START_DEFAULT = \"00000000-0000-4000-8000-000000000000\";\n\n// `.start()` routes through the installed `tailor.workflow` shim. Local body\n// execution is intentionally available only through `runWorkflowLocally()`.\n// Preserve arity: the shim sees a 2-argument call when the caller supplied no\n// options, and a 3-argument call otherwise, mirroring the bundler rewrite so\n// mocks observe the same shape in local execution and in bundled workflows.\nexport function dispatchStartJob(\n name: string,\n args?: unknown,\n options?: StartJobFunctionOptions,\n): unknown {\n const workflow = requirePlatformWorkflow();\n // oxlint-disable-next-line prefer-rest-params\n return arguments.length >= 3\n ? workflow.startJobFunction(name, args, options)\n : workflow.startJobFunction(name, args);\n}\n\n// Accepts `unknown` because the SDK-side `.start()` accepts a wider options\n// shape than the platform surface (e.g. `authInvoker` may be a machine-user\n// name string that the bundler normalizes at build time). Local execution\n// forwards the value verbatim; only the bundled path enforces the platform\n// contract.\nexport function dispatchStartWorkflow(\n name: string,\n args?: unknown,\n options?: { invoker?: unknown },\n): Promise<string> {\n const workflow = requirePlatformWorkflow();\n // oxlint-disable-next-line prefer-rest-params\n if (arguments.length < 3) {\n return workflow.startWorkflow(name, args);\n }\n return workflow.startWorkflow(\n name,\n args,\n options?.invoker === undefined\n ? (options as StartWorkflowOptions | undefined)\n : ({ authInvoker: options.invoker } as StartWorkflowOptions),\n );\n}\n"],"mappings":";AAaA,MAAM,mBAAkC,OAAO,IAAI,kCAAkC;AAYrF,SAAS,OAAuC;CAC9C,MAAM,IAAI;CACV,IAAI,MAAM,EAAE;CACZ,IAAI,CAAC,KAAK;EACR,sBAAM,IAAI,IAAI;EACd,EAAE,oBAAoB;CACxB;CACA,OAAO;AACT;;;;;;;;;;;AAYA,SAAgB,YAAY,MAAc,MAA+B;CACvE,KAAK,CAAC,CAAC,IAAI,MAAM,IAAI;AACvB;;;;;;AAOA,SAAgB,iBAAiB,MAA6C;CAC5E,OAAO,KAAK,CAAC,CAAC,IAAI,IAAI;AACxB;AAEA,SAAS,0BAAwD;CAG/D,OAAQ,WAAkC,QAAQ;AACpD;AAEA,SAAS,0BAA4C;CACnD,MAAM,WAAW,wBAAwB;CACzC,IAAI,CAAC,UACH,MAAM,IAAI,MACR,2MACF;CAEF,OAAO;AACT;AAIA,MAAa,gBAAgB;AAO7B,SAAgB,iBACd,MACA,MACA,SACS;CACT,MAAM,WAAW,wBAAwB;CAEzC,OAAO,UAAU,UAAU,IACvB,SAAS,iBAAiB,MAAM,MAAM,OAAO,IAC7C,SAAS,iBAAiB,MAAM,IAAI;AAC1C;AAOA,SAAgB,sBACd,MACA,MACA,SACiB;CACjB,MAAM,WAAW,wBAAwB;CAEzC,IAAI,UAAU,SAAS,GACrB,OAAO,SAAS,cAAc,MAAM,IAAI;CAE1C,OAAO,SAAS,cACd,MACA,MACA,SAAS,YAAY,SAChB,UACA,EAAE,aAAa,QAAQ,QAAQ,CACtC;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"seed-LUVr7jHL.mjs","names":["ml"],"sources":["../src/plugin/builtin/seed/idp-user-processor.ts","../src/plugin/builtin/seed/lines-db-processor.ts","../src/plugin/builtin/seed/index.ts"],"sourcesContent":["import ml from \"#/utils/multiline\";\nimport type { GeneratorAuthInput } from \"#/plugin/types\";\n\nexport interface IdpUserMetadata {\n name: \"_User\";\n dependencies: string[];\n dataFile: string;\n idpNamespace: string;\n schema: {\n usernameField: string;\n userTypeName: string;\n };\n}\n\n/**\n * Processes auth configuration to generate IdP user seed metadata\n * @param auth - Auth configuration from generator\n * @returns IdP user metadata or undefined if not applicable\n */\nexport function processIdpUser(auth: GeneratorAuthInput): IdpUserMetadata | undefined {\n // Only process if idProvider is BuiltInIdP and userProfile is defined\n if (auth.idProvider?.kind !== \"BuiltInIdP\" || !auth.userProfile) {\n return undefined;\n }\n\n const { typeName, usernameField } = auth.userProfile;\n\n return {\n name: \"_User\",\n dependencies: [typeName],\n dataFile: \"data/_User.jsonl\",\n idpNamespace: auth.idProvider.namespace,\n schema: {\n usernameField,\n userTypeName: typeName,\n },\n };\n}\n\n/**\n * Generates the server-side IDP seed script code for testExecScript execution.\n * Uses the global tailor.idp.Client - no bundling required.\n * @param idpNamespace - The IDP namespace name\n * @returns Script code string\n */\nexport function generateIdpSeedScriptCode(idpNamespace: string): string {\n return ml /* ts */ `\n export async function main(input) {\n const client = new tailor.idp.Client({ namespace: \"${idpNamespace}\" });\n const errors = [];\n let processed = 0;\n\n for (let i = 0; i < input.users.length; i++) {\n try {\n await client.createUser(input.users[i]);\n processed++;\n console.log(\\`[_User] \\${i + 1}/\\${input.users.length}: \\${input.users[i].name}\\`);\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n errors.push(\\`Row \\${i} (\\${input.users[i].name}): \\${message}\\`);\n console.error(\\`[_User] Row \\${i} failed: \\${message}\\`);\n }\n }\n\n return {\n success: errors.length === 0,\n processed,\n errors,\n };\n }\n `;\n}\n\n/**\n * Generates the server-side IDP truncation script code for testExecScript execution.\n * Lists all users with pagination and deletes each one.\n * @param idpNamespace - The IDP namespace name\n * @returns Script code string\n */\nexport function generateIdpTruncateScriptCode(idpNamespace: string): string {\n return ml /* ts */ `\n export async function main() {\n const client = new tailor.idp.Client({ namespace: \"${idpNamespace}\" });\n const errors = [];\n let deleted = 0;\n\n // List all users with pagination\n let after = undefined;\n const allUsers = [];\n do {\n const response = await client.users(after ? { after } : undefined);\n allUsers.push(...(response.users || []));\n after = response.nextPageToken;\n } while (after);\n\n console.log(\\`Found \\${allUsers.length} IDP users to delete\\`);\n\n for (const user of allUsers) {\n try {\n await client.deleteUser(user.id);\n deleted++;\n console.log(\\`[_User] Deleted \\${deleted}/\\${allUsers.length}: \\${user.name}\\`);\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n errors.push(\\`User \\${user.id} (\\${user.name}): \\${message}\\`);\n console.error(\\`[_User] Delete failed for \\${user.name}: \\${message}\\`);\n }\n }\n\n return {\n success: errors.length === 0,\n deleted,\n total: allUsers.length,\n errors,\n };\n }\n `;\n}\n\ntype GenerateIdpUserSchemaFileOptions = {\n usernameField: string;\n userTypeName: string;\n /**\n * When `true` (default), emit a foreign key from `_User.name` to the\n * userProfile type's username field so that seed validation rejects `_User`\n * rows without a matching userProfile row. Set to `false` to seed `_User`\n * rows that do not yet have a corresponding userProfile row.\n */\n includeUserProfileFK?: boolean;\n};\n\n/**\n * Generates the schema file content for IdP users. Emits the\n * `_User.name -> <userProfile>.<usernameField>` foreign key by default; pass\n * `includeUserProfileFK: false` to omit it (e.g. when seeding `_User` rows\n * that do not yet have a corresponding userProfile row).\n * @param options - Schema generation options\n * @param options.usernameField - Username field name\n * @param options.userTypeName - TailorDB user type name\n * @param options.includeUserProfileFK - Whether to emit the `_User -> userProfile` foreign key (default `true`)\n * @returns Schema file contents\n */\nexport function generateIdpUserSchemaFile(options: GenerateIdpUserSchemaFileOptions): string {\n const { usernameField, userTypeName, includeUserProfileFK = true } = options;\n const schemaBody = includeUserProfileFK\n ? ml`\n primaryKey: \"name\",\n indexes: [\n { name: \"_user_name_unique_idx\", columns: [\"name\"], unique: true },\n ],\n foreignKeys: [\n {\n column: \"name\",\n references: {\n table: \"${userTypeName}\",\n column: \"${usernameField}\",\n },\n },\n ],\n `\n : ml`\n primaryKey: \"name\",\n indexes: [\n { name: \"_user_name_unique_idx\", columns: [\"name\"], unique: true },\n ],\n `;\n\n return ml /* ts */ `\n import { t } from \"@tailor-platform/sdk\";\n import { defineSchema } from \"@tailor-platform/sdk/seed\";\n import { createStandardSchema } from \"@tailor-platform/sdk/test\";\n\n const schemaType = t.object({\n name: t.string(),\n password: t.string(),\n });\n\n // Simple identity hook for _User (no TailorDB backing type)\n const hook = <T>(data: unknown) => data as T;\n\n export const schema = defineSchema(\n createStandardSchema(schemaType, hook),\n {\n ${schemaBody}\n }\n );\n\n `;\n}\n","import { isPluginGeneratedType } from \"#/parser/service/tailordb/type-source\";\nimport ml from \"#/utils/multiline\";\nimport type {\n PluginGeneratedTypeSource,\n TailorDBType,\n TypeSourceInfoEntry,\n} from \"#/parser/service/tailordb/types\";\nimport type { LinesDbMetadata } from \"./types\";\nimport type { ForeignKeyDefinition, IndexDefinition } from \"@toiroakr/lines-db\";\n\n/**\n * Processes TailorDB types to generate lines-db metadata\n * @param type - Parsed TailorDB type\n * @param source - Source file info\n * @returns Generated lines-db metadata\n */\nexport function processLinesDb(type: TailorDBType, source: TypeSourceInfoEntry): LinesDbMetadata {\n if (isPluginGeneratedType(source)) {\n // Plugin-generated type\n return processLinesDbForPluginType(type, source);\n }\n\n // User-defined type\n if (!source.filePath) {\n throw new Error(`Missing source info for type ${type.name}`);\n }\n if (!source.exportName) {\n throw new Error(`Missing export name for type ${type.name}`);\n }\n\n const { optionalFields, omitFields, indexes, foreignKeys } = extractFieldMetadata(type);\n\n return {\n typeName: type.name,\n exportName: source.exportName,\n importPath: source.filePath,\n optionalFields,\n omitFields,\n foreignKeys,\n indexes,\n };\n}\n\n/**\n * Process lines-db metadata for plugin-generated types\n * @param type - Parsed TailorDB type\n * @param source - Plugin-generated type source info\n * @returns Generated lines-db metadata with plugin source\n */\nfunction processLinesDbForPluginType(\n type: TailorDBType,\n source: PluginGeneratedTypeSource,\n): LinesDbMetadata {\n const { optionalFields, omitFields, indexes, foreignKeys } = extractFieldMetadata(type);\n\n return {\n typeName: type.name,\n exportName: source.exportName,\n importPath: \"\",\n optionalFields,\n omitFields,\n foreignKeys,\n indexes,\n pluginSource: source,\n };\n}\n\n/**\n * Extract field metadata from TailorDB type\n * @param type - Parsed TailorDB type\n * @returns Field metadata including optional fields, omit fields, indexes, and foreign keys\n */\nfunction extractFieldMetadata(type: TailorDBType): {\n optionalFields: string[];\n omitFields: string[];\n indexes: IndexDefinition[];\n foreignKeys: ForeignKeyDefinition[];\n} {\n const optionalFields = [\"id\"]; // id is always optional\n const omitFields: string[] = [];\n const indexes: IndexDefinition[] = [];\n const foreignKeys: ForeignKeyDefinition[] = [];\n\n // Find fields with hooks.create or serial\n for (const [fieldName, field] of Object.entries(type.fields)) {\n if (field.config.hooks?.create) {\n optionalFields.push(fieldName);\n }\n // Serial fields are auto-generated, so they should be optional in seed data\n if (field.config.serial) {\n omitFields.push(fieldName);\n }\n if (field.config.unique) {\n indexes.push({\n name: `${type.name.toLowerCase()}_${fieldName}_unique_idx`,\n columns: [fieldName],\n unique: true,\n });\n }\n }\n\n // Extract indexes\n if (type.indexes) {\n for (const [indexName, indexDef] of Object.entries(type.indexes)) {\n indexes.push({\n name: indexName,\n columns: indexDef.fields,\n unique: indexDef.unique,\n });\n }\n }\n\n // Extract foreign keys from relations\n for (const [fieldName, field] of Object.entries(type.fields)) {\n if (field.relation) {\n foreignKeys.push({\n column: fieldName,\n references: {\n table: field.relation.targetType,\n column: field.relation.key,\n },\n });\n }\n }\n\n return { optionalFields, omitFields, indexes, foreignKeys };\n}\n\n/**\n * Generate schema options code for lines-db\n * @param foreignKeys - Foreign key definitions\n * @param indexes - Index definitions\n * @returns Schema options code string\n */\nfunction generateSchemaOptions(\n foreignKeys: ForeignKeyDefinition[],\n indexes: IndexDefinition[],\n): string {\n const schemaOptions: string[] = [];\n\n if (foreignKeys.length > 0) {\n schemaOptions.push(`foreignKeys: [`);\n foreignKeys.forEach((fk) => {\n schemaOptions.push(` ${JSON.stringify(fk)},`);\n });\n schemaOptions.push(`],`);\n }\n\n if (indexes.length > 0) {\n schemaOptions.push(`indexes: [`);\n indexes.forEach((index) => {\n schemaOptions.push(` ${JSON.stringify(index)},`);\n });\n schemaOptions.push(\"],\");\n }\n\n return schemaOptions.length > 0\n ? [\"\\n {\", ...schemaOptions.map((option) => ` ${option}`), \" }\"].join(\"\\n\")\n : \"\";\n}\n\n/**\n * Generates the schema file content for lines-db (for user-defined types with import)\n * @param metadata - lines-db metadata\n * @param importPath - Import path for the TailorDB type\n * @returns Schema file contents\n */\nexport function generateLinesDbSchemaFile(metadata: LinesDbMetadata, importPath: string): string {\n const { exportName, optionalFields, omitFields, foreignKeys, indexes } = metadata;\n\n const schemaTypeCode = ml /* ts */ `\n const schemaType = t.object({\n ...${exportName}.pickFields(${JSON.stringify(optionalFields)}, { optional: true }),\n ...${exportName}.omitFields(${JSON.stringify([...optionalFields, ...omitFields])}),\n });\n `;\n\n const schemaOptionsCode = generateSchemaOptions(foreignKeys, indexes);\n\n return ml /* ts */ `\n import { t } from \"@tailor-platform/sdk\";\n import { defineSchema } from \"@tailor-platform/sdk/seed\";\n import { createTailorDBHook, createStandardSchema } from \"@tailor-platform/sdk/test\";\n import { ${exportName} } from \"${importPath}\";\n\n ${schemaTypeCode}\n\n const hook = createTailorDBHook(${exportName});\n\n export const schema = defineSchema(\n createStandardSchema(schemaType, hook),${schemaOptionsCode}\n );\n\n `;\n}\n\n/**\n * Parameters for generating plugin-type schema file\n */\nexport interface PluginSchemaParams {\n /** Relative path from schema output to tailor.config.ts */\n configImportPath: string;\n /** Relative import path to the original type file (for type-attached plugins) */\n originalImportPath?: string;\n}\n\n/**\n * Generates the schema file content using getGeneratedType API\n * (for plugin-generated types)\n * @param metadata - lines-db metadata (must have pluginSource)\n * @param params - Plugin import paths\n * @returns Schema file contents\n */\nexport function generateLinesDbSchemaFileWithPluginAPI(\n metadata: LinesDbMetadata,\n params: PluginSchemaParams,\n): string {\n const { typeName, exportName, optionalFields, omitFields, foreignKeys, indexes, pluginSource } =\n metadata;\n\n if (!pluginSource) {\n throw new Error(`pluginSource is required for plugin-generated type \"${typeName}\"`);\n }\n\n const { configImportPath, originalImportPath } = params;\n\n const schemaTypeCode = ml /* ts */ `\n const schemaType = t.object({\n ...${exportName}.pickFields(${JSON.stringify(optionalFields)}, { optional: true }),\n ...${exportName}.omitFields(${JSON.stringify([...optionalFields, ...omitFields])}),\n });\n `;\n\n const schemaOptionsCode = generateSchemaOptions(foreignKeys, indexes);\n\n // Type-attached plugin (e.g., changeset): import original type and use getGeneratedType(configPath, pluginId, type, kind)\n if (pluginSource.originalExportName && originalImportPath && pluginSource.generatedTypeKind) {\n return ml /* ts */ `\n import { join } from \"node:path\";\n import { t } from \"@tailor-platform/sdk\";\n import { getGeneratedType } from \"@tailor-platform/sdk/plugin\";\n import { defineSchema } from \"@tailor-platform/sdk/seed\";\n import { createTailorDBHook, createStandardSchema } from \"@tailor-platform/sdk/test\";\n import { ${pluginSource.originalExportName} } from \"${originalImportPath}\";\n\n const configPath = join(import.meta.dirname, \"${configImportPath}\");\n const ${exportName} = await getGeneratedType(configPath, \"${pluginSource.pluginId}\", ${pluginSource.originalExportName}, \"${pluginSource.generatedTypeKind}\");\n\n ${schemaTypeCode}\n\n const hook = createTailorDBHook(${exportName});\n\n export const schema = defineSchema(\n createStandardSchema(schemaType, hook),${schemaOptionsCode}\n );\n\n `;\n }\n\n // Namespace plugin (e.g., audit-log): use getGeneratedType(configPath, pluginId, null, kind)\n // For namespace plugins, generatedTypeKind is required\n if (!pluginSource.generatedTypeKind) {\n throw new Error(\n `Namespace plugin \"${pluginSource.pluginId}\" must provide generatedTypeKind for type \"${typeName}\"`,\n );\n }\n\n return ml /* ts */ `\n import { join } from \"node:path\";\n import { t } from \"@tailor-platform/sdk\";\n import { getGeneratedType } from \"@tailor-platform/sdk/plugin\";\n import { defineSchema } from \"@tailor-platform/sdk/seed\";\n import { createTailorDBHook, createStandardSchema } from \"@tailor-platform/sdk/test\";\n\n const configPath = join(import.meta.dirname, \"${configImportPath}\");\n const ${exportName} = await getGeneratedType(configPath, \"${pluginSource.pluginId}\", null, \"${pluginSource.generatedTypeKind}\");\n\n ${schemaTypeCode}\n\n const hook = createTailorDBHook(${exportName});\n\n export const schema = defineSchema(\n createStandardSchema(schemaType, hook),${schemaOptionsCode}\n );\n\n `;\n}\n","import * as path from \"pathe\";\nimport { assertDefined } from \"#/utils/assert\";\nimport { processIdpUser, generateIdpUserSchemaFile } from \"./idp-user-processor\";\nimport {\n processLinesDb,\n generateLinesDbSchemaFile,\n generateLinesDbSchemaFileWithPluginAPI,\n type PluginSchemaParams,\n} from \"./lines-db-processor\";\nimport type { Plugin, GeneratorResult, TailorDBReadyContext } from \"#/plugin/types\";\n\n/** Unique identifier for the seed generator plugin. */\nexport const SeedGeneratorID = \"@tailor-platform/seed\";\n\ntype DisableIdpUserSyncDirections = {\n /**\n * Skip emitting the foreign key from `<userProfile>.<usernameField>` to\n * `_User.name`. Defaults to `false` (FK emitted).\n *\n * Set to `true` to seed pre-registration states such as\n * invited-but-not-registered users.\n */\n userToIdp?: boolean;\n /**\n * Skip emitting the foreign key from `_User.name` to\n * `<userProfile>.<usernameField>`. Defaults to `false` (FK emitted).\n *\n * Set to `true` to seed `_User` rows that do not yet have a corresponding\n * userProfile row.\n */\n idpToUser?: boolean;\n};\n\nexport type SeedPluginOptions = {\n distPath: string;\n machineUserName?: string;\n /**\n * Disable individual `_User <-> userProfile` foreign keys emitted into\n * the generated seed schema. Both directions are emitted by default.\n *\n * Set a direction to `true` to relax it — for example to seed invited\n * users that do not yet have an IdP credential.\n */\n disableIdpUserSync?: DisableIdpUserSyncDirections;\n};\n\nfunction resolveIdpUserSyncFKs(option: SeedPluginOptions[\"disableIdpUserSync\"]): {\n emitUserToIdpFK: boolean;\n emitIdpToUserFK: boolean;\n} {\n return {\n emitUserToIdpFK: !(option?.userToIdp ?? false),\n emitIdpToUserFK: !(option?.idpToUser ?? false),\n };\n}\n/**\n * Plugin that generates seed data and schema files consumed by the\n * `tailor seed` commands (@tailor-platform/sdk-plugin-seed).\n * @param options - Plugin options\n * @param options.distPath - Output directory path for generated seed files\n * @param options.machineUserName - Default machine user name for authentication\n * @param options.disableIdpUserSync - Skip emitting individual `_User <-> userProfile` foreign keys. Both directions are emitted by default; set a direction to `true` to relax that side.\n * @returns Plugin instance with onTailorDBReady hook\n */\nexport function seedPlugin(options: SeedPluginOptions): Plugin<unknown, SeedPluginOptions> {\n return {\n id: SeedGeneratorID,\n description: \"Generates seed data and schema files for the tailor seed CLI plugin\",\n pluginConfig: options,\n\n async onTailorDBReady(ctx: TailorDBReadyContext<SeedPluginOptions>): Promise<GeneratorResult> {\n const files: GeneratorResult[\"files\"] = [];\n\n // Process IdP user early so we can add reverse FK to the user profile type\n const idpUser = ctx.auth ? (processIdpUser(ctx.auth) ?? null) : null;\n const idpUserSyncFKs = resolveIdpUserSyncFKs(ctx.pluginConfig.disableIdpUserSync);\n\n for (const ns of ctx.tailordb) {\n for (const [typeName, type] of Object.entries(ns.types)) {\n const source = assertDefined(\n ns.sourceInfo.get(typeName),\n `source info missing for type: ${typeName}`,\n );\n const linesDb = processLinesDb(type, source);\n\n // Add reverse FK from userProfile type to _User (opt-out via disableIdpUserSync.userToIdp: true)\n if (\n idpUserSyncFKs.emitUserToIdpFK &&\n idpUser &&\n typeName === idpUser.schema.userTypeName\n ) {\n linesDb.foreignKeys.push({\n column: idpUser.schema.usernameField,\n references: {\n table: \"_User\",\n column: \"name\",\n },\n });\n }\n\n // Generate empty JSONL data file\n files.push({\n path: path.join(ctx.pluginConfig.distPath, \"data\", `${linesDb.typeName}.jsonl`),\n content: \"\",\n skipIfExists: true,\n });\n\n const schemaOutputPath = path.join(\n ctx.pluginConfig.distPath,\n \"data\",\n `${linesDb.typeName}.schema.ts`,\n );\n\n // Plugin-generated type: use getGeneratedType API\n if (linesDb.pluginSource && linesDb.pluginSource.pluginImportPath) {\n // Build original type import path\n let originalImportPath: string | undefined;\n if (linesDb.pluginSource.originalFilePath && linesDb.pluginSource.originalExportName) {\n const relativePath = path.relative(\n path.dirname(schemaOutputPath),\n linesDb.pluginSource.originalFilePath,\n );\n originalImportPath = relativePath.replace(/\\.ts$/, \"\").startsWith(\".\")\n ? relativePath.replace(/\\.ts$/, \"\")\n : `./${relativePath.replace(/\\.ts$/, \"\")}`;\n }\n\n // Compute relative path from schema output to config file\n const configImportPath = path.relative(path.dirname(schemaOutputPath), ctx.configPath);\n\n const params: PluginSchemaParams = {\n configImportPath,\n originalImportPath,\n };\n\n const schemaContent = generateLinesDbSchemaFileWithPluginAPI(linesDb, params);\n\n files.push({\n path: schemaOutputPath,\n content: schemaContent,\n });\n } else {\n // User-defined type: import from source file\n const relativePath = path.relative(path.dirname(schemaOutputPath), linesDb.importPath);\n const typeImportPath = relativePath.replace(/\\.ts$/, \"\").startsWith(\".\")\n ? relativePath.replace(/\\.ts$/, \"\")\n : `./${relativePath.replace(/\\.ts$/, \"\")}`;\n const schemaContent = generateLinesDbSchemaFile(linesDb, typeImportPath);\n\n files.push({\n path: schemaOutputPath,\n content: schemaContent,\n });\n }\n }\n }\n\n if (idpUser) {\n // Generate empty JSONL data file\n files.push({\n path: path.join(ctx.pluginConfig.distPath, idpUser.dataFile),\n content: \"\",\n skipIfExists: true,\n });\n\n // Generate schema file with foreign key (opt-out via disableIdpUserSync.idpToUser: true)\n files.push({\n path: path.join(ctx.pluginConfig.distPath, \"data\", `${idpUser.name}.schema.ts`),\n content: generateIdpUserSchemaFile({\n usernameField: idpUser.schema.usernameField,\n userTypeName: idpUser.schema.userTypeName,\n includeUserProfileFK: idpUserSyncFKs.emitIdpToUserFK,\n }),\n });\n }\n\n return { files };\n },\n };\n}\n"],"mappings":";;;;;;;;;;;AAmBA,SAAgB,eAAe,MAAuD;CAEpF,IAAI,KAAK,YAAY,SAAS,gBAAgB,CAAC,KAAK,aAClD;CAGF,MAAM,EAAE,UAAU,kBAAkB,KAAK;CAEzC,OAAO;EACL,MAAM;EACN,cAAc,CAAC,QAAQ;EACvB,UAAU;EACV,cAAc,KAAK,WAAW;EAC9B,QAAQ;GACN;GACA,cAAc;EAChB;CACF;AACF;;;;;;;AAQA,SAAgB,0BAA0B,cAA8B;CACtE,OAAO,SAAY;;2DAEsC,aAAa;;;;;;;;;;;;;;;;;;;;;;;AAuBxE;;;;;;;AAQA,SAAgB,8BAA8B,cAA8B;CAC1E,OAAO,SAAY;;2DAEsC,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCxE;;;;;;;;;;;;AAyBA,SAAgB,0BAA0B,SAAmD;CAC3F,MAAM,EAAE,eAAe,cAAc,uBAAuB,SAAS;CAwBrE,OAAO,SAAY;;;;;;;;;;;;;;;;UAvBA,uBACf,SAAE;;;;;;;;;sBASc,aAAa;uBACZ,cAAc;;;;QAK/B,SAAE;;;;;MAuBa;;;;;AAKrB;;;;;;;;;;AC5KA,SAAgB,eAAe,MAAoB,QAA8C;CAC/F,IAAI,sBAAsB,MAAM,GAE9B,OAAO,4BAA4B,MAAM,MAAM;CAIjD,IAAI,CAAC,OAAO,UACV,MAAM,IAAI,MAAM,gCAAgC,KAAK,MAAM;CAE7D,IAAI,CAAC,OAAO,YACV,MAAM,IAAI,MAAM,gCAAgC,KAAK,MAAM;CAG7D,MAAM,EAAE,gBAAgB,YAAY,SAAS,gBAAgB,qBAAqB,IAAI;CAEtF,OAAO;EACL,UAAU,KAAK;EACf,YAAY,OAAO;EACnB,YAAY,OAAO;EACnB;EACA;EACA;EACA;CACF;AACF;;;;;;;AAQA,SAAS,4BACP,MACA,QACiB;CACjB,MAAM,EAAE,gBAAgB,YAAY,SAAS,gBAAgB,qBAAqB,IAAI;CAEtF,OAAO;EACL,UAAU,KAAK;EACf,YAAY,OAAO;EACnB,YAAY;EACZ;EACA;EACA;EACA;EACA,cAAc;CAChB;AACF;;;;;;AAOA,SAAS,qBAAqB,MAK5B;CACA,MAAM,iBAAiB,CAAC,IAAI;CAC5B,MAAM,aAAuB,CAAC;CAC9B,MAAM,UAA6B,CAAC;CACpC,MAAM,cAAsC,CAAC;CAG7C,KAAK,MAAM,CAAC,WAAW,UAAU,OAAO,QAAQ,KAAK,MAAM,GAAG;EAC5D,IAAI,MAAM,OAAO,OAAO,QACtB,eAAe,KAAK,SAAS;EAG/B,IAAI,MAAM,OAAO,QACf,WAAW,KAAK,SAAS;EAE3B,IAAI,MAAM,OAAO,QACf,QAAQ,KAAK;GACX,MAAM,GAAG,KAAK,KAAK,YAAY,EAAE,GAAG,UAAU;GAC9C,SAAS,CAAC,SAAS;GACnB,QAAQ;EACV,CAAC;CAEL;CAGA,IAAI,KAAK,SACP,KAAK,MAAM,CAAC,WAAW,aAAa,OAAO,QAAQ,KAAK,OAAO,GAC7D,QAAQ,KAAK;EACX,MAAM;EACN,SAAS,SAAS;EAClB,QAAQ,SAAS;CACnB,CAAC;CAKL,KAAK,MAAM,CAAC,WAAW,UAAU,OAAO,QAAQ,KAAK,MAAM,GACzD,IAAI,MAAM,UACR,YAAY,KAAK;EACf,QAAQ;EACR,YAAY;GACV,OAAO,MAAM,SAAS;GACtB,QAAQ,MAAM,SAAS;EACzB;CACF,CAAC;CAIL,OAAO;EAAE;EAAgB;EAAY;EAAS;CAAY;AAC5D;;;;;;;AAQA,SAAS,sBACP,aACA,SACQ;CACR,MAAM,gBAA0B,CAAC;CAEjC,IAAI,YAAY,SAAS,GAAG;EAC1B,cAAc,KAAK,gBAAgB;EACnC,YAAY,SAAS,OAAO;GAC1B,cAAc,KAAK,KAAK,KAAK,UAAU,EAAE,EAAE,EAAE;EAC/C,CAAC;EACD,cAAc,KAAK,IAAI;CACzB;CAEA,IAAI,QAAQ,SAAS,GAAG;EACtB,cAAc,KAAK,YAAY;EAC/B,QAAQ,SAAS,UAAU;GACzB,cAAc,KAAK,KAAK,KAAK,UAAU,KAAK,EAAE,EAAE;EAClD,CAAC;EACD,cAAc,KAAK,IAAI;CACzB;CAEA,OAAO,cAAc,SAAS,IAC1B;EAAC;EAAS,GAAG,cAAc,KAAK,WAAW,OAAO,QAAQ;EAAG;CAAK,CAAC,CAAC,KAAK,IAAI,IAC7E;AACN;;;;;;;AAQA,SAAgB,0BAA0B,UAA2B,YAA4B;CAC/F,MAAM,EAAE,YAAY,gBAAgB,YAAY,aAAa,YAAY;CAWzE,OAAO,SAAY;;;;eAIN,WAAW,WAAW,WAAW;;MAE1C,AAfmBA,SAAY;;WAE1B,WAAW,cAAc,KAAK,UAAU,cAAc,EAAE;WACxD,WAAW,cAAc,KAAK,UAAU,CAAC,GAAG,gBAAgB,GAAG,UAAU,CAAC,EAAE;;MAYlE;;sCAEiB,WAAW;;;+CAVrB,sBAAsB,aAAa,OAaA,EAAE;;;;AAIjE;;;;;;;;AAmBA,SAAgB,uCACd,UACA,QACQ;CACR,MAAM,EAAE,UAAU,YAAY,gBAAgB,YAAY,aAAa,SAAS,iBAC9E;CAEF,IAAI,CAAC,cACH,MAAM,IAAI,MAAM,uDAAuD,SAAS,EAAE;CAGpF,MAAM,EAAE,kBAAkB,uBAAuB;CAEjD,MAAM,iBAAiB,SAAY;;WAE1B,WAAW,cAAc,KAAK,UAAU,cAAc,EAAE;WACxD,WAAW,cAAc,KAAK,UAAU,CAAC,GAAG,gBAAgB,GAAG,UAAU,CAAC,EAAE;;;CAIrF,MAAM,oBAAoB,sBAAsB,aAAa,OAAO;CAGpE,IAAI,aAAa,sBAAsB,sBAAsB,aAAa,mBACxE,OAAO,SAAY;;;;;;eAMR,aAAa,mBAAmB,WAAW,mBAAmB;;oDAEzB,iBAAiB;YACzD,WAAW,yCAAyC,aAAa,SAAS,KAAK,aAAa,mBAAmB,KAAK,aAAa,kBAAkB;;MAEzJ,eAAe;;sCAEiB,WAAW;;;+CAGF,kBAAkB;;;;CAQ/D,IAAI,CAAC,aAAa,mBAChB,MAAM,IAAI,MACR,qBAAqB,aAAa,SAAS,6CAA6C,SAAS,EACnG;CAGF,OAAO,SAAY;;;;;;;oDAO+B,iBAAiB;YACzD,WAAW,yCAAyC,aAAa,SAAS,YAAY,aAAa,kBAAkB;;MAE3H,eAAe;;sCAEiB,WAAW;;;+CAGF,kBAAkB;;;;AAIjE;;;;;AClRA,MAAa,kBAAkB;AAkC/B,SAAS,sBAAsB,QAG7B;CACA,OAAO;EACL,iBAAiB,EAAE,QAAQ,aAAa;EACxC,iBAAiB,EAAE,QAAQ,aAAa;CAC1C;AACF;;;;;;;;;;AAUA,SAAgB,WAAW,SAAgE;CACzF,OAAO;EACL,IAAI;EACJ,aAAa;EACb,cAAc;EAEd,MAAM,gBAAgB,KAAwE;GAC5F,MAAM,QAAkC,CAAC;GAGzC,MAAM,UAAU,IAAI,OAAQ,eAAe,IAAI,IAAI,KAAK,OAAQ;GAChE,MAAM,iBAAiB,sBAAsB,IAAI,aAAa,kBAAkB;GAEhF,KAAK,MAAM,MAAM,IAAI,UACnB,KAAK,MAAM,CAAC,UAAU,SAAS,OAAO,QAAQ,GAAG,KAAK,GAAG;IAKvD,MAAM,UAAU,eAAe,MAJhB,cACb,GAAG,WAAW,IAAI,QAAQ,GAC1B,iCAAiC,UAEO,CAAC;IAG3C,IACE,eAAe,mBACf,WACA,aAAa,QAAQ,OAAO,cAE5B,QAAQ,YAAY,KAAK;KACvB,QAAQ,QAAQ,OAAO;KACvB,YAAY;MACV,OAAO;MACP,QAAQ;KACV;IACF,CAAC;IAIH,MAAM,KAAK;KACT,MAAM,KAAK,KAAK,IAAI,aAAa,UAAU,QAAQ,GAAG,QAAQ,SAAS,OAAO;KAC9E,SAAS;KACT,cAAc;IAChB,CAAC;IAED,MAAM,mBAAmB,KAAK,KAC5B,IAAI,aAAa,UACjB,QACA,GAAG,QAAQ,SAAS,WACtB;IAGA,IAAI,QAAQ,gBAAgB,QAAQ,aAAa,kBAAkB;KAEjE,IAAI;KACJ,IAAI,QAAQ,aAAa,oBAAoB,QAAQ,aAAa,oBAAoB;MACpF,MAAM,eAAe,KAAK,SACxB,KAAK,QAAQ,gBAAgB,GAC7B,QAAQ,aAAa,gBACvB;MACA,qBAAqB,aAAa,QAAQ,SAAS,EAAE,CAAC,CAAC,WAAW,GAAG,IACjE,aAAa,QAAQ,SAAS,EAAE,IAChC,KAAK,aAAa,QAAQ,SAAS,EAAE;KAC3C;KAUA,MAAM,gBAAgB,uCAAuC,SAAS;MAJpE,kBAHuB,KAAK,SAAS,KAAK,QAAQ,gBAAgB,GAAG,IAAI,UAG1D;MACf;KAGyE,CAAC;KAE5E,MAAM,KAAK;MACT,MAAM;MACN,SAAS;KACX,CAAC;IACH,OAAO;KAEL,MAAM,eAAe,KAAK,SAAS,KAAK,QAAQ,gBAAgB,GAAG,QAAQ,UAAU;KAIrF,MAAM,gBAAgB,0BAA0B,SAHzB,aAAa,QAAQ,SAAS,EAAE,CAAC,CAAC,WAAW,GAAG,IACnE,aAAa,QAAQ,SAAS,EAAE,IAChC,KAAK,aAAa,QAAQ,SAAS,EAAE,GAC8B;KAEvE,MAAM,KAAK;MACT,MAAM;MACN,SAAS;KACX,CAAC;IACH;GACF;GAGF,IAAI,SAAS;IAEX,MAAM,KAAK;KACT,MAAM,KAAK,KAAK,IAAI,aAAa,UAAU,QAAQ,QAAQ;KAC3D,SAAS;KACT,cAAc;IAChB,CAAC;IAGD,MAAM,KAAK;KACT,MAAM,KAAK,KAAK,IAAI,aAAa,UAAU,QAAQ,GAAG,QAAQ,KAAK,WAAW;KAC9E,SAAS,0BAA0B;MACjC,eAAe,QAAQ,OAAO;MAC9B,cAAc,QAAQ,OAAO;MAC7B,sBAAsB,eAAe;KACvC,CAAC;IACH,CAAC;GACH;GAEA,OAAO,EAAE,MAAM;EACjB;CACF;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"service_pb-BoLM0X4K.mjs","names":[],"sources":["../../tailor-proto/src/tailor/v1/events_resource_pb.js","../../tailor-proto/src/tailor/v1/events_pb.js","../../tailor-proto/src/tailor/v1/function_pb.js","../../tailor-proto/src/tailor/v1/function_registry_pb.js","../../tailor-proto/src/tailor/v1/metadata_resource_pb.js","../../tailor-proto/src/tailor/v1/metadata_pb.js","../../tailor-proto/src/tailor/v1/meter_pb.js","../../tailor-proto/src/tailor/v1/stateflow_resource_pb.js","../../tailor-proto/src/tailor/v1/stateflow_pb.js","../../tailor-proto/src/tailor/v1/telemetryrouter_resource_pb.js","../../tailor-proto/src/tailor/v1/telemetryrouter_pb.js","../../tailor-proto/src/tailor/v1/workspace_pb.js","../../tailor-proto/src/tailor/v1/service_pb.js"],"sourcesContent":["// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/events_resource.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_google_protobuf_struct, file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\n\n/**\n * Describes the file tailor/v1/events_resource.proto.\n */\nexport const file_tailor_v1_events_resource = /*@__PURE__*/\n fileDesc(\"Ch90YWlsb3IvdjEvZXZlbnRzX3Jlc291cmNlLnByb3RvEgl0YWlsb3IudjEitgEKDkRhdGFwbGFuZUV2ZW50EhcKD2lkZW1wb3RlbmN5X2tleRgBIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEgoKZXZlbnRfdHlwZRgDIAEoCRIQCghhY3Rvcl9pZBgEIAEoCRIlCgRkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIoCgR0aW1lGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLBAQoXQ29udHJvbHBsYW5lQWN0aXZpdHlMb2cSFwoPaWRlbXBvdGVuY3lfa2V5GAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIQCghhY3Rvcl9pZBgDIAEoCRIQCghyZXNvdXJjZRgEIAEoCRIOCgZhY3Rpb24YBSABKAkSEgoKaWRlbnRpZmllchgGIAEoCRIvCgtvcGVyYXRlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBiBnByb3RvMw\", [file_google_protobuf_struct, file_google_protobuf_timestamp]);\n\n/**\n * Describes the message tailor.v1.DataplaneEvent.\n * Use `create(DataplaneEventSchema)` to create a new message.\n */\nexport const DataplaneEventSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_events_resource, 0);\n\n/**\n * Describes the message tailor.v1.ControlplaneActivityLog.\n * Use `create(ControlplaneActivityLogSchema)` to create a new message.\n */\nexport const ControlplaneActivityLogSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_events_resource, 1);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/events.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_tailor_v1_events_resource } from \"./events_resource_pb\";\nimport { file_tailor_v1_resource } from \"./resource_pb\";\n\n/**\n * Describes the file tailor/v1/events.proto.\n */\nexport const file_tailor_v1_events = /*@__PURE__*/\n fileDesc(\"ChZ0YWlsb3IvdjEvZXZlbnRzLnByb3RvEgl0YWlsb3IudjEiuAEKGkxpc3REYXRhcGxhbmVFdmVudHNSZXF1ZXN0EhIKCnBhZ2VfdG9rZW4YASABKAkSEQoJcGFnZV9zaXplGAIgASgNEh4KDHdvcmtzcGFjZV9pZBgDIAEoCUIIukgFcgOwAQESMAoOcGFnZV9kaXJlY3Rpb24YBCABKA4yGC50YWlsb3IudjEuUGFnZURpcmVjdGlvbhIhCgZmaWx0ZXIYBSABKAsyES50YWlsb3IudjEuRmlsdGVyInYKG0xpc3REYXRhcGxhbmVFdmVudHNSZXNwb25zZRIXCg9uZXh0X3BhZ2VfdG9rZW4YASABKAkSKQoGZXZlbnRzGAIgAygLMhkudGFpbG9yLnYxLkRhdGFwbGFuZUV2ZW50EhMKC3RvdGFsX2NvdW50GAMgASgDIsEBCiNMaXN0Q29udHJvbHBsYW5lQWN0aXZpdHlMb2dzUmVxdWVzdBISCgpwYWdlX3Rva2VuGAEgASgJEhEKCXBhZ2Vfc2l6ZRgCIAEoDRIeCgx3b3Jrc3BhY2VfaWQYAyABKAlCCLpIBXIDsAEBEjAKDnBhZ2VfZGlyZWN0aW9uGAQgASgOMhgudGFpbG9yLnYxLlBhZ2VEaXJlY3Rpb24SIQoGZmlsdGVyGAUgASgLMhEudGFpbG9yLnYxLkZpbHRlciKGAQokTGlzdENvbnRyb2xwbGFuZUFjdGl2aXR5TG9nc1Jlc3BvbnNlEhcKD25leHRfcGFnZV90b2tlbhgBIAEoCRIwCgRsb2dzGAIgAygLMiIudGFpbG9yLnYxLkNvbnRyb2xwbGFuZUFjdGl2aXR5TG9nEhMKC3RvdGFsX2NvdW50GAMgASgDYgZwcm90bzM\", [file_buf_validate_validate, file_tailor_v1_events_resource, file_tailor_v1_resource]);\n\n/**\n * Describes the message tailor.v1.ListDataplaneEventsRequest.\n * Use `create(ListDataplaneEventsRequestSchema)` to create a new message.\n */\nexport const ListDataplaneEventsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_events, 0);\n\n/**\n * Describes the message tailor.v1.ListDataplaneEventsResponse.\n * Use `create(ListDataplaneEventsResponseSchema)` to create a new message.\n */\nexport const ListDataplaneEventsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_events, 1);\n\n/**\n * Describes the message tailor.v1.ListControlplaneActivityLogsRequest.\n * Use `create(ListControlplaneActivityLogsRequestSchema)` to create a new message.\n */\nexport const ListControlplaneActivityLogsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_events, 2);\n\n/**\n * Describes the message tailor.v1.ListControlplaneActivityLogsResponse.\n * Use `create(ListControlplaneActivityLogsResponseSchema)` to create a new message.\n */\nexport const ListControlplaneActivityLogsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_events, 3);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/function.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_tailor_v1_auth_resource } from \"./auth_resource_pb\";\nimport { file_tailor_v1_function_resource } from \"./function_resource_pb\";\nimport { file_tailor_v1_resource } from \"./resource_pb\";\n\n/**\n * Describes the file tailor/v1/function.proto.\n */\nexport const file_tailor_v1_function = /*@__PURE__*/\n fileDesc(\"Chh0YWlsb3IvdjEvZnVuY3Rpb24ucHJvdG8SCXRhaWxvci52MSKcAQoVVGVzdEV4ZWNTY3JpcHRSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESDAoEbmFtZRgCIAEoCRIMCgRjb2RlGAMgASgJEhAKA2FyZxgEIAEoCUgAiAEBEicKB2ludm9rZXIYBSABKAsyFi50YWlsb3IudjEuQXV0aEludm9rZXJCBgoEX2FyZ0oECAYQByJOChZUZXN0RXhlY1NjcmlwdFJlc3BvbnNlEg4KBnJlc3VsdBgBIAEoCRIeCgxleGVjdXRpb25faWQYAyABKAlCCLpIBXIDsAEBSgQIAhADIl0KG0dldEZ1bmN0aW9uRXhlY3V0aW9uUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEh4KDGV4ZWN1dGlvbl9pZBgCIAEoCUIIukgFcgOwAQEiTwocR2V0RnVuY3Rpb25FeGVjdXRpb25SZXNwb25zZRIvCglleGVjdXRpb24YASABKAsyHC50YWlsb3IudjEuRnVuY3Rpb25FeGVjdXRpb24izAEKHUxpc3RGdW5jdGlvbkV4ZWN1dGlvbnNSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESEgoKcGFnZV90b2tlbhgCIAEoCRIRCglwYWdlX3NpemUYAyABKA0SMAoOcGFnZV9kaXJlY3Rpb24YBCABKA4yGC50YWlsb3IudjEuUGFnZURpcmVjdGlvbhIhCgZmaWx0ZXIYBSABKAsyES50YWlsb3IudjEuRmlsdGVyEg8KB3NvcnRfYnkYBiABKAkigAEKHkxpc3RGdW5jdGlvbkV4ZWN1dGlvbnNSZXNwb25zZRIwCgpleGVjdXRpb25zGAEgAygLMhwudGFpbG9yLnYxLkZ1bmN0aW9uRXhlY3V0aW9uEhcKD25leHRfcGFnZV90b2tlbhgCIAEoCRITCgt0b3RhbF9jb3VudBgDIAEoA2IGcHJvdG8z\", [file_buf_validate_validate, file_tailor_v1_auth_resource, file_tailor_v1_function_resource, file_tailor_v1_resource]);\n\n/**\n * Describes the message tailor.v1.TestExecScriptRequest.\n * Use `create(TestExecScriptRequestSchema)` to create a new message.\n */\nexport const TestExecScriptRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function, 0);\n\n/**\n * Describes the message tailor.v1.TestExecScriptResponse.\n * Use `create(TestExecScriptResponseSchema)` to create a new message.\n */\nexport const TestExecScriptResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function, 1);\n\n/**\n * Describes the message tailor.v1.GetFunctionExecutionRequest.\n * Use `create(GetFunctionExecutionRequestSchema)` to create a new message.\n */\nexport const GetFunctionExecutionRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function, 2);\n\n/**\n * Describes the message tailor.v1.GetFunctionExecutionResponse.\n * Use `create(GetFunctionExecutionResponseSchema)` to create a new message.\n */\nexport const GetFunctionExecutionResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function, 3);\n\n/**\n * Describes the message tailor.v1.ListFunctionExecutionsRequest.\n * Use `create(ListFunctionExecutionsRequestSchema)` to create a new message.\n */\nexport const ListFunctionExecutionsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function, 4);\n\n/**\n * Describes the message tailor.v1.ListFunctionExecutionsResponse.\n * Use `create(ListFunctionExecutionsResponseSchema)` to create a new message.\n */\nexport const ListFunctionExecutionsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function, 5);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/function_registry.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\nimport { file_tailor_v1_resource } from \"./resource_pb\";\n\n/**\n * Describes the file tailor/v1/function_registry.proto.\n */\nexport const file_tailor_v1_function_registry = /*@__PURE__*/\n fileDesc(\"CiF0YWlsb3IvdjEvZnVuY3Rpb25fcmVnaXN0cnkucHJvdG8SCXRhaWxvci52MSLhAQoQRnVuY3Rpb25SZWdpc3RyeRIKCgJpZBgBIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRISCgpzaXplX2J5dGVzGAQgASgDEhQKDGNvbnRlbnRfaGFzaBgFIAEoCRITCgtkZXNjcmlwdGlvbhgGIAEoCRIuCgpjcmVhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJyCh1DcmVhdGVGdW5jdGlvblJlZ2lzdHJ5UmVxdWVzdBI1CgRpbmZvGAEgASgLMiUudGFpbG9yLnYxLkNyZWF0ZUZ1bmN0aW9uUmVnaXN0cnlJbmZvSAASDwoFY2h1bmsYAiABKAxIAEIJCgdwYXlsb2FkItoBChpDcmVhdGVGdW5jdGlvblJlZ2lzdHJ5SW5mbxIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEjIKBG5hbWUYAiABKAlCJLpIIXIfEAEY/wEyGF5bYS16QS1aXVthLXpBLVowLTlfLV0qJBITCgtkZXNjcmlwdGlvbhgDIAEoCRIgCgpzaXplX2J5dGVzGAQgASgDQgy6SAkiBxiAgIAKIAASMQoMY29udGVudF9oYXNoGAUgASgJQhu6SBhyFjIRXlthLWZBLUYwLTldezY0fSSYAUAiTwoeQ3JlYXRlRnVuY3Rpb25SZWdpc3RyeVJlc3BvbnNlEi0KCGZ1bmN0aW9uGAEgASgLMhsudGFpbG9yLnYxLkZ1bmN0aW9uUmVnaXN0cnkicgodVXBkYXRlRnVuY3Rpb25SZWdpc3RyeVJlcXVlc3QSNQoEaW5mbxgBIAEoCzIlLnRhaWxvci52MS5VcGRhdGVGdW5jdGlvblJlZ2lzdHJ5SW5mb0gAEg8KBWNodW5rGAIgASgMSABCCQoHcGF5bG9hZCLaAQoaVXBkYXRlRnVuY3Rpb25SZWdpc3RyeUluZm8SHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABARIyCgRuYW1lGAIgASgJQiS6SCFyHxABGP8BMhheW2EtekEtWl1bYS16QS1aMC05Xy1dKiQSEwoLZGVzY3JpcHRpb24YAyABKAkSIAoKc2l6ZV9ieXRlcxgEIAEoA0IMukgJIgcYgICACiAAEjEKDGNvbnRlbnRfaGFzaBgFIAEoCUIbukgYchYyEV5bYS1mQS1GMC05XXs2NH0kmAFAIk8KHlVwZGF0ZUZ1bmN0aW9uUmVnaXN0cnlSZXNwb25zZRItCghmdW5jdGlvbhgBIAEoCzIbLnRhaWxvci52MS5GdW5jdGlvblJlZ2lzdHJ5IlMKGkdldEZ1bmN0aW9uUmVnaXN0cnlSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESFQoEbmFtZRgCIAEoCUIHukgEcgIQASJMChtHZXRGdW5jdGlvblJlZ2lzdHJ5UmVzcG9uc2USLQoIZnVuY3Rpb24YASABKAsyGy50YWlsb3IudjEuRnVuY3Rpb25SZWdpc3RyeSLMAQodTGlzdEZ1bmN0aW9uUmVnaXN0cmllc1JlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABARISCgpwYWdlX3Rva2VuGAIgASgJEhEKCXBhZ2Vfc2l6ZRgDIAEoDRIwCg5wYWdlX2RpcmVjdGlvbhgEIAEoDjIYLnRhaWxvci52MS5QYWdlRGlyZWN0aW9uEiEKBmZpbHRlchgFIAEoCzIRLnRhaWxvci52MS5GaWx0ZXISDwoHc29ydF9ieRgGIAEoCSJ+Ch5MaXN0RnVuY3Rpb25SZWdpc3RyaWVzUmVzcG9uc2USLgoJZnVuY3Rpb25zGAEgAygLMhsudGFpbG9yLnYxLkZ1bmN0aW9uUmVnaXN0cnkSFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJEhMKC3RvdGFsX2NvdW50GAMgASgDIlYKHURlbGV0ZUZ1bmN0aW9uUmVnaXN0cnlSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESFQoEbmFtZRgCIAEoCUIHukgEcgIQASIgCh5EZWxldGVGdW5jdGlvblJlZ2lzdHJ5UmVzcG9uc2UipwEKJURvd25sb2FkRnVuY3Rpb25SZWdpc3RyeVNjcmlwdFJlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABARIVCgRuYW1lGAIgASgJQge6SARyAhABEjYKDGNvbnRlbnRfaGFzaBgDIAEoCUIbukgYchYyEV5bYS1mQS1GMC05XXs2NH0kmAFASACIAQFCDwoNX2NvbnRlbnRfaGFzaCKDAQomRG93bmxvYWRGdW5jdGlvblJlZ2lzdHJ5U2NyaXB0UmVzcG9uc2USPQoIbWV0YWRhdGEYASABKAsyKS50YWlsb3IudjEuRnVuY3Rpb25SZWdpc3RyeVNjcmlwdE1ldGFkYXRhSAASDwoFY2h1bmsYAiABKAxIAEIJCgdwYXlsb2FkIk8KHkZ1bmN0aW9uUmVnaXN0cnlTY3JpcHRNZXRhZGF0YRItCghmdW5jdGlvbhgBIAEoCzIbLnRhaWxvci52MS5GdW5jdGlvblJlZ2lzdHJ5YgZwcm90bzM\", [file_buf_validate_validate, file_google_protobuf_timestamp, file_tailor_v1_resource]);\n\n/**\n * Describes the message tailor.v1.FunctionRegistry.\n * Use `create(FunctionRegistrySchema)` to create a new message.\n */\nexport const FunctionRegistrySchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 0);\n\n/**\n * Describes the message tailor.v1.CreateFunctionRegistryRequest.\n * Use `create(CreateFunctionRegistryRequestSchema)` to create a new message.\n */\nexport const CreateFunctionRegistryRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 1);\n\n/**\n * Describes the message tailor.v1.CreateFunctionRegistryInfo.\n * Use `create(CreateFunctionRegistryInfoSchema)` to create a new message.\n */\nexport const CreateFunctionRegistryInfoSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 2);\n\n/**\n * Describes the message tailor.v1.CreateFunctionRegistryResponse.\n * Use `create(CreateFunctionRegistryResponseSchema)` to create a new message.\n */\nexport const CreateFunctionRegistryResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 3);\n\n/**\n * Describes the message tailor.v1.UpdateFunctionRegistryRequest.\n * Use `create(UpdateFunctionRegistryRequestSchema)` to create a new message.\n */\nexport const UpdateFunctionRegistryRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 4);\n\n/**\n * Describes the message tailor.v1.UpdateFunctionRegistryInfo.\n * Use `create(UpdateFunctionRegistryInfoSchema)` to create a new message.\n */\nexport const UpdateFunctionRegistryInfoSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 5);\n\n/**\n * Describes the message tailor.v1.UpdateFunctionRegistryResponse.\n * Use `create(UpdateFunctionRegistryResponseSchema)` to create a new message.\n */\nexport const UpdateFunctionRegistryResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 6);\n\n/**\n * Describes the message tailor.v1.GetFunctionRegistryRequest.\n * Use `create(GetFunctionRegistryRequestSchema)` to create a new message.\n */\nexport const GetFunctionRegistryRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 7);\n\n/**\n * Describes the message tailor.v1.GetFunctionRegistryResponse.\n * Use `create(GetFunctionRegistryResponseSchema)` to create a new message.\n */\nexport const GetFunctionRegistryResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 8);\n\n/**\n * Describes the message tailor.v1.ListFunctionRegistriesRequest.\n * Use `create(ListFunctionRegistriesRequestSchema)` to create a new message.\n */\nexport const ListFunctionRegistriesRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 9);\n\n/**\n * Describes the message tailor.v1.ListFunctionRegistriesResponse.\n * Use `create(ListFunctionRegistriesResponseSchema)` to create a new message.\n */\nexport const ListFunctionRegistriesResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 10);\n\n/**\n * Describes the message tailor.v1.DeleteFunctionRegistryRequest.\n * Use `create(DeleteFunctionRegistryRequestSchema)` to create a new message.\n */\nexport const DeleteFunctionRegistryRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 11);\n\n/**\n * Describes the message tailor.v1.DeleteFunctionRegistryResponse.\n * Use `create(DeleteFunctionRegistryResponseSchema)` to create a new message.\n */\nexport const DeleteFunctionRegistryResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 12);\n\n/**\n * Describes the message tailor.v1.DownloadFunctionRegistryScriptRequest.\n * Use `create(DownloadFunctionRegistryScriptRequestSchema)` to create a new message.\n */\nexport const DownloadFunctionRegistryScriptRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 13);\n\n/**\n * Describes the message tailor.v1.DownloadFunctionRegistryScriptResponse.\n * Use `create(DownloadFunctionRegistryScriptResponseSchema)` to create a new message.\n */\nexport const DownloadFunctionRegistryScriptResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 14);\n\n/**\n * Describes the message tailor.v1.FunctionRegistryScriptMetadata.\n * Use `create(FunctionRegistryScriptMetadataSchema)` to create a new message.\n */\nexport const FunctionRegistryScriptMetadataSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_function_registry, 15);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/metadata_resource.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\n\n/**\n * Describes the file tailor/v1/metadata_resource.proto.\n */\nexport const file_tailor_v1_metadata_resource = /*@__PURE__*/\n fileDesc(\"CiF0YWlsb3IvdjEvbWV0YWRhdGFfcmVzb3VyY2UucHJvdG8SCXRhaWxvci52MSJqCghNZXRhZGF0YRIvCgZsYWJlbHMYASADKAsyHy50YWlsb3IudjEuTWV0YWRhdGEuTGFiZWxzRW50cnkaLQoLTGFiZWxzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AWIGcHJvdG8z\");\n\n/**\n * Describes the message tailor.v1.Metadata.\n * Use `create(MetadataSchema)` to create a new message.\n */\nexport const MetadataSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_metadata_resource, 0);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/metadata.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_tailor_v1_metadata_resource } from \"./metadata_resource_pb\";\n\n/**\n * Describes the file tailor/v1/metadata.proto.\n */\nexport const file_tailor_v1_metadata = /*@__PURE__*/\n fileDesc(\"Chh0YWlsb3IvdjEvbWV0YWRhdGEucHJvdG8SCXRhaWxvci52MSLNAgoSU2V0TWV0YWRhdGFSZXF1ZXN0EocBCgN0cm4YASABKAlCerpId3J1MnNedHJuOnYxOndvcmtzcGFjZTpbMC05YS1mQS1GXXs4fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXsxMn0oOlthLXpBLVowLTlfLjoqLV0rKT8kEn4KBmxhYmVscxgCIAMoCzIpLnRhaWxvci52MS5TZXRNZXRhZGF0YVJlcXVlc3QuTGFiZWxzRW50cnlCQ7pIQJoBPSIbchkyF15bYS16XVthLXowLTlfLV17MCw2Mn0kKh5yHDIaXiR8XlthLXpdW2EtejAtOV8tXXswLDYyfSQaLQoLTGFiZWxzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASI8ChNTZXRNZXRhZGF0YVJlc3BvbnNlEiUKCG1ldGFkYXRhGAEgASgLMhMudGFpbG9yLnYxLk1ldGFkYXRhIp4BChJHZXRNZXRhZGF0YVJlcXVlc3QShwEKA3RybhgBIAEoCUJ6ukh3cnUyc150cm46djE6d29ya3NwYWNlOlswLTlhLWZBLUZdezh9LVswLTlhLWZBLUZdezR9LVswLTlhLWZBLUZdezR9LVswLTlhLWZBLUZdezR9LVswLTlhLWZBLUZdezEyfSg6W2EtekEtWjAtOV8uOiotXSspPyQiPAoTR2V0TWV0YWRhdGFSZXNwb25zZRIlCghtZXRhZGF0YRgBIAEoCzITLnRhaWxvci52MS5NZXRhZGF0YWIGcHJvdG8z\", [file_buf_validate_validate, file_tailor_v1_metadata_resource]);\n\n/**\n * Describes the message tailor.v1.SetMetadataRequest.\n * Use `create(SetMetadataRequestSchema)` to create a new message.\n */\nexport const SetMetadataRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_metadata, 0);\n\n/**\n * Describes the message tailor.v1.SetMetadataResponse.\n * Use `create(SetMetadataResponseSchema)` to create a new message.\n */\nexport const SetMetadataResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_metadata, 1);\n\n/**\n * Describes the message tailor.v1.GetMetadataRequest.\n * Use `create(GetMetadataRequestSchema)` to create a new message.\n */\nexport const GetMetadataRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_metadata, 2);\n\n/**\n * Describes the message tailor.v1.GetMetadataResponse.\n * Use `create(GetMetadataResponseSchema)` to create a new message.\n */\nexport const GetMetadataResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_metadata, 3);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/meter.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_google_protobuf_duration, file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\n\n/**\n * Describes the file tailor/v1/meter.proto.\n */\nexport const file_tailor_v1_meter = /*@__PURE__*/\n fileDesc(\"ChV0YWlsb3IvdjEvbWV0ZXIucHJvdG8SCXRhaWxvci52MSLsAQodTGlzdE1ldGVyUmVxdWVzdENvdW50c1JlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABARI2CgpzdGFydF90aW1lGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIGukgDyAEBEjQKCGVuZF90aW1lGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIGukgDyAEBEj0KBHN0ZXAYBCABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25CFLpIEcgBAaoBCyIECICjBTIDCJAcIsUCCh5MaXN0TWV0ZXJSZXF1ZXN0Q291bnRzUmVzcG9uc2USTgoOcmVxdWVzdF9jb3VudHMYASADKAsyNi50YWlsb3IudjEuTGlzdE1ldGVyUmVxdWVzdENvdW50c1Jlc3BvbnNlLlJlcXVlc3RDb3VudBppCgxSZXF1ZXN0Q291bnQSGAoQYXBwbGljYXRpb25fbmFtZRgBIAEoCRI/CgZ2YWx1ZXMYAiADKAsyLy50YWlsb3IudjEuTGlzdE1ldGVyUmVxdWVzdENvdW50c1Jlc3BvbnNlLlZhbHVlGmgKBVZhbHVlEigKBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiYKAnRvGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBINCgVjb3VudBgDIAEoAyLuAQofTGlzdE1ldGVyRXhlY3V0aW9uQ291bnRzUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEjYKCnN0YXJ0X3RpbWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQESNAoIZW5kX3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQESPQoEc3RlcBgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkIUukgRyAEBqgELIgQIgKMFMgMIkBwizQIKIExpc3RNZXRlckV4ZWN1dGlvbkNvdW50c1Jlc3BvbnNlElQKEGV4ZWN1dGlvbl9jb3VudHMYASADKAsyOi50YWlsb3IudjEuTGlzdE1ldGVyRXhlY3V0aW9uQ291bnRzUmVzcG9uc2UuRXhlY3V0aW9uQ291bnQaaQoORXhlY3V0aW9uQ291bnQSFAoMc2VydmljZV9uYW1lGAEgASgJEkEKBnZhbHVlcxgCIAMoCzIxLnRhaWxvci52MS5MaXN0TWV0ZXJFeGVjdXRpb25Db3VudHNSZXNwb25zZS5WYWx1ZRpoCgVWYWx1ZRIoCgRmcm9tGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBImCgJ0bxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFY291bnQYAyABKAMi6gEKG0xpc3RNZXRlckV2ZW50Q291bnRzUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEjYKCnN0YXJ0X3RpbWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQESNAoIZW5kX3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQESPQoEc3RlcBgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkIUukgRyAEBqgELIgQIgKMFMgMIkBwitQIKHExpc3RNZXRlckV2ZW50Q291bnRzUmVzcG9uc2USSAoMZXZlbnRfY291bnRzGAEgAygLMjIudGFpbG9yLnYxLkxpc3RNZXRlckV2ZW50Q291bnRzUmVzcG9uc2UuRXZlbnRDb3VudBphCgpFdmVudENvdW50EhQKDHNlcnZpY2VfbmFtZRgBIAEoCRI9CgZ2YWx1ZXMYAiADKAsyLS50YWlsb3IudjEuTGlzdE1ldGVyRXZlbnRDb3VudHNSZXNwb25zZS5WYWx1ZRpoCgVWYWx1ZRIoCgRmcm9tGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBImCgJ0bxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFY291bnQYAyABKAMi7AEKHUxpc3RNZXRlckFJVG9rZW5Vc2FnZXNSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESNgoKc3RhcnRfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCBrpIA8gBARI0CghlbmRfdGltZRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCBrpIA8gBARI9CgRzdGVwGAQgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQhS6SBHIAQGqAQsiBAiAowUyAwiQHCLbAgoeTGlzdE1ldGVyQUlUb2tlblVzYWdlc1Jlc3BvbnNlEkQKBnVzYWdlcxgBIAMoCzI0LnRhaWxvci52MS5MaXN0TWV0ZXJBSVRva2VuVXNhZ2VzUmVzcG9uc2UuVG9rZW5Vc2FnZRqIAQoKVG9rZW5Vc2FnZRIWCg5haWdhdGV3YXlfbmFtZRgBIAEoCRINCgVtb2RlbBgCIAEoCRISCgp0b2tlbl90eXBlGAMgASgJEj8KBnZhbHVlcxgEIAMoCzIvLnRhaWxvci52MS5MaXN0TWV0ZXJBSVRva2VuVXNhZ2VzUmVzcG9uc2UuVmFsdWUaaAoFVmFsdWUSKAoEZnJvbRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASJgoCdG8YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg0KBWNvdW50GAMgASgDYgZwcm90bzM\", [file_buf_validate_validate, file_google_protobuf_duration, file_google_protobuf_timestamp]);\n\n/**\n * Describes the message tailor.v1.ListMeterRequestCountsRequest.\n * Use `create(ListMeterRequestCountsRequestSchema)` to create a new message.\n */\nexport const ListMeterRequestCountsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 0);\n\n/**\n * Describes the message tailor.v1.ListMeterRequestCountsResponse.\n * Use `create(ListMeterRequestCountsResponseSchema)` to create a new message.\n */\nexport const ListMeterRequestCountsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 1);\n\n/**\n * Describes the message tailor.v1.ListMeterRequestCountsResponse.RequestCount.\n * Use `create(ListMeterRequestCountsResponse_RequestCountSchema)` to create a new message.\n */\nexport const ListMeterRequestCountsResponse_RequestCountSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 1, 0);\n\n/**\n * Describes the message tailor.v1.ListMeterRequestCountsResponse.Value.\n * Use `create(ListMeterRequestCountsResponse_ValueSchema)` to create a new message.\n */\nexport const ListMeterRequestCountsResponse_ValueSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 1, 1);\n\n/**\n * Describes the message tailor.v1.ListMeterExecutionCountsRequest.\n * Use `create(ListMeterExecutionCountsRequestSchema)` to create a new message.\n */\nexport const ListMeterExecutionCountsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 2);\n\n/**\n * Describes the message tailor.v1.ListMeterExecutionCountsResponse.\n * Use `create(ListMeterExecutionCountsResponseSchema)` to create a new message.\n */\nexport const ListMeterExecutionCountsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 3);\n\n/**\n * Describes the message tailor.v1.ListMeterExecutionCountsResponse.ExecutionCount.\n * Use `create(ListMeterExecutionCountsResponse_ExecutionCountSchema)` to create a new message.\n */\nexport const ListMeterExecutionCountsResponse_ExecutionCountSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 3, 0);\n\n/**\n * Describes the message tailor.v1.ListMeterExecutionCountsResponse.Value.\n * Use `create(ListMeterExecutionCountsResponse_ValueSchema)` to create a new message.\n */\nexport const ListMeterExecutionCountsResponse_ValueSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 3, 1);\n\n/**\n * Describes the message tailor.v1.ListMeterEventCountsRequest.\n * Use `create(ListMeterEventCountsRequestSchema)` to create a new message.\n */\nexport const ListMeterEventCountsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 4);\n\n/**\n * Describes the message tailor.v1.ListMeterEventCountsResponse.\n * Use `create(ListMeterEventCountsResponseSchema)` to create a new message.\n */\nexport const ListMeterEventCountsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 5);\n\n/**\n * Describes the message tailor.v1.ListMeterEventCountsResponse.EventCount.\n * Use `create(ListMeterEventCountsResponse_EventCountSchema)` to create a new message.\n */\nexport const ListMeterEventCountsResponse_EventCountSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 5, 0);\n\n/**\n * Describes the message tailor.v1.ListMeterEventCountsResponse.Value.\n * Use `create(ListMeterEventCountsResponse_ValueSchema)` to create a new message.\n */\nexport const ListMeterEventCountsResponse_ValueSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 5, 1);\n\n/**\n * Describes the message tailor.v1.ListMeterAITokenUsagesRequest.\n * Use `create(ListMeterAITokenUsagesRequestSchema)` to create a new message.\n */\nexport const ListMeterAITokenUsagesRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 6);\n\n/**\n * Describes the message tailor.v1.ListMeterAITokenUsagesResponse.\n * Use `create(ListMeterAITokenUsagesResponseSchema)` to create a new message.\n */\nexport const ListMeterAITokenUsagesResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 7);\n\n/**\n * Describes the message tailor.v1.ListMeterAITokenUsagesResponse.TokenUsage.\n * Use `create(ListMeterAITokenUsagesResponse_TokenUsageSchema)` to create a new message.\n */\nexport const ListMeterAITokenUsagesResponse_TokenUsageSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 7, 0);\n\n/**\n * Describes the message tailor.v1.ListMeterAITokenUsagesResponse.Value.\n * Use `create(ListMeterAITokenUsagesResponse_ValueSchema)` to create a new message.\n */\nexport const ListMeterAITokenUsagesResponse_ValueSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_meter, 7, 1);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/stateflow_resource.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_tailor_v1_resource } from \"./resource_pb\";\n\n/**\n * Describes the file tailor/v1/stateflow_resource.proto.\n */\nexport const file_tailor_v1_stateflow_resource = /*@__PURE__*/\n fileDesc(\"CiJ0YWlsb3IvdjEvc3RhdGVmbG93X3Jlc291cmNlLnByb3RvEgl0YWlsb3IudjEilQEKEFN0YXRlZmxvd1NlcnZpY2USJwoJbmFtZXNwYWNlGAEgASgLMhQudGFpbG9yLnYxLk5hbWVzcGFjZRI6CgthZG1pbl91c2VycxgCIAMoCzIlLnRhaWxvci52MS5TdGF0ZWZsb3dTZXJ2aWNlLkFkbWluVXNlchocCglBZG1pblVzZXISDwoHdXNlcl9pZBgBIAEoCWIGcHJvdG8z\", [file_tailor_v1_resource]);\n\n/**\n * Describes the message tailor.v1.StateflowService.\n * Use `create(StateflowServiceSchema)` to create a new message.\n */\nexport const StateflowServiceSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow_resource, 0);\n\n/**\n * Describes the message tailor.v1.StateflowService.AdminUser.\n * Use `create(StateflowService_AdminUserSchema)` to create a new message.\n */\nexport const StateflowService_AdminUserSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow_resource, 0, 0);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/stateflow.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_tailor_v1_resource } from \"./resource_pb\";\nimport { file_tailor_v1_stateflow_resource } from \"./stateflow_resource_pb\";\n\n/**\n * Describes the file tailor/v1/stateflow.proto.\n */\nexport const file_tailor_v1_stateflow = /*@__PURE__*/\n fileDesc(\"Chl0YWlsb3IvdjEvc3RhdGVmbG93LnByb3RvEgl0YWlsb3IudjEiqAEKHUNyZWF0ZVN0YXRlZmxvd1NlcnZpY2VSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESQAoObmFtZXNwYWNlX25hbWUYAiABKAlCKLpIJXIjMiFeW2EtejAtOV1bYS16MC05LV17MSw2MX1bYS16MC05XSQSJQoOYWRtaW5fdXNlcl9pZHMYAyADKAlCDbpICpIBByIFcgOwAQEiWAoeQ3JlYXRlU3RhdGVmbG93U2VydmljZVJlc3BvbnNlEjYKEXN0YXRlZmxvd19zZXJ2aWNlGAEgASgLMhsudGFpbG9yLnYxLlN0YXRlZmxvd1NlcnZpY2UiqAEKHVVwZGF0ZVN0YXRlZmxvd1NlcnZpY2VSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESQAoObmFtZXNwYWNlX25hbWUYAiABKAlCKLpIJXIjMiFeW2EtejAtOV1bYS16MC05LV17MSw2MX1bYS16MC05XSQSJQoOYWRtaW5fdXNlcl9pZHMYAyADKAlCDbpICpIBByIFcgOwAQEiWAoeVXBkYXRlU3RhdGVmbG93U2VydmljZVJlc3BvbnNlEjYKEXN0YXRlZmxvd19zZXJ2aWNlGAEgASgLMhsudGFpbG9yLnYxLlN0YXRlZmxvd1NlcnZpY2UigQEKHURlbGV0ZVN0YXRlZmxvd1NlcnZpY2VSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESQAoObmFtZXNwYWNlX25hbWUYAiABKAlCKLpIJXIjMiFeW2EtejAtOV1bYS16MC05LV17MSw2MX1bYS16MC05XSQiIAoeRGVsZXRlU3RhdGVmbG93U2VydmljZVJlc3BvbnNlIn4KGkdldFN0YXRlZmxvd1NlcnZpY2VSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESQAoObmFtZXNwYWNlX25hbWUYAiABKAlCKLpIJXIjMiFeW2EtejAtOV1bYS16MC05LV17MSw2MX1bYS16MC05XSQiVQobR2V0U3RhdGVmbG93U2VydmljZVJlc3BvbnNlEjYKEXN0YXRlZmxvd19zZXJ2aWNlGAEgASgLMhsudGFpbG9yLnYxLlN0YXRlZmxvd1NlcnZpY2UilwEKHExpc3RTdGF0ZWZsb3dTZXJ2aWNlc1JlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABARISCgpwYWdlX3Rva2VuGAIgASgJEhEKCXBhZ2Vfc2l6ZRgDIAEoDRIwCg5wYWdlX2RpcmVjdGlvbhgEIAEoDjIYLnRhaWxvci52MS5QYWdlRGlyZWN0aW9uIoYBCh1MaXN0U3RhdGVmbG93U2VydmljZXNSZXNwb25zZRI3ChJzdGF0ZWZsb3dfc2VydmljZXMYASADKAsyGy50YWlsb3IudjEuU3RhdGVmbG93U2VydmljZRIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAkSEwoLdG90YWxfY291bnQYAyABKANiBnByb3RvMw\", [file_buf_validate_validate, file_tailor_v1_resource, file_tailor_v1_stateflow_resource]);\n\n/**\n * Describes the message tailor.v1.CreateStateflowServiceRequest.\n * Use `create(CreateStateflowServiceRequestSchema)` to create a new message.\n */\nexport const CreateStateflowServiceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 0);\n\n/**\n * Describes the message tailor.v1.CreateStateflowServiceResponse.\n * Use `create(CreateStateflowServiceResponseSchema)` to create a new message.\n */\nexport const CreateStateflowServiceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 1);\n\n/**\n * Describes the message tailor.v1.UpdateStateflowServiceRequest.\n * Use `create(UpdateStateflowServiceRequestSchema)` to create a new message.\n */\nexport const UpdateStateflowServiceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 2);\n\n/**\n * Describes the message tailor.v1.UpdateStateflowServiceResponse.\n * Use `create(UpdateStateflowServiceResponseSchema)` to create a new message.\n */\nexport const UpdateStateflowServiceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 3);\n\n/**\n * Describes the message tailor.v1.DeleteStateflowServiceRequest.\n * Use `create(DeleteStateflowServiceRequestSchema)` to create a new message.\n */\nexport const DeleteStateflowServiceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 4);\n\n/**\n * Describes the message tailor.v1.DeleteStateflowServiceResponse.\n * Use `create(DeleteStateflowServiceResponseSchema)` to create a new message.\n */\nexport const DeleteStateflowServiceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 5);\n\n/**\n * Describes the message tailor.v1.GetStateflowServiceRequest.\n * Use `create(GetStateflowServiceRequestSchema)` to create a new message.\n */\nexport const GetStateflowServiceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 6);\n\n/**\n * Describes the message tailor.v1.GetStateflowServiceResponse.\n * Use `create(GetStateflowServiceResponseSchema)` to create a new message.\n */\nexport const GetStateflowServiceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 7);\n\n/**\n * Describes the message tailor.v1.ListStateflowServicesRequest.\n * Use `create(ListStateflowServicesRequestSchema)` to create a new message.\n */\nexport const ListStateflowServicesRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 8);\n\n/**\n * Describes the message tailor.v1.ListStateflowServicesResponse.\n * Use `create(ListStateflowServicesResponseSchema)` to create a new message.\n */\nexport const ListStateflowServicesResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_stateflow, 9);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/telemetryrouter_resource.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { enumDesc, fileDesc, messageDesc, tsEnum } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_google_api_field_behavior } from \"../../google/api/field_behavior_pb\";\nimport { file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\nimport { file_tailor_v1_secret_manager_resource } from \"./secret_manager_resource_pb\";\n\n/**\n * Describes the file tailor/v1/telemetryrouter_resource.proto.\n */\nexport const file_tailor_v1_telemetryrouter_resource = /*@__PURE__*/\n fileDesc(\"Cih0YWlsb3IvdjEvdGVsZW1ldHJ5cm91dGVyX3Jlc291cmNlLnByb3RvEgl0YWlsb3IudjEisgQKDE9UTFBFeHBvcnRlchI2CgRuYW1lGAEgASgJQii6SCVyIzIhXlthLXowLTldW2EtejAtOS1dezEsNjF9W2EtejAtOV0kEg8KB2VuYWJsZWQYAiABKAgSGQoIZW5kcG9pbnQYAyABKAlCB7pIBHICEAESPQoIcHJvdG9jb2wYBCABKA4yHy50YWlsb3IudjEuT1RMUEV4cG9ydGVyUHJvdG9jb2xCCrpIB4IBBBABIAASNQoHaGVhZGVycxgFIAMoCzIkLnRhaWxvci52MS5PVExQRXhwb3J0ZXIuSGVhZGVyc0VudHJ5Ei8KBGF1dGgYBiABKAsyIS50YWlsb3IudjEuT1RMUEV4cG9ydGVyQXV0aENvbmZpZxInCgZ0cmFjZXMYByABKAsyFy50YWlsb3IudjEuVHJhY2VzQ29uZmlnEikKB21ldHJpY3MYCCABKAsyGC50YWlsb3IudjEuTWV0cmljc0NvbmZpZxIjCgRsb2dzGAkgASgLMhUudGFpbG9yLnYxLkxvZ3NDb25maWcSMwoKY3JlYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCA+BBAxIzCgp1cGRhdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEID4EEDGi4KDEhlYWRlcnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBSgQIDBANIh8KDFRyYWNlc0NvbmZpZxIPCgdlbmFibGVkGAEgASgIIiAKDU1ldHJpY3NDb25maWcSDwoHZW5hYmxlZBgBIAEoCCIdCgpMb2dzQ29uZmlnEg8KB2VuYWJsZWQYASABKAgimAEKFk9UTFBFeHBvcnRlckF1dGhDb25maWcSNAoHYXBpX2tleRgBIAEoCzIhLnRhaWxvci52MS5PVExQRXhwb3J0ZXJBcGlLZXlBdXRoSAASPgoMYmVhcmVyX3Rva2VuGAIgASgLMiYudGFpbG9yLnYxLk9UTFBFeHBvcnRlckJlYXJlclRva2VuQXV0aEgAQggKBm1ldGhvZCJsChZPVExQRXhwb3J0ZXJBcGlLZXlBdXRoEhwKC2hlYWRlcl9uYW1lGAEgASgJQge6SARyAhABEjQKDHNlY3JldF92YWx1ZRgCIAEoCzIWLnRhaWxvci52MS5TZWNyZXRWYWx1ZUIGukgDyAEBIlMKG09UTFBFeHBvcnRlckJlYXJlclRva2VuQXV0aBI0CgxzZWNyZXRfdmFsdWUYASABKAsyFi50YWlsb3IudjEuU2VjcmV0VmFsdWVCBrpIA8gBASL6AQoYUmVzb3VyY2VBdHRyaWJ1dGVzQ29uZmlnEkUKE3NlcnZpY2VfbmFtZV9wcmVmaXgYASABKAlCKLpIJXIjMiFeW2EtejAtOV1bYS16MC05LV17MSw2MX1bYS16MC05XSQSLQobZGVwbG95bWVudF9lbnZpcm9ubWVudF9uYW1lGAIgASgJQgi6SAVyAxiAAhIzCgpjcmVhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEID4EEDEjMKCnVwZGF0ZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgPgQQMqgAEKFE9UTFBFeHBvcnRlclByb3RvY29sEiYKIk9UTFBfRVhQT1JURVJfUFJPVE9DT0xfVU5TUEVDSUZJRUQQABIfChtPVExQX0VYUE9SVEVSX1BST1RPQ09MX0dSUEMQARIfChtPVExQX0VYUE9SVEVSX1BST1RPQ09MX0hUVFAQAmIGcHJvdG8z\", [file_buf_validate_validate, file_google_api_field_behavior, file_google_protobuf_timestamp, file_tailor_v1_secret_manager_resource]);\n\n/**\n * Describes the message tailor.v1.OTLPExporter.\n * Use `create(OTLPExporterSchema)` to create a new message.\n */\nexport const OTLPExporterSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter_resource, 0);\n\n/**\n * Describes the message tailor.v1.TracesConfig.\n * Use `create(TracesConfigSchema)` to create a new message.\n */\nexport const TracesConfigSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter_resource, 1);\n\n/**\n * Describes the message tailor.v1.MetricsConfig.\n * Use `create(MetricsConfigSchema)` to create a new message.\n */\nexport const MetricsConfigSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter_resource, 2);\n\n/**\n * Describes the message tailor.v1.LogsConfig.\n * Use `create(LogsConfigSchema)` to create a new message.\n */\nexport const LogsConfigSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter_resource, 3);\n\n/**\n * Describes the message tailor.v1.OTLPExporterAuthConfig.\n * Use `create(OTLPExporterAuthConfigSchema)` to create a new message.\n */\nexport const OTLPExporterAuthConfigSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter_resource, 4);\n\n/**\n * Describes the message tailor.v1.OTLPExporterApiKeyAuth.\n * Use `create(OTLPExporterApiKeyAuthSchema)` to create a new message.\n */\nexport const OTLPExporterApiKeyAuthSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter_resource, 5);\n\n/**\n * Describes the message tailor.v1.OTLPExporterBearerTokenAuth.\n * Use `create(OTLPExporterBearerTokenAuthSchema)` to create a new message.\n */\nexport const OTLPExporterBearerTokenAuthSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter_resource, 6);\n\n/**\n * Describes the message tailor.v1.ResourceAttributesConfig.\n * Use `create(ResourceAttributesConfigSchema)` to create a new message.\n */\nexport const ResourceAttributesConfigSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter_resource, 7);\n\n/**\n * Describes the enum tailor.v1.OTLPExporterProtocol.\n */\nexport const OTLPExporterProtocolSchema = /*@__PURE__*/\n enumDesc(file_tailor_v1_telemetryrouter_resource, 0);\n\n/**\n * @generated from enum tailor.v1.OTLPExporterProtocol\n */\nexport const OTLPExporterProtocol = /*@__PURE__*/\n tsEnum(OTLPExporterProtocolSchema);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/telemetryrouter.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_tailor_v1_resource } from \"./resource_pb\";\nimport { file_tailor_v1_telemetryrouter_resource } from \"./telemetryrouter_resource_pb\";\n\n/**\n * Describes the file tailor/v1/telemetryrouter.proto.\n */\nexport const file_tailor_v1_telemetryrouter = /*@__PURE__*/\n fileDesc(\"Ch90YWlsb3IvdjEvdGVsZW1ldHJ5cm91dGVyLnByb3RvEgl0YWlsb3IudjEicwoZQ3JlYXRlT1RMUEV4cG9ydGVyUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEjYKDW90bHBfZXhwb3J0ZXIYAiABKAsyFy50YWlsb3IudjEuT1RMUEV4cG9ydGVyQga6SAPIAQEiTAoaQ3JlYXRlT1RMUEV4cG9ydGVyUmVzcG9uc2USLgoNb3RscF9leHBvcnRlchgBIAEoCzIXLnRhaWxvci52MS5PVExQRXhwb3J0ZXIicwoZVXBkYXRlT1RMUEV4cG9ydGVyUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEjYKDW90bHBfZXhwb3J0ZXIYAiABKAsyFy50YWlsb3IudjEuT1RMUEV4cG9ydGVyQga6SAPIAQEiTAoaVXBkYXRlT1RMUEV4cG9ydGVyUmVzcG9uc2USLgoNb3RscF9leHBvcnRlchgBIAEoCzIXLnRhaWxvci52MS5PVExQRXhwb3J0ZXIicAoWR2V0T1RMUEV4cG9ydGVyUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEjYKBG5hbWUYAiABKAlCKLpIJXIjMiFeW2EtejAtOV1bYS16MC05LV17MSw2MX1bYS16MC05XSQiSQoXR2V0T1RMUEV4cG9ydGVyUmVzcG9uc2USLgoNb3RscF9leHBvcnRlchgBIAEoCzIXLnRhaWxvci52MS5PVExQRXhwb3J0ZXIikwEKGExpc3RPVExQRXhwb3J0ZXJzUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEhIKCnBhZ2VfdG9rZW4YAiABKAkSEQoJcGFnZV9zaXplGAMgASgNEjAKDnBhZ2VfZGlyZWN0aW9uGAQgASgOMhgudGFpbG9yLnYxLlBhZ2VEaXJlY3Rpb24iegoZTGlzdE9UTFBFeHBvcnRlcnNSZXNwb25zZRIvCg5vdGxwX2V4cG9ydGVycxgBIAMoCzIXLnRhaWxvci52MS5PVExQRXhwb3J0ZXISFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJEhMKC3RvdGFsX2NvdW50GAMgASgDInMKGURlbGV0ZU9UTFBFeHBvcnRlclJlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABARI2CgRuYW1lGAIgASgJQii6SCVyIzIhXlthLXowLTldW2EtejAtOS1dezEsNjF9W2EtejAtOV0kIhwKGkRlbGV0ZU9UTFBFeHBvcnRlclJlc3BvbnNlInEKF1Rlc3RPVExQRXhwb3J0ZXJSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESNgoEbmFtZRgCIAEoCUIoukglciMyIV5bYS16MC05XVthLXowLTktXXsxLDYxfVthLXowLTldJCI8ChhUZXN0T1RMUEV4cG9ydGVyUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJIpgBCiVDcmVhdGVSZXNvdXJjZUF0dHJpYnV0ZXNDb25maWdSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESTwoacmVzb3VyY2VfYXR0cmlidXRlc19jb25maWcYAiABKAsyIy50YWlsb3IudjEuUmVzb3VyY2VBdHRyaWJ1dGVzQ29uZmlnQga6SAPIAQEicQomQ3JlYXRlUmVzb3VyY2VBdHRyaWJ1dGVzQ29uZmlnUmVzcG9uc2USRwoacmVzb3VyY2VfYXR0cmlidXRlc19jb25maWcYASABKAsyIy50YWlsb3IudjEuUmVzb3VyY2VBdHRyaWJ1dGVzQ29uZmlnIkQKIkdldFJlc291cmNlQXR0cmlidXRlc0NvbmZpZ1JlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABASJuCiNHZXRSZXNvdXJjZUF0dHJpYnV0ZXNDb25maWdSZXNwb25zZRJHChpyZXNvdXJjZV9hdHRyaWJ1dGVzX2NvbmZpZxgBIAEoCzIjLnRhaWxvci52MS5SZXNvdXJjZUF0dHJpYnV0ZXNDb25maWcimAEKJVVwZGF0ZVJlc291cmNlQXR0cmlidXRlc0NvbmZpZ1JlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABARJPChpyZXNvdXJjZV9hdHRyaWJ1dGVzX2NvbmZpZxgCIAEoCzIjLnRhaWxvci52MS5SZXNvdXJjZUF0dHJpYnV0ZXNDb25maWdCBrpIA8gBASJxCiZVcGRhdGVSZXNvdXJjZUF0dHJpYnV0ZXNDb25maWdSZXNwb25zZRJHChpyZXNvdXJjZV9hdHRyaWJ1dGVzX2NvbmZpZxgBIAEoCzIjLnRhaWxvci52MS5SZXNvdXJjZUF0dHJpYnV0ZXNDb25maWciRwolRGVsZXRlUmVzb3VyY2VBdHRyaWJ1dGVzQ29uZmlnUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBIigKJkRlbGV0ZVJlc291cmNlQXR0cmlidXRlc0NvbmZpZ1Jlc3BvbnNlYgZwcm90bzM\", [file_buf_validate_validate, file_tailor_v1_resource, file_tailor_v1_telemetryrouter_resource]);\n\n/**\n * Describes the message tailor.v1.CreateOTLPExporterRequest.\n * Use `create(CreateOTLPExporterRequestSchema)` to create a new message.\n */\nexport const CreateOTLPExporterRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 0);\n\n/**\n * Describes the message tailor.v1.CreateOTLPExporterResponse.\n * Use `create(CreateOTLPExporterResponseSchema)` to create a new message.\n */\nexport const CreateOTLPExporterResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 1);\n\n/**\n * Describes the message tailor.v1.UpdateOTLPExporterRequest.\n * Use `create(UpdateOTLPExporterRequestSchema)` to create a new message.\n */\nexport const UpdateOTLPExporterRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 2);\n\n/**\n * Describes the message tailor.v1.UpdateOTLPExporterResponse.\n * Use `create(UpdateOTLPExporterResponseSchema)` to create a new message.\n */\nexport const UpdateOTLPExporterResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 3);\n\n/**\n * Describes the message tailor.v1.GetOTLPExporterRequest.\n * Use `create(GetOTLPExporterRequestSchema)` to create a new message.\n */\nexport const GetOTLPExporterRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 4);\n\n/**\n * Describes the message tailor.v1.GetOTLPExporterResponse.\n * Use `create(GetOTLPExporterResponseSchema)` to create a new message.\n */\nexport const GetOTLPExporterResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 5);\n\n/**\n * Describes the message tailor.v1.ListOTLPExportersRequest.\n * Use `create(ListOTLPExportersRequestSchema)` to create a new message.\n */\nexport const ListOTLPExportersRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 6);\n\n/**\n * Describes the message tailor.v1.ListOTLPExportersResponse.\n * Use `create(ListOTLPExportersResponseSchema)` to create a new message.\n */\nexport const ListOTLPExportersResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 7);\n\n/**\n * Describes the message tailor.v1.DeleteOTLPExporterRequest.\n * Use `create(DeleteOTLPExporterRequestSchema)` to create a new message.\n */\nexport const DeleteOTLPExporterRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 8);\n\n/**\n * Describes the message tailor.v1.DeleteOTLPExporterResponse.\n * Use `create(DeleteOTLPExporterResponseSchema)` to create a new message.\n */\nexport const DeleteOTLPExporterResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 9);\n\n/**\n * Describes the message tailor.v1.TestOTLPExporterRequest.\n * Use `create(TestOTLPExporterRequestSchema)` to create a new message.\n */\nexport const TestOTLPExporterRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 10);\n\n/**\n * Describes the message tailor.v1.TestOTLPExporterResponse.\n * Use `create(TestOTLPExporterResponseSchema)` to create a new message.\n */\nexport const TestOTLPExporterResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 11);\n\n/**\n * Describes the message tailor.v1.CreateResourceAttributesConfigRequest.\n * Use `create(CreateResourceAttributesConfigRequestSchema)` to create a new message.\n */\nexport const CreateResourceAttributesConfigRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 12);\n\n/**\n * Describes the message tailor.v1.CreateResourceAttributesConfigResponse.\n * Use `create(CreateResourceAttributesConfigResponseSchema)` to create a new message.\n */\nexport const CreateResourceAttributesConfigResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 13);\n\n/**\n * Describes the message tailor.v1.GetResourceAttributesConfigRequest.\n * Use `create(GetResourceAttributesConfigRequestSchema)` to create a new message.\n */\nexport const GetResourceAttributesConfigRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 14);\n\n/**\n * Describes the message tailor.v1.GetResourceAttributesConfigResponse.\n * Use `create(GetResourceAttributesConfigResponseSchema)` to create a new message.\n */\nexport const GetResourceAttributesConfigResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 15);\n\n/**\n * Describes the message tailor.v1.UpdateResourceAttributesConfigRequest.\n * Use `create(UpdateResourceAttributesConfigRequestSchema)` to create a new message.\n */\nexport const UpdateResourceAttributesConfigRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 16);\n\n/**\n * Describes the message tailor.v1.UpdateResourceAttributesConfigResponse.\n * Use `create(UpdateResourceAttributesConfigResponseSchema)` to create a new message.\n */\nexport const UpdateResourceAttributesConfigResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 17);\n\n/**\n * Describes the message tailor.v1.DeleteResourceAttributesConfigRequest.\n * Use `create(DeleteResourceAttributesConfigRequestSchema)` to create a new message.\n */\nexport const DeleteResourceAttributesConfigRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 18);\n\n/**\n * Describes the message tailor.v1.DeleteResourceAttributesConfigResponse.\n * Use `create(DeleteResourceAttributesConfigResponseSchema)` to create a new message.\n */\nexport const DeleteResourceAttributesConfigResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_telemetryrouter, 19);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/workspace.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { enumDesc, fileDesc, messageDesc, tsEnum } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_buf_validate_validate } from \"../../buf/validate/validate_pb\";\nimport { file_google_protobuf_field_mask, file_google_protobuf_timestamp } from \"@bufbuild/protobuf/wkt\";\nimport { file_tailor_fieldmask_v1_option } from \"../fieldmask/v1/option_pb\";\nimport { file_tailor_v1_resource } from \"./resource_pb\";\nimport { file_tailor_v1_workspace_resource } from \"./workspace_resource_pb\";\n\n/**\n * Describes the file tailor/v1/workspace.proto.\n */\nexport const file_tailor_v1_workspace = /*@__PURE__*/\n fileDesc(\"Chl0YWlsb3IvdjEvd29ya3NwYWNlLnByb3RvEgl0YWlsb3IudjEiJgokTGlzdEF2YWlsYWJsZVdvcmtzcGFjZVJlZ2lvbnNSZXF1ZXN0IjgKJUxpc3RBdmFpbGFibGVXb3Jrc3BhY2VSZWdpb25zUmVzcG9uc2USDwoHcmVnaW9ucxgBIAMoCSLVAQoWQ3JlYXRlV29ya3NwYWNlUmVxdWVzdBJACg53b3Jrc3BhY2VfbmFtZRgBIAEoCUIoukglciMyIV5bYS16MC05XVthLXowLTktXXsxLDYxfVthLXowLTldJBIYChB3b3Jrc3BhY2VfcmVnaW9uGAIgASgJEiQKD29yZ2FuaXphdGlvbl9pZBgDIAEoCUILukgI2AEBcgOwAQESHgoJZm9sZGVyX2lkGAQgASgJQgu6SAjYAQFyA7ABARIZChFkZWxldGVfcHJvdGVjdGlvbhgFIAEoCCJCChdDcmVhdGVXb3Jrc3BhY2VSZXNwb25zZRInCgl3b3Jrc3BhY2UYASABKAsyFC50YWlsb3IudjEuV29ya3NwYWNlItgCChZVcGRhdGVXb3Jrc3BhY2VSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESQwoOd29ya3NwYWNlX25hbWUYAiABKAlCK7pIKNgBAXIjMiFeW2EtejAtOV1bYS16MC05LV17MSw2MX1bYS16MC05XSQSJAoPb3JnYW5pemF0aW9uX2lkGAMgASgJQgu6SAjYAQFyA7ABARIeCglmb2xkZXJfaWQYBCABKAlCC7pICNgBAXIDsAEBEhkKEWRlbGV0ZV9wcm90ZWN0aW9uGAUgASgIEngKC3VwZGF0ZV9tYXNrGGQgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0JHivkrDndvcmtzcGFjZV9uYW1livkrD29yZ2FuaXphdGlvbl9pZIr5Kwlmb2xkZXJfaWSK+SsRZGVsZXRlX3Byb3RlY3Rpb24iQgoXVXBkYXRlV29ya3NwYWNlUmVzcG9uc2USJwoJd29ya3NwYWNlGAEgASgLMhQudGFpbG9yLnYxLldvcmtzcGFjZSI4ChZEZWxldGVXb3Jrc3BhY2VSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQEiGQoXRGVsZXRlV29ya3NwYWNlUmVzcG9uc2Ui8wEKFUxpc3RXb3Jrc3BhY2VzUmVxdWVzdBISCgpwYWdlX3Rva2VuGAEgASgJEhEKCXBhZ2Vfc2l6ZRgCIAEoDRIwCg5wYWdlX2RpcmVjdGlvbhgDIAEoDjIYLnRhaWxvci52MS5QYWdlRGlyZWN0aW9uEkIKBHZpZXcYBCABKA4yJS50YWlsb3IudjEuTGlzdFdvcmtzcGFjZXNSZXF1ZXN0LlZpZXdCDbpICtgBAYIBBBABIAAiPQoEVmlldxIUChBWSUVXX1VOU1BFQ0lGSUVEEAASDAoIVklFV19BTEwQARIRCg1WSUVXX1BFUlNPTkFMEAIicAoWTGlzdFdvcmtzcGFjZXNSZXNwb25zZRIoCgp3b3Jrc3BhY2VzGAEgAygLMhQudGFpbG9yLnYxLldvcmtzcGFjZRIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAkSEwoLdG90YWxfY291bnQYAyABKAMivwEKIUxpc3RPcmdhbml6YXRpb25Xb3Jrc3BhY2VzUmVxdWVzdBISCgpwYWdlX3Rva2VuGAEgASgJEhEKCXBhZ2Vfc2l6ZRgCIAEoDRIwCg5wYWdlX2RpcmVjdGlvbhgDIAEoDjIYLnRhaWxvci52MS5QYWdlRGlyZWN0aW9uEiEKD29yZ2FuaXphdGlvbl9pZBgEIAEoCUIIukgFcgOwAQESHgoJZm9sZGVyX2lkGAUgASgJQgu6SAjYAQFyA7ABASJ8CiJMaXN0T3JnYW5pemF0aW9uV29ya3NwYWNlc1Jlc3BvbnNlEhcKD25leHRfcGFnZV90b2tlbhgBIAEoCRITCgt0b3RhbF9jb3VudBgCIAEoAxIoCgp3b3Jrc3BhY2VzGAMgAygLMhQudGFpbG9yLnYxLldvcmtzcGFjZSI5ChdSZXN0b3JlV29ya3NwYWNlUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBIhoKGFJlc3RvcmVXb3Jrc3BhY2VSZXNwb25zZSI1ChNHZXRXb3Jrc3BhY2VSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQEiPwoUR2V0V29ya3NwYWNlUmVzcG9uc2USJwoJd29ya3NwYWNlGAEgASgLMhQudGFpbG9yLnYxLldvcmtzcGFjZSKcAQohTGlzdFdvcmtzcGFjZVBsYXRmb3JtVXNlcnNSZXF1ZXN0EhIKCnBhZ2VfdG9rZW4YASABKAkSEQoJcGFnZV9zaXplGAIgASgNEh4KDHdvcmtzcGFjZV9pZBgDIAEoCUIIukgFcgOwAQESMAoOcGFnZV9kaXJlY3Rpb24YBCABKA4yGC50YWlsb3IudjEuUGFnZURpcmVjdGlvbiKWAQoiTGlzdFdvcmtzcGFjZVBsYXRmb3JtVXNlcnNSZXNwb25zZRIXCg9uZXh0X3BhZ2VfdG9rZW4YASABKAkSQgoYd29ya3NwYWNlX3BsYXRmb3JtX3VzZXJzGAIgAygLMiAudGFpbG9yLnYxLldvcmtzcGFjZVBsYXRmb3JtVXNlchITCgt0b3RhbF9jb3VudBgDIAEoAyIwCi5MaXN0QXZhaWxhYmxlV29ya3NwYWNlUGxhdGZvcm1Vc2VyUm9sZXNSZXF1ZXN0ImYKL0xpc3RBdmFpbGFibGVXb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSb2xlc1Jlc3BvbnNlEjMKBXJvbGVzGAEgAygOMiQudGFpbG9yLnYxLldvcmtzcGFjZVBsYXRmb3JtVXNlclJvbGUikAEKIkludml0ZVdvcmtzcGFjZVBsYXRmb3JtVXNlclJlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABARIWCgVlbWFpbBgCIAEoCUIHukgEcgJgARIyCgRyb2xlGAMgASgOMiQudGFpbG9yLnYxLldvcmtzcGFjZVBsYXRmb3JtVXNlclJvbGUiJQojSW52aXRlV29ya3NwYWNlUGxhdGZvcm1Vc2VyUmVzcG9uc2UiXAoiUmVtb3ZlV29ya3NwYWNlUGxhdGZvcm1Vc2VyUmVxdWVzdBIeCgx3b3Jrc3BhY2VfaWQYASABKAlCCLpIBXIDsAEBEhYKBWVtYWlsGAIgASgJQge6SARyAmABIiUKI1JlbW92ZVdvcmtzcGFjZVBsYXRmb3JtVXNlclJlc3BvbnNlIpABCiJVcGRhdGVXb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSZXF1ZXN0Eh4KDHdvcmtzcGFjZV9pZBgBIAEoCUIIukgFcgOwAQESFgoFZW1haWwYAiABKAlCB7pIBHICYAESMgoEcm9sZRgDIAEoDjIkLnRhaWxvci52MS5Xb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSb2xlIiUKI1VwZGF0ZVdvcmtzcGFjZVBsYXRmb3JtVXNlclJlc3BvbnNlIkEKH0dldFdvcmtzcGFjZVBsYXRmb3JtVXNlclJlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABASJlCiBHZXRXb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSZXNwb25zZRJBChd3b3Jrc3BhY2VfcGxhdGZvcm1fdXNlchgBIAEoCzIgLnRhaWxvci52MS5Xb3Jrc3BhY2VQbGF0Zm9ybVVzZXIiOQoXR2V0V29ya3NwYWNlUm9sZVJlcXVlc3QSHgoMd29ya3NwYWNlX2lkGAEgASgJQgi6SAVyA7ABASJOChhHZXRXb3Jrc3BhY2VSb2xlUmVzcG9uc2USMgoEcm9sZRgBIAEoDjIkLnRhaWxvci52MS5Xb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSb2xlImIKGVVwZGF0ZU9yZ2FuaXphdGlvblJlcXVlc3QSIQoPb3JnYW5pemF0aW9uX2lkGAEgASgJQgi6SAVyA7ABARIiChFvcmdhbml6YXRpb25fbmFtZRgCIAEoCUIHukgEcgIQASJLChpVcGRhdGVPcmdhbml6YXRpb25SZXNwb25zZRItCgxvcmdhbml6YXRpb24YASABKAsyFy50YWlsb3IudjEuT3JnYW5pemF0aW9uIjsKFkdldE9yZ2FuaXphdGlvblJlcXVlc3QSIQoPb3JnYW5pemF0aW9uX2lkGAEgASgJQgi6SAVyA7ABASJIChdHZXRPcmdhbml6YXRpb25SZXNwb25zZRItCgxvcmdhbml6YXRpb24YASABKAsyFy50YWlsb3IudjEuT3JnYW5pemF0aW9uInMKGExpc3RPcmdhbml6YXRpb25zUmVxdWVzdBISCgpwYWdlX3Rva2VuGAEgASgJEhEKCXBhZ2Vfc2l6ZRgCIAEoDRIwCg5wYWdlX2RpcmVjdGlvbhgDIAEoDjIYLnRhaWxvci52MS5QYWdlRGlyZWN0aW9uInkKGUxpc3RPcmdhbml6YXRpb25zUmVzcG9uc2USLgoNb3JnYW5pemF0aW9ucxgBIAMoCzIXLnRhaWxvci52MS5Pcmdhbml6YXRpb24SFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJEhMKC3RvdGFsX2NvdW50GAMgASgDIh4KHExpc3RVc2VyT3JnYW5pemF0aW9uc1JlcXVlc3QihwIKHUxpc3RVc2VyT3JnYW5pemF0aW9uc1Jlc3BvbnNlElUKEnVzZXJfb3JnYW5pemF0aW9ucxgBIAMoCzI5LnRhaWxvci52MS5MaXN0VXNlck9yZ2FuaXphdGlvbnNSZXNwb25zZS5Vc2VyT3JnYW5pemF0aW9uGo4BChBVc2VyT3JnYW5pemF0aW9uEhcKD29yZ2FuaXphdGlvbl9pZBgBIAEoCRIZChFvcmdhbml6YXRpb25fbmFtZRgCIAEoCRIWCg5yb290X2ZvbGRlcl9pZBgDIAEoCRIYChByb290X2ZvbGRlcl9uYW1lGAQgASgJEhQKDGRpc3BsYXlfbmFtZRgFIAEoCSLnAQoeR3JhbnRPcmdhbml6YXRpb25BY2Nlc3NSZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESNQoEcm9sZRgCIAEoDjIbLnRhaWxvci52MS5Pcmdhbml6YXRpb25Sb2xlQgq6SAeCAQQQASAAEhsKB3RlYW1faWQYAyABKAlCCLpIBXIDsAEBSAASGAoFZW1haWwYBCABKAlCB7pIBHICYAFIABIjCg9tYWNoaW5lX3VzZXJfaWQYBSABKAlCCLpIBXIDsAEBSABCDwoGbWVtYmVyEgW6SAIIASIhCh9HcmFudE9yZ2FuaXphdGlvbkFjY2Vzc1Jlc3BvbnNlIugBCh9VcGRhdGVPcmdhbml6YXRpb25BY2Nlc3NSZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESNQoEcm9sZRgCIAEoDjIbLnRhaWxvci52MS5Pcmdhbml6YXRpb25Sb2xlQgq6SAeCAQQQASAAEhsKB3RlYW1faWQYAyABKAlCCLpIBXIDsAEBSAASGAoFZW1haWwYBCABKAlCB7pIBHICYAFIABIjCg9tYWNoaW5lX3VzZXJfaWQYBSABKAlCCLpIBXIDsAEBSABCDwoGbWVtYmVyEgW6SAIIASIiCiBVcGRhdGVPcmdhbml6YXRpb25BY2Nlc3NSZXNwb25zZSKxAQofUmV2b2tlT3JnYW5pemF0aW9uQWNjZXNzUmVxdWVzdBIhCg9vcmdhbml6YXRpb25faWQYASABKAlCCLpIBXIDsAEBEhsKB3RlYW1faWQYAiABKAlCCLpIBXIDsAEBSAASGAoFZW1haWwYAyABKAlCB7pIBHICYAFIABIjCg9tYWNoaW5lX3VzZXJfaWQYBCABKAlCCLpIBXIDsAEBSABCDwoGbWVtYmVyEgW6SAIIASIiCiBSZXZva2VPcmdhbml6YXRpb25BY2Nlc3NSZXNwb25zZSKdAQofTGlzdE9yZ2FuaXphdGlvbkFjY2Vzc2VzUmVxdWVzdBISCgpwYWdlX3Rva2VuGAEgASgJEhEKCXBhZ2Vfc2l6ZRgCIAEoDRIwCg5wYWdlX2RpcmVjdGlvbhgDIAEoDjIYLnRhaWxvci52MS5QYWdlRGlyZWN0aW9uEiEKD29yZ2FuaXphdGlvbl9pZBgEIAEoCUIIukgFcgOwAQEijgEKIExpc3RPcmdhbml6YXRpb25BY2Nlc3Nlc1Jlc3BvbnNlEjwKFW9yZ2FuaXphdGlvbl9hY2Nlc3NlcxgBIAMoCzIdLnRhaWxvci52MS5Pcmdhbml6YXRpb25BY2Nlc3MSFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJEhMKC3RvdGFsX2NvdW50GAMgASgDIq4BChxHZXRPcmdhbml6YXRpb25BY2Nlc3NSZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESGwoHdGVhbV9pZBgCIAEoCUIIukgFcgOwAQFIABIYCgVlbWFpbBgDIAEoCUIHukgEcgJgAUgAEiMKD21hY2hpbmVfdXNlcl9pZBgEIAEoCUIIukgFcgOwAQFIAEIPCgZtZW1iZXISBbpIAggBIlsKHUdldE9yZ2FuaXphdGlvbkFjY2Vzc1Jlc3BvbnNlEjoKE29yZ2FuaXphdGlvbl9hY2Nlc3MYASABKAsyHS50YWlsb3IudjEuT3JnYW5pemF0aW9uQWNjZXNzIokBCh9DcmVhdGVPcmdhbml6YXRpb25Gb2xkZXJSZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESJQoQcGFyZW50X2ZvbGRlcl9pZBgCIAEoCUILukgI2AEBcgOwAQESHAoLZm9sZGVyX25hbWUYAyABKAlCB7pIBHICEAEiRQogQ3JlYXRlT3JnYW5pemF0aW9uRm9sZGVyUmVzcG9uc2USIQoGZm9sZGVyGAEgASgLMhEudGFpbG9yLnYxLkZvbGRlciKmAQofVXBkYXRlT3JnYW5pemF0aW9uRm9sZGVyUmVxdWVzdBIhCg9vcmdhbml6YXRpb25faWQYASABKAlCCLpIBXIDsAEBEhsKCWZvbGRlcl9pZBgCIAEoCUIIukgFcgOwAQESJQoQcGFyZW50X2ZvbGRlcl9pZBgDIAEoCUILukgI2AEBcgOwAQESHAoLZm9sZGVyX25hbWUYBCABKAlCB7pIBHICEAEiRQogVXBkYXRlT3JnYW5pemF0aW9uRm9sZGVyUmVzcG9uc2USIQoGZm9sZGVyGAEgASgLMhEudGFpbG9yLnYxLkZvbGRlciJhCh9EZWxldGVPcmdhbml6YXRpb25Gb2xkZXJSZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESGwoJZm9sZGVyX2lkGAIgASgJQgi6SAVyA7ABASIiCiBEZWxldGVPcmdhbml6YXRpb25Gb2xkZXJSZXNwb25zZSJeChxHZXRPcmdhbml6YXRpb25Gb2xkZXJSZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESGwoJZm9sZGVyX2lkGAIgASgJQgi6SAVyA7ABASJCCh1HZXRPcmdhbml6YXRpb25Gb2xkZXJSZXNwb25zZRIhCgZmb2xkZXIYASABKAsyES50YWlsb3IudjEuRm9sZGVyIsMBCh5MaXN0T3JnYW5pemF0aW9uRm9sZGVyc1JlcXVlc3QSEgoKcGFnZV90b2tlbhgBIAEoCRIRCglwYWdlX3NpemUYAiABKA0SMAoOcGFnZV9kaXJlY3Rpb24YAyABKA4yGC50YWlsb3IudjEuUGFnZURpcmVjdGlvbhIhCg9vcmdhbml6YXRpb25faWQYBCABKAlCCLpIBXIDsAEBEiUKEHBhcmVudF9mb2xkZXJfaWQYBSABKAlCC7pICNgBAXIDsAEBInMKH0xpc3RPcmdhbml6YXRpb25Gb2xkZXJzUmVzcG9uc2USFwoPbmV4dF9wYWdlX3Rva2VuGAEgASgJEhMKC3RvdGFsX2NvdW50GAIgASgDEiIKB2ZvbGRlcnMYAyADKAsyES50YWlsb3IudjEuRm9sZGVyIoQCCiRHcmFudE9yZ2FuaXphdGlvbkZvbGRlckFjY2Vzc1JlcXVlc3QSIQoPb3JnYW5pemF0aW9uX2lkGAEgASgJQgi6SAVyA7ABARIbCglmb2xkZXJfaWQYAiABKAlCCLpIBXIDsAEBEi8KBHJvbGUYAyABKA4yFS50YWlsb3IudjEuRm9sZGVyUm9sZUIKukgHggEEEAEgABIbCgd0ZWFtX2lkGAQgASgJQgi6SAVyA7ABAUgAEhgKBWVtYWlsGAUgASgJQge6SARyAmABSAASIwoPbWFjaGluZV91c2VyX2lkGAYgASgJQgi6SAVyA7ABAUgAQg8KBm1lbWJlchIFukgCCAEiJwolR3JhbnRPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3NSZXNwb25zZSKFAgolVXBkYXRlT3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzUmVxdWVzdBIhCg9vcmdhbml6YXRpb25faWQYASABKAlCCLpIBXIDsAEBEhsKCWZvbGRlcl9pZBgCIAEoCUIIukgFcgOwAQESLwoEcm9sZRgDIAEoDjIVLnRhaWxvci52MS5Gb2xkZXJSb2xlQgq6SAeCAQQQASAAEhsKB3RlYW1faWQYBCABKAlCCLpIBXIDsAEBSAASGAoFZW1haWwYBSABKAlCB7pIBHICYAFIABIjCg9tYWNoaW5lX3VzZXJfaWQYBiABKAlCCLpIBXIDsAEBSABCDwoGbWVtYmVyEgW6SAIIASIoCiZVcGRhdGVPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3NSZXNwb25zZSLUAQolUmV2b2tlT3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzUmVxdWVzdBIhCg9vcmdhbml6YXRpb25faWQYASABKAlCCLpIBXIDsAEBEhsKCWZvbGRlcl9pZBgCIAEoCUIIukgFcgOwAQESGwoHdGVhbV9pZBgDIAEoCUIIukgFcgOwAQFIABIYCgVlbWFpbBgEIAEoCUIHukgEcgJgAUgAEiMKD21hY2hpbmVfdXNlcl9pZBgFIAEoCUIIukgFcgOwAQFIAEIPCgZtZW1iZXISBbpIAggBIigKJlJldm9rZU9yZ2FuaXphdGlvbkZvbGRlckFjY2Vzc1Jlc3BvbnNlIsABCiVMaXN0T3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzZXNSZXF1ZXN0EhIKCnBhZ2VfdG9rZW4YASABKAkSEQoJcGFnZV9zaXplGAIgASgNEjAKDnBhZ2VfZGlyZWN0aW9uGAMgASgOMhgudGFpbG9yLnYxLlBhZ2VEaXJlY3Rpb24SIQoPb3JnYW5pemF0aW9uX2lkGAQgASgJQgi6SAVyA7ABARIbCglmb2xkZXJfaWQYBSABKAlCCLpIBXIDsAEBIogBCiZMaXN0T3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzZXNSZXNwb25zZRIwCg9mb2xkZXJfYWNjZXNzZXMYASADKAsyFy50YWlsb3IudjEuRm9sZGVyQWNjZXNzEhcKD25leHRfcGFnZV90b2tlbhgCIAEoCRITCgt0b3RhbF9jb3VudBgDIAEoAyLRAQoiR2V0T3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzUmVxdWVzdBIhCg9vcmdhbml6YXRpb25faWQYASABKAlCCLpIBXIDsAEBEhsKCWZvbGRlcl9pZBgCIAEoCUIIukgFcgOwAQESGwoHdGVhbV9pZBgDIAEoCUIIukgFcgOwAQFIABIYCgVlbWFpbBgEIAEoCUIHukgEcgJgAUgAEiMKD21hY2hpbmVfdXNlcl9pZBgFIAEoCUIIukgFcgOwAQFIAEIPCgZtZW1iZXISBbpIAggBIlUKI0dldE9yZ2FuaXphdGlvbkZvbGRlckFjY2Vzc1Jlc3BvbnNlEi4KDWZvbGRlcl9hY2Nlc3MYASABKAsyFy50YWlsb3IudjEuRm9sZGVyQWNjZXNzIrIBChlPcmdhbml6YXRpb25JUFJlc3RyaWN0aW9uEhcKD29yZ2FuaXphdGlvbl9pZBgBIAEoCRIcChRhbGxvd2VkX2lwX2FkZHJlc3NlcxgCIAMoCRIuCgpjcmVhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLLAQofT3JnYW5pemF0aW9uRm9sZGVySVBSZXN0cmljdGlvbhIXCg9vcmdhbml6YXRpb25faWQYASABKAkSEQoJZm9sZGVyX2lkGAIgASgJEhwKFGFsbG93ZWRfaXBfYWRkcmVzc2VzGAMgAygJEi4KCmNyZWF0ZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wInsKJlVwc2VydE9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESLgoUYWxsb3dlZF9pcF9hZGRyZXNzZXMYAiADKAlCELpIDZIBCggBGAEiBHICEAEidAonVXBzZXJ0T3JnYW5pemF0aW9uSVBSZXN0cmljdGlvblJlc3BvbnNlEkkKG29yZ2FuaXphdGlvbl9pcF9yZXN0cmljdGlvbhgBIAEoCzIkLnRhaWxvci52MS5Pcmdhbml6YXRpb25JUFJlc3RyaWN0aW9uIkgKI0dldE9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQEicQokR2V0T3JnYW5pemF0aW9uSVBSZXN0cmljdGlvblJlc3BvbnNlEkkKG29yZ2FuaXphdGlvbl9pcF9yZXN0cmljdGlvbhgBIAEoCzIkLnRhaWxvci52MS5Pcmdhbml6YXRpb25JUFJlc3RyaWN0aW9uIksKJkRlbGV0ZU9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQEiKQonRGVsZXRlT3JnYW5pemF0aW9uSVBSZXN0cmljdGlvblJlc3BvbnNlIp4BCixVcHNlcnRPcmdhbml6YXRpb25Gb2xkZXJJUFJlc3RyaWN0aW9uUmVxdWVzdBIhCg9vcmdhbml6YXRpb25faWQYASABKAlCCLpIBXIDsAEBEhsKCWZvbGRlcl9pZBgCIAEoCUIIukgFcgOwAQESLgoUYWxsb3dlZF9pcF9hZGRyZXNzZXMYAyADKAlCELpIDZIBCggBGAEiBHICEAEihwEKLVVwc2VydE9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb25SZXNwb25zZRJWCiJvcmdhbml6YXRpb25fZm9sZGVyX2lwX3Jlc3RyaWN0aW9uGAEgASgLMioudGFpbG9yLnYxLk9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb24iawopR2V0T3JnYW5pemF0aW9uRm9sZGVySVBSZXN0cmljdGlvblJlcXVlc3QSIQoPb3JnYW5pemF0aW9uX2lkGAEgASgJQgi6SAVyA7ABARIbCglmb2xkZXJfaWQYAiABKAlCCLpIBXIDsAEBIoQBCipHZXRPcmdhbml6YXRpb25Gb2xkZXJJUFJlc3RyaWN0aW9uUmVzcG9uc2USVgoib3JnYW5pemF0aW9uX2ZvbGRlcl9pcF9yZXN0cmljdGlvbhgBIAEoCzIqLnRhaWxvci52MS5Pcmdhbml6YXRpb25Gb2xkZXJJUFJlc3RyaWN0aW9uIm4KLERlbGV0ZU9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb25SZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESGwoJZm9sZGVyX2lkGAIgASgJQgi6SAVyA7ABASIvCi1EZWxldGVPcmdhbml6YXRpb25Gb2xkZXJJUFJlc3RyaWN0aW9uUmVzcG9uc2UiXgodQ3JlYXRlT3JnYW5pemF0aW9uVGVhbVJlcXVlc3QSIQoPb3JnYW5pemF0aW9uX2lkGAEgASgJQgi6SAVyA7ABARIaCgl0ZWFtX25hbWUYAiABKAlCB7pIBHICEAEiPwoeQ3JlYXRlT3JnYW5pemF0aW9uVGVhbVJlc3BvbnNlEh0KBHRlYW0YASABKAsyDy50YWlsb3IudjEuVGVhbSJ5Ch1VcGRhdGVPcmdhbml6YXRpb25UZWFtUmVxdWVzdBIhCg9vcmdhbml6YXRpb25faWQYASABKAlCCLpIBXIDsAEBEhkKB3RlYW1faWQYAiABKAlCCLpIBXIDsAEBEhoKCXRlYW1fbmFtZRgDIAEoCUIHukgEcgIQASI/Ch5VcGRhdGVPcmdhbml6YXRpb25UZWFtUmVzcG9uc2USHQoEdGVhbRgBIAEoCzIPLnRhaWxvci52MS5UZWFtIl0KHURlbGV0ZU9yZ2FuaXphdGlvblRlYW1SZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESGQoHdGVhbV9pZBgCIAEoCUIIukgFcgOwAQEiIAoeRGVsZXRlT3JnYW5pemF0aW9uVGVhbVJlc3BvbnNlIpoBChxMaXN0T3JnYW5pemF0aW9uVGVhbXNSZXF1ZXN0EhIKCnBhZ2VfdG9rZW4YASABKAkSEQoJcGFnZV9zaXplGAIgASgNEjAKDnBhZ2VfZGlyZWN0aW9uGAMgASgOMhgudGFpbG9yLnYxLlBhZ2VEaXJlY3Rpb24SIQoPb3JnYW5pemF0aW9uX2lkGAQgASgJQgi6SAVyA7ABASJtCh1MaXN0T3JnYW5pemF0aW9uVGVhbXNSZXNwb25zZRIeCgV0ZWFtcxgBIAMoCzIPLnRhaWxvci52MS5UZWFtEhcKD25leHRfcGFnZV90b2tlbhgCIAEoCRITCgt0b3RhbF9jb3VudBgDIAEoAyJaChpHZXRPcmdhbml6YXRpb25UZWFtUmVxdWVzdBIhCg9vcmdhbml6YXRpb25faWQYASABKAlCCLpIBXIDsAEBEhkKB3RlYW1faWQYAiABKAlCCLpIBXIDsAEBIjwKG0dldE9yZ2FuaXphdGlvblRlYW1SZXNwb25zZRIdCgR0ZWFtGAEgASgLMg8udGFpbG9yLnYxLlRlYW0ipwEKIEFkZE9yZ2FuaXphdGlvblRlYW1NZW1iZXJSZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESGQoHdGVhbV9pZBgCIAEoCUIIukgFcgOwAQESFgoFZW1haWwYAyABKAlCB7pIBHICYAESLQoEcm9sZRgEIAEoDjITLnRhaWxvci52MS5UZWFtUm9sZUIKukgHggEEEAEgACIjCiFBZGRPcmdhbml6YXRpb25UZWFtTWVtYmVyUmVzcG9uc2UiqgEKI1VwZGF0ZU9yZ2FuaXphdGlvblRlYW1NZW1iZXJSZXF1ZXN0EiEKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIIukgFcgOwAQESGQoHdGVhbV9pZBgCIAEoCUIIukgFcgOwAQESFgoFZW1haWwYAyABKAlCB7pIBHICYAESLQoEcm9sZRgEIAEoDjITLnRhaWxvci52MS5UZWFtUm9sZUIKukgHggEEEAEgACImCiRVcGRhdGVPcmdhbml6YXRpb25UZWFtTWVtYmVyUmVzcG9uc2UiewojUmVtb3ZlT3JnYW5pemF0aW9uVGVhbU1lbWJlclJlcXVlc3QSIQoPb3JnYW5pemF0aW9uX2lkGAEgASgJQgi6SAVyA7ABARIZCgd0ZWFtX2lkGAIgASgJQgi6SAVyA7ABARIWCgVlbWFpbBgDIAEoCUIHukgEcgJgASImCiRSZW1vdmVPcmdhbml6YXRpb25UZWFtTWVtYmVyUmVzcG9uc2UiuwEKIkxpc3RPcmdhbml6YXRpb25UZWFtTWVtYmVyc1JlcXVlc3QSEgoKcGFnZV90b2tlbhgBIAEoCRIRCglwYWdlX3NpemUYAiABKA0SMAoOcGFnZV9kaXJlY3Rpb24YAyABKA4yGC50YWlsb3IudjEuUGFnZURpcmVjdGlvbhIhCg9vcmdhbml6YXRpb25faWQYBCABKAlCCLpIBXIDsAEBEhkKB3RlYW1faWQYBSABKAlCCLpIBXIDsAEBIoABCiNMaXN0T3JnYW5pemF0aW9uVGVhbU1lbWJlcnNSZXNwb25zZRIrCgx0ZWFtX21lbWJlcnMYASADKAsyFS50YWlsb3IudjEuVGVhbU1lbWJlchIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAkSEwoLdG90YWxfY291bnQYAyABKAMieAogR2V0T3JnYW5pemF0aW9uVGVhbU1lbWJlclJlcXVlc3QSIQoPb3JnYW5pemF0aW9uX2lkGAEgASgJQgi6SAVyA7ABARIZCgd0ZWFtX2lkGAIgASgJQgi6SAVyA7ABARIWCgVlbWFpbBgDIAEoCUIHukgEcgJgASJPCiFHZXRPcmdhbml6YXRpb25UZWFtTWVtYmVyUmVzcG9uc2USKgoLdGVhbV9tZW1iZXIYASABKAsyFS50YWlsb3IudjEuVGVhbU1lbWJlciIfCh1HZXRQbGF0Zm9ybUFjY291bnRQbGFuUmVxdWVzdCJWCh5HZXRQbGF0Zm9ybUFjY291bnRQbGFuUmVzcG9uc2USNAoMY3VycmVudF9wbGFuGAEgASgLMh4udGFpbG9yLnYxLlBsYXRmb3JtQWNjb3VudFBsYW5iBnByb3RvMw\", [file_buf_validate_validate, file_google_protobuf_field_mask, file_google_protobuf_timestamp, file_tailor_fieldmask_v1_option, file_tailor_v1_resource, file_tailor_v1_workspace_resource]);\n\n/**\n * Describes the message tailor.v1.ListAvailableWorkspaceRegionsRequest.\n * Use `create(ListAvailableWorkspaceRegionsRequestSchema)` to create a new message.\n */\nexport const ListAvailableWorkspaceRegionsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 0);\n\n/**\n * Describes the message tailor.v1.ListAvailableWorkspaceRegionsResponse.\n * Use `create(ListAvailableWorkspaceRegionsResponseSchema)` to create a new message.\n */\nexport const ListAvailableWorkspaceRegionsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 1);\n\n/**\n * Describes the message tailor.v1.CreateWorkspaceRequest.\n * Use `create(CreateWorkspaceRequestSchema)` to create a new message.\n */\nexport const CreateWorkspaceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 2);\n\n/**\n * Describes the message tailor.v1.CreateWorkspaceResponse.\n * Use `create(CreateWorkspaceResponseSchema)` to create a new message.\n */\nexport const CreateWorkspaceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 3);\n\n/**\n * Describes the message tailor.v1.UpdateWorkspaceRequest.\n * Use `create(UpdateWorkspaceRequestSchema)` to create a new message.\n */\nexport const UpdateWorkspaceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 4);\n\n/**\n * Describes the message tailor.v1.UpdateWorkspaceResponse.\n * Use `create(UpdateWorkspaceResponseSchema)` to create a new message.\n */\nexport const UpdateWorkspaceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 5);\n\n/**\n * Describes the message tailor.v1.DeleteWorkspaceRequest.\n * Use `create(DeleteWorkspaceRequestSchema)` to create a new message.\n */\nexport const DeleteWorkspaceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 6);\n\n/**\n * Describes the message tailor.v1.DeleteWorkspaceResponse.\n * Use `create(DeleteWorkspaceResponseSchema)` to create a new message.\n */\nexport const DeleteWorkspaceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 7);\n\n/**\n * Describes the message tailor.v1.ListWorkspacesRequest.\n * Use `create(ListWorkspacesRequestSchema)` to create a new message.\n */\nexport const ListWorkspacesRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 8);\n\n/**\n * Describes the enum tailor.v1.ListWorkspacesRequest.View.\n */\nexport const ListWorkspacesRequest_ViewSchema = /*@__PURE__*/\n enumDesc(file_tailor_v1_workspace, 8, 0);\n\n/**\n * @generated from enum tailor.v1.ListWorkspacesRequest.View\n */\nexport const ListWorkspacesRequest_View = /*@__PURE__*/\n tsEnum(ListWorkspacesRequest_ViewSchema);\n\n/**\n * Describes the message tailor.v1.ListWorkspacesResponse.\n * Use `create(ListWorkspacesResponseSchema)` to create a new message.\n */\nexport const ListWorkspacesResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 9);\n\n/**\n * Describes the message tailor.v1.ListOrganizationWorkspacesRequest.\n * Use `create(ListOrganizationWorkspacesRequestSchema)` to create a new message.\n */\nexport const ListOrganizationWorkspacesRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 10);\n\n/**\n * Describes the message tailor.v1.ListOrganizationWorkspacesResponse.\n * Use `create(ListOrganizationWorkspacesResponseSchema)` to create a new message.\n */\nexport const ListOrganizationWorkspacesResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 11);\n\n/**\n * Describes the message tailor.v1.RestoreWorkspaceRequest.\n * Use `create(RestoreWorkspaceRequestSchema)` to create a new message.\n */\nexport const RestoreWorkspaceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 12);\n\n/**\n * Describes the message tailor.v1.RestoreWorkspaceResponse.\n * Use `create(RestoreWorkspaceResponseSchema)` to create a new message.\n */\nexport const RestoreWorkspaceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 13);\n\n/**\n * Describes the message tailor.v1.GetWorkspaceRequest.\n * Use `create(GetWorkspaceRequestSchema)` to create a new message.\n */\nexport const GetWorkspaceRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 14);\n\n/**\n * Describes the message tailor.v1.GetWorkspaceResponse.\n * Use `create(GetWorkspaceResponseSchema)` to create a new message.\n */\nexport const GetWorkspaceResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 15);\n\n/**\n * Describes the message tailor.v1.ListWorkspacePlatformUsersRequest.\n * Use `create(ListWorkspacePlatformUsersRequestSchema)` to create a new message.\n */\nexport const ListWorkspacePlatformUsersRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 16);\n\n/**\n * Describes the message tailor.v1.ListWorkspacePlatformUsersResponse.\n * Use `create(ListWorkspacePlatformUsersResponseSchema)` to create a new message.\n */\nexport const ListWorkspacePlatformUsersResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 17);\n\n/**\n * Describes the message tailor.v1.ListAvailableWorkspacePlatformUserRolesRequest.\n * Use `create(ListAvailableWorkspacePlatformUserRolesRequestSchema)` to create a new message.\n */\nexport const ListAvailableWorkspacePlatformUserRolesRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 18);\n\n/**\n * Describes the message tailor.v1.ListAvailableWorkspacePlatformUserRolesResponse.\n * Use `create(ListAvailableWorkspacePlatformUserRolesResponseSchema)` to create a new message.\n */\nexport const ListAvailableWorkspacePlatformUserRolesResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 19);\n\n/**\n * Describes the message tailor.v1.InviteWorkspacePlatformUserRequest.\n * Use `create(InviteWorkspacePlatformUserRequestSchema)` to create a new message.\n */\nexport const InviteWorkspacePlatformUserRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 20);\n\n/**\n * Describes the message tailor.v1.InviteWorkspacePlatformUserResponse.\n * Use `create(InviteWorkspacePlatformUserResponseSchema)` to create a new message.\n */\nexport const InviteWorkspacePlatformUserResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 21);\n\n/**\n * Describes the message tailor.v1.RemoveWorkspacePlatformUserRequest.\n * Use `create(RemoveWorkspacePlatformUserRequestSchema)` to create a new message.\n */\nexport const RemoveWorkspacePlatformUserRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 22);\n\n/**\n * Describes the message tailor.v1.RemoveWorkspacePlatformUserResponse.\n * Use `create(RemoveWorkspacePlatformUserResponseSchema)` to create a new message.\n */\nexport const RemoveWorkspacePlatformUserResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 23);\n\n/**\n * Describes the message tailor.v1.UpdateWorkspacePlatformUserRequest.\n * Use `create(UpdateWorkspacePlatformUserRequestSchema)` to create a new message.\n */\nexport const UpdateWorkspacePlatformUserRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 24);\n\n/**\n * Describes the message tailor.v1.UpdateWorkspacePlatformUserResponse.\n * Use `create(UpdateWorkspacePlatformUserResponseSchema)` to create a new message.\n */\nexport const UpdateWorkspacePlatformUserResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 25);\n\n/**\n * Describes the message tailor.v1.GetWorkspacePlatformUserRequest.\n * Use `create(GetWorkspacePlatformUserRequestSchema)` to create a new message.\n */\nexport const GetWorkspacePlatformUserRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 26);\n\n/**\n * Describes the message tailor.v1.GetWorkspacePlatformUserResponse.\n * Use `create(GetWorkspacePlatformUserResponseSchema)` to create a new message.\n */\nexport const GetWorkspacePlatformUserResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 27);\n\n/**\n * Describes the message tailor.v1.GetWorkspaceRoleRequest.\n * Use `create(GetWorkspaceRoleRequestSchema)` to create a new message.\n */\nexport const GetWorkspaceRoleRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 28);\n\n/**\n * Describes the message tailor.v1.GetWorkspaceRoleResponse.\n * Use `create(GetWorkspaceRoleResponseSchema)` to create a new message.\n */\nexport const GetWorkspaceRoleResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 29);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationRequest.\n * Use `create(UpdateOrganizationRequestSchema)` to create a new message.\n */\nexport const UpdateOrganizationRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 30);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationResponse.\n * Use `create(UpdateOrganizationResponseSchema)` to create a new message.\n */\nexport const UpdateOrganizationResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 31);\n\n/**\n * Describes the message tailor.v1.GetOrganizationRequest.\n * Use `create(GetOrganizationRequestSchema)` to create a new message.\n */\nexport const GetOrganizationRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 32);\n\n/**\n * Describes the message tailor.v1.GetOrganizationResponse.\n * Use `create(GetOrganizationResponseSchema)` to create a new message.\n */\nexport const GetOrganizationResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 33);\n\n/**\n * Describes the message tailor.v1.ListOrganizationsRequest.\n * Use `create(ListOrganizationsRequestSchema)` to create a new message.\n */\nexport const ListOrganizationsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 34);\n\n/**\n * Describes the message tailor.v1.ListOrganizationsResponse.\n * Use `create(ListOrganizationsResponseSchema)` to create a new message.\n */\nexport const ListOrganizationsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 35);\n\n/**\n * Describes the message tailor.v1.ListUserOrganizationsRequest.\n * Use `create(ListUserOrganizationsRequestSchema)` to create a new message.\n */\nexport const ListUserOrganizationsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 36);\n\n/**\n * Describes the message tailor.v1.ListUserOrganizationsResponse.\n * Use `create(ListUserOrganizationsResponseSchema)` to create a new message.\n */\nexport const ListUserOrganizationsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 37);\n\n/**\n * Describes the message tailor.v1.ListUserOrganizationsResponse.UserOrganization.\n * Use `create(ListUserOrganizationsResponse_UserOrganizationSchema)` to create a new message.\n */\nexport const ListUserOrganizationsResponse_UserOrganizationSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 37, 0);\n\n/**\n * Describes the message tailor.v1.GrantOrganizationAccessRequest.\n * Use `create(GrantOrganizationAccessRequestSchema)` to create a new message.\n */\nexport const GrantOrganizationAccessRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 38);\n\n/**\n * Describes the message tailor.v1.GrantOrganizationAccessResponse.\n * Use `create(GrantOrganizationAccessResponseSchema)` to create a new message.\n */\nexport const GrantOrganizationAccessResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 39);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationAccessRequest.\n * Use `create(UpdateOrganizationAccessRequestSchema)` to create a new message.\n */\nexport const UpdateOrganizationAccessRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 40);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationAccessResponse.\n * Use `create(UpdateOrganizationAccessResponseSchema)` to create a new message.\n */\nexport const UpdateOrganizationAccessResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 41);\n\n/**\n * Describes the message tailor.v1.RevokeOrganizationAccessRequest.\n * Use `create(RevokeOrganizationAccessRequestSchema)` to create a new message.\n */\nexport const RevokeOrganizationAccessRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 42);\n\n/**\n * Describes the message tailor.v1.RevokeOrganizationAccessResponse.\n * Use `create(RevokeOrganizationAccessResponseSchema)` to create a new message.\n */\nexport const RevokeOrganizationAccessResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 43);\n\n/**\n * Describes the message tailor.v1.ListOrganizationAccessesRequest.\n * Use `create(ListOrganizationAccessesRequestSchema)` to create a new message.\n */\nexport const ListOrganizationAccessesRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 44);\n\n/**\n * Describes the message tailor.v1.ListOrganizationAccessesResponse.\n * Use `create(ListOrganizationAccessesResponseSchema)` to create a new message.\n */\nexport const ListOrganizationAccessesResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 45);\n\n/**\n * Describes the message tailor.v1.GetOrganizationAccessRequest.\n * Use `create(GetOrganizationAccessRequestSchema)` to create a new message.\n */\nexport const GetOrganizationAccessRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 46);\n\n/**\n * Describes the message tailor.v1.GetOrganizationAccessResponse.\n * Use `create(GetOrganizationAccessResponseSchema)` to create a new message.\n */\nexport const GetOrganizationAccessResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 47);\n\n/**\n * Describes the message tailor.v1.CreateOrganizationFolderRequest.\n * Use `create(CreateOrganizationFolderRequestSchema)` to create a new message.\n */\nexport const CreateOrganizationFolderRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 48);\n\n/**\n * Describes the message tailor.v1.CreateOrganizationFolderResponse.\n * Use `create(CreateOrganizationFolderResponseSchema)` to create a new message.\n */\nexport const CreateOrganizationFolderResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 49);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationFolderRequest.\n * Use `create(UpdateOrganizationFolderRequestSchema)` to create a new message.\n */\nexport const UpdateOrganizationFolderRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 50);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationFolderResponse.\n * Use `create(UpdateOrganizationFolderResponseSchema)` to create a new message.\n */\nexport const UpdateOrganizationFolderResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 51);\n\n/**\n * Describes the message tailor.v1.DeleteOrganizationFolderRequest.\n * Use `create(DeleteOrganizationFolderRequestSchema)` to create a new message.\n */\nexport const DeleteOrganizationFolderRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 52);\n\n/**\n * Describes the message tailor.v1.DeleteOrganizationFolderResponse.\n * Use `create(DeleteOrganizationFolderResponseSchema)` to create a new message.\n */\nexport const DeleteOrganizationFolderResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 53);\n\n/**\n * Describes the message tailor.v1.GetOrganizationFolderRequest.\n * Use `create(GetOrganizationFolderRequestSchema)` to create a new message.\n */\nexport const GetOrganizationFolderRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 54);\n\n/**\n * Describes the message tailor.v1.GetOrganizationFolderResponse.\n * Use `create(GetOrganizationFolderResponseSchema)` to create a new message.\n */\nexport const GetOrganizationFolderResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 55);\n\n/**\n * Describes the message tailor.v1.ListOrganizationFoldersRequest.\n * Use `create(ListOrganizationFoldersRequestSchema)` to create a new message.\n */\nexport const ListOrganizationFoldersRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 56);\n\n/**\n * Describes the message tailor.v1.ListOrganizationFoldersResponse.\n * Use `create(ListOrganizationFoldersResponseSchema)` to create a new message.\n */\nexport const ListOrganizationFoldersResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 57);\n\n/**\n * Describes the message tailor.v1.GrantOrganizationFolderAccessRequest.\n * Use `create(GrantOrganizationFolderAccessRequestSchema)` to create a new message.\n */\nexport const GrantOrganizationFolderAccessRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 58);\n\n/**\n * Describes the message tailor.v1.GrantOrganizationFolderAccessResponse.\n * Use `create(GrantOrganizationFolderAccessResponseSchema)` to create a new message.\n */\nexport const GrantOrganizationFolderAccessResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 59);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationFolderAccessRequest.\n * Use `create(UpdateOrganizationFolderAccessRequestSchema)` to create a new message.\n */\nexport const UpdateOrganizationFolderAccessRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 60);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationFolderAccessResponse.\n * Use `create(UpdateOrganizationFolderAccessResponseSchema)` to create a new message.\n */\nexport const UpdateOrganizationFolderAccessResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 61);\n\n/**\n * Describes the message tailor.v1.RevokeOrganizationFolderAccessRequest.\n * Use `create(RevokeOrganizationFolderAccessRequestSchema)` to create a new message.\n */\nexport const RevokeOrganizationFolderAccessRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 62);\n\n/**\n * Describes the message tailor.v1.RevokeOrganizationFolderAccessResponse.\n * Use `create(RevokeOrganizationFolderAccessResponseSchema)` to create a new message.\n */\nexport const RevokeOrganizationFolderAccessResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 63);\n\n/**\n * Describes the message tailor.v1.ListOrganizationFolderAccessesRequest.\n * Use `create(ListOrganizationFolderAccessesRequestSchema)` to create a new message.\n */\nexport const ListOrganizationFolderAccessesRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 64);\n\n/**\n * Describes the message tailor.v1.ListOrganizationFolderAccessesResponse.\n * Use `create(ListOrganizationFolderAccessesResponseSchema)` to create a new message.\n */\nexport const ListOrganizationFolderAccessesResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 65);\n\n/**\n * Describes the message tailor.v1.GetOrganizationFolderAccessRequest.\n * Use `create(GetOrganizationFolderAccessRequestSchema)` to create a new message.\n */\nexport const GetOrganizationFolderAccessRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 66);\n\n/**\n * Describes the message tailor.v1.GetOrganizationFolderAccessResponse.\n * Use `create(GetOrganizationFolderAccessResponseSchema)` to create a new message.\n */\nexport const GetOrganizationFolderAccessResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 67);\n\n/**\n * Describes the message tailor.v1.OrganizationIPRestriction.\n * Use `create(OrganizationIPRestrictionSchema)` to create a new message.\n */\nexport const OrganizationIPRestrictionSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 68);\n\n/**\n * Describes the message tailor.v1.OrganizationFolderIPRestriction.\n * Use `create(OrganizationFolderIPRestrictionSchema)` to create a new message.\n */\nexport const OrganizationFolderIPRestrictionSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 69);\n\n/**\n * Describes the message tailor.v1.UpsertOrganizationIPRestrictionRequest.\n * Use `create(UpsertOrganizationIPRestrictionRequestSchema)` to create a new message.\n */\nexport const UpsertOrganizationIPRestrictionRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 70);\n\n/**\n * Describes the message tailor.v1.UpsertOrganizationIPRestrictionResponse.\n * Use `create(UpsertOrganizationIPRestrictionResponseSchema)` to create a new message.\n */\nexport const UpsertOrganizationIPRestrictionResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 71);\n\n/**\n * Describes the message tailor.v1.GetOrganizationIPRestrictionRequest.\n * Use `create(GetOrganizationIPRestrictionRequestSchema)` to create a new message.\n */\nexport const GetOrganizationIPRestrictionRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 72);\n\n/**\n * Describes the message tailor.v1.GetOrganizationIPRestrictionResponse.\n * Use `create(GetOrganizationIPRestrictionResponseSchema)` to create a new message.\n */\nexport const GetOrganizationIPRestrictionResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 73);\n\n/**\n * Describes the message tailor.v1.DeleteOrganizationIPRestrictionRequest.\n * Use `create(DeleteOrganizationIPRestrictionRequestSchema)` to create a new message.\n */\nexport const DeleteOrganizationIPRestrictionRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 74);\n\n/**\n * Describes the message tailor.v1.DeleteOrganizationIPRestrictionResponse.\n * Use `create(DeleteOrganizationIPRestrictionResponseSchema)` to create a new message.\n */\nexport const DeleteOrganizationIPRestrictionResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 75);\n\n/**\n * Describes the message tailor.v1.UpsertOrganizationFolderIPRestrictionRequest.\n * Use `create(UpsertOrganizationFolderIPRestrictionRequestSchema)` to create a new message.\n */\nexport const UpsertOrganizationFolderIPRestrictionRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 76);\n\n/**\n * Describes the message tailor.v1.UpsertOrganizationFolderIPRestrictionResponse.\n * Use `create(UpsertOrganizationFolderIPRestrictionResponseSchema)` to create a new message.\n */\nexport const UpsertOrganizationFolderIPRestrictionResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 77);\n\n/**\n * Describes the message tailor.v1.GetOrganizationFolderIPRestrictionRequest.\n * Use `create(GetOrganizationFolderIPRestrictionRequestSchema)` to create a new message.\n */\nexport const GetOrganizationFolderIPRestrictionRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 78);\n\n/**\n * Describes the message tailor.v1.GetOrganizationFolderIPRestrictionResponse.\n * Use `create(GetOrganizationFolderIPRestrictionResponseSchema)` to create a new message.\n */\nexport const GetOrganizationFolderIPRestrictionResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 79);\n\n/**\n * Describes the message tailor.v1.DeleteOrganizationFolderIPRestrictionRequest.\n * Use `create(DeleteOrganizationFolderIPRestrictionRequestSchema)` to create a new message.\n */\nexport const DeleteOrganizationFolderIPRestrictionRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 80);\n\n/**\n * Describes the message tailor.v1.DeleteOrganizationFolderIPRestrictionResponse.\n * Use `create(DeleteOrganizationFolderIPRestrictionResponseSchema)` to create a new message.\n */\nexport const DeleteOrganizationFolderIPRestrictionResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 81);\n\n/**\n * Describes the message tailor.v1.CreateOrganizationTeamRequest.\n * Use `create(CreateOrganizationTeamRequestSchema)` to create a new message.\n */\nexport const CreateOrganizationTeamRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 82);\n\n/**\n * Describes the message tailor.v1.CreateOrganizationTeamResponse.\n * Use `create(CreateOrganizationTeamResponseSchema)` to create a new message.\n */\nexport const CreateOrganizationTeamResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 83);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationTeamRequest.\n * Use `create(UpdateOrganizationTeamRequestSchema)` to create a new message.\n */\nexport const UpdateOrganizationTeamRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 84);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationTeamResponse.\n * Use `create(UpdateOrganizationTeamResponseSchema)` to create a new message.\n */\nexport const UpdateOrganizationTeamResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 85);\n\n/**\n * Describes the message tailor.v1.DeleteOrganizationTeamRequest.\n * Use `create(DeleteOrganizationTeamRequestSchema)` to create a new message.\n */\nexport const DeleteOrganizationTeamRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 86);\n\n/**\n * Describes the message tailor.v1.DeleteOrganizationTeamResponse.\n * Use `create(DeleteOrganizationTeamResponseSchema)` to create a new message.\n */\nexport const DeleteOrganizationTeamResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 87);\n\n/**\n * Describes the message tailor.v1.ListOrganizationTeamsRequest.\n * Use `create(ListOrganizationTeamsRequestSchema)` to create a new message.\n */\nexport const ListOrganizationTeamsRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 88);\n\n/**\n * Describes the message tailor.v1.ListOrganizationTeamsResponse.\n * Use `create(ListOrganizationTeamsResponseSchema)` to create a new message.\n */\nexport const ListOrganizationTeamsResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 89);\n\n/**\n * Describes the message tailor.v1.GetOrganizationTeamRequest.\n * Use `create(GetOrganizationTeamRequestSchema)` to create a new message.\n */\nexport const GetOrganizationTeamRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 90);\n\n/**\n * Describes the message tailor.v1.GetOrganizationTeamResponse.\n * Use `create(GetOrganizationTeamResponseSchema)` to create a new message.\n */\nexport const GetOrganizationTeamResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 91);\n\n/**\n * Describes the message tailor.v1.AddOrganizationTeamMemberRequest.\n * Use `create(AddOrganizationTeamMemberRequestSchema)` to create a new message.\n */\nexport const AddOrganizationTeamMemberRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 92);\n\n/**\n * Describes the message tailor.v1.AddOrganizationTeamMemberResponse.\n * Use `create(AddOrganizationTeamMemberResponseSchema)` to create a new message.\n */\nexport const AddOrganizationTeamMemberResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 93);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationTeamMemberRequest.\n * Use `create(UpdateOrganizationTeamMemberRequestSchema)` to create a new message.\n */\nexport const UpdateOrganizationTeamMemberRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 94);\n\n/**\n * Describes the message tailor.v1.UpdateOrganizationTeamMemberResponse.\n * Use `create(UpdateOrganizationTeamMemberResponseSchema)` to create a new message.\n */\nexport const UpdateOrganizationTeamMemberResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 95);\n\n/**\n * Describes the message tailor.v1.RemoveOrganizationTeamMemberRequest.\n * Use `create(RemoveOrganizationTeamMemberRequestSchema)` to create a new message.\n */\nexport const RemoveOrganizationTeamMemberRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 96);\n\n/**\n * Describes the message tailor.v1.RemoveOrganizationTeamMemberResponse.\n * Use `create(RemoveOrganizationTeamMemberResponseSchema)` to create a new message.\n */\nexport const RemoveOrganizationTeamMemberResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 97);\n\n/**\n * Describes the message tailor.v1.ListOrganizationTeamMembersRequest.\n * Use `create(ListOrganizationTeamMembersRequestSchema)` to create a new message.\n */\nexport const ListOrganizationTeamMembersRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 98);\n\n/**\n * Describes the message tailor.v1.ListOrganizationTeamMembersResponse.\n * Use `create(ListOrganizationTeamMembersResponseSchema)` to create a new message.\n */\nexport const ListOrganizationTeamMembersResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 99);\n\n/**\n * Describes the message tailor.v1.GetOrganizationTeamMemberRequest.\n * Use `create(GetOrganizationTeamMemberRequestSchema)` to create a new message.\n */\nexport const GetOrganizationTeamMemberRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 100);\n\n/**\n * Describes the message tailor.v1.GetOrganizationTeamMemberResponse.\n * Use `create(GetOrganizationTeamMemberResponseSchema)` to create a new message.\n */\nexport const GetOrganizationTeamMemberResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 101);\n\n/**\n * Describes the message tailor.v1.GetPlatformAccountPlanRequest.\n * Use `create(GetPlatformAccountPlanRequestSchema)` to create a new message.\n */\nexport const GetPlatformAccountPlanRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 102);\n\n/**\n * Describes the message tailor.v1.GetPlatformAccountPlanResponse.\n * Use `create(GetPlatformAccountPlanResponseSchema)` to create a new message.\n */\nexport const GetPlatformAccountPlanResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_workspace, 103);\n\n","// @generated by protoc-gen-es v2.6.3\n// @generated from file tailor/v1/service.proto (package tailor.v1, syntax proto3)\n/* eslint-disable */\n\nimport { fileDesc, messageDesc, serviceDesc } from \"@bufbuild/protobuf/codegenv2\";\nimport { file_tailor_v1_aigateway } from \"./aigateway_pb\";\nimport { file_tailor_v1_application } from \"./application_pb\";\nimport { file_tailor_v1_auth } from \"./auth_pb\";\nimport { file_tailor_v1_events } from \"./events_pb\";\nimport { file_tailor_v1_executor } from \"./executor_pb\";\nimport { file_tailor_v1_function } from \"./function_pb\";\nimport { file_tailor_v1_function_registry } from \"./function_registry_pb\";\nimport { file_tailor_v1_idp } from \"./idp_pb\";\nimport { file_tailor_v1_metadata } from \"./metadata_pb\";\nimport { file_tailor_v1_meter } from \"./meter_pb\";\nimport { file_tailor_v1_pipeline } from \"./pipeline_pb\";\nimport { file_tailor_v1_secret_manager } from \"./secret_manager_pb\";\nimport { file_tailor_v1_stateflow } from \"./stateflow_pb\";\nimport { file_tailor_v1_staticwebsite } from \"./staticwebsite_pb\";\nimport { file_tailor_v1_tailordb } from \"./tailordb_pb\";\nimport { file_tailor_v1_telemetryrouter } from \"./telemetryrouter_pb\";\nimport { file_tailor_v1_workflow } from \"./workflow_pb\";\nimport { file_tailor_v1_workspace } from \"./workspace_pb\";\n\n/**\n * Describes the file tailor/v1/service.proto.\n */\nexport const file_tailor_v1_service = /*@__PURE__*/\n fileDesc(\"Chd0YWlsb3IvdjEvc2VydmljZS5wcm90bxIJdGFpbG9yLnYxIg0KC1BpbmdSZXF1ZXN0Ig4KDFBpbmdSZXNwb25zZTLk2QEKD09wZXJhdG9yU2VydmljZRI5CgRQaW5nEhYudGFpbG9yLnYxLlBpbmdSZXF1ZXN0GhcudGFpbG9yLnYxLlBpbmdSZXNwb25zZSIAEocBCh1MaXN0QXZhaWxhYmxlV29ya3NwYWNlUmVnaW9ucxIvLnRhaWxvci52MS5MaXN0QXZhaWxhYmxlV29ya3NwYWNlUmVnaW9uc1JlcXVlc3QaMC50YWlsb3IudjEuTGlzdEF2YWlsYWJsZVdvcmtzcGFjZVJlZ2lvbnNSZXNwb25zZSIDkAIBEloKD0NyZWF0ZVdvcmtzcGFjZRIhLnRhaWxvci52MS5DcmVhdGVXb3Jrc3BhY2VSZXF1ZXN0GiIudGFpbG9yLnYxLkNyZWF0ZVdvcmtzcGFjZVJlc3BvbnNlIgASWgoPVXBkYXRlV29ya3NwYWNlEiEudGFpbG9yLnYxLlVwZGF0ZVdvcmtzcGFjZVJlcXVlc3QaIi50YWlsb3IudjEuVXBkYXRlV29ya3NwYWNlUmVzcG9uc2UiABJaCg9EZWxldGVXb3Jrc3BhY2USIS50YWlsb3IudjEuRGVsZXRlV29ya3NwYWNlUmVxdWVzdBoiLnRhaWxvci52MS5EZWxldGVXb3Jrc3BhY2VSZXNwb25zZSIAEloKDkxpc3RXb3Jrc3BhY2VzEiAudGFpbG9yLnYxLkxpc3RXb3Jrc3BhY2VzUmVxdWVzdBohLnRhaWxvci52MS5MaXN0V29ya3NwYWNlc1Jlc3BvbnNlIgOQAgESfgoaTGlzdE9yZ2FuaXphdGlvbldvcmtzcGFjZXMSLC50YWlsb3IudjEuTGlzdE9yZ2FuaXphdGlvbldvcmtzcGFjZXNSZXF1ZXN0Gi0udGFpbG9yLnYxLkxpc3RPcmdhbml6YXRpb25Xb3Jrc3BhY2VzUmVzcG9uc2UiA5ACARJdChBSZXN0b3JlV29ya3NwYWNlEiIudGFpbG9yLnYxLlJlc3RvcmVXb3Jrc3BhY2VSZXF1ZXN0GiMudGFpbG9yLnYxLlJlc3RvcmVXb3Jrc3BhY2VSZXNwb25zZSIAElQKDEdldFdvcmtzcGFjZRIeLnRhaWxvci52MS5HZXRXb3Jrc3BhY2VSZXF1ZXN0Gh8udGFpbG9yLnYxLkdldFdvcmtzcGFjZVJlc3BvbnNlIgOQAgESfgoaTGlzdFdvcmtzcGFjZVBsYXRmb3JtVXNlcnMSLC50YWlsb3IudjEuTGlzdFdvcmtzcGFjZVBsYXRmb3JtVXNlcnNSZXF1ZXN0Gi0udGFpbG9yLnYxLkxpc3RXb3Jrc3BhY2VQbGF0Zm9ybVVzZXJzUmVzcG9uc2UiA5ACARKlAQonTGlzdEF2YWlsYWJsZVdvcmtzcGFjZVBsYXRmb3JtVXNlclJvbGVzEjkudGFpbG9yLnYxLkxpc3RBdmFpbGFibGVXb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSb2xlc1JlcXVlc3QaOi50YWlsb3IudjEuTGlzdEF2YWlsYWJsZVdvcmtzcGFjZVBsYXRmb3JtVXNlclJvbGVzUmVzcG9uc2UiA5ACARJ+ChtJbnZpdGVXb3Jrc3BhY2VQbGF0Zm9ybVVzZXISLS50YWlsb3IudjEuSW52aXRlV29ya3NwYWNlUGxhdGZvcm1Vc2VyUmVxdWVzdBouLnRhaWxvci52MS5JbnZpdGVXb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSZXNwb25zZSIAEn4KG1JlbW92ZVdvcmtzcGFjZVBsYXRmb3JtVXNlchItLnRhaWxvci52MS5SZW1vdmVXb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSZXF1ZXN0Gi4udGFpbG9yLnYxLlJlbW92ZVdvcmtzcGFjZVBsYXRmb3JtVXNlclJlc3BvbnNlIgASfgobVXBkYXRlV29ya3NwYWNlUGxhdGZvcm1Vc2VyEi0udGFpbG9yLnYxLlVwZGF0ZVdvcmtzcGFjZVBsYXRmb3JtVXNlclJlcXVlc3QaLi50YWlsb3IudjEuVXBkYXRlV29ya3NwYWNlUGxhdGZvcm1Vc2VyUmVzcG9uc2UiABJ4ChhHZXRXb3Jrc3BhY2VQbGF0Zm9ybVVzZXISKi50YWlsb3IudjEuR2V0V29ya3NwYWNlUGxhdGZvcm1Vc2VyUmVxdWVzdBorLnRhaWxvci52MS5HZXRXb3Jrc3BhY2VQbGF0Zm9ybVVzZXJSZXNwb25zZSIDkAIBEmAKEEdldFdvcmtzcGFjZVJvbGUSIi50YWlsb3IudjEuR2V0V29ya3NwYWNlUm9sZVJlcXVlc3QaIy50YWlsb3IudjEuR2V0V29ya3NwYWNlUm9sZVJlc3BvbnNlIgOQAgESYwoSVXBkYXRlT3JnYW5pemF0aW9uEiQudGFpbG9yLnYxLlVwZGF0ZU9yZ2FuaXphdGlvblJlcXVlc3QaJS50YWlsb3IudjEuVXBkYXRlT3JnYW5pemF0aW9uUmVzcG9uc2UiABJdCg9HZXRPcmdhbml6YXRpb24SIS50YWlsb3IudjEuR2V0T3JnYW5pemF0aW9uUmVxdWVzdBoiLnRhaWxvci52MS5HZXRPcmdhbml6YXRpb25SZXNwb25zZSIDkAIBEmMKEUxpc3RPcmdhbml6YXRpb25zEiMudGFpbG9yLnYxLkxpc3RPcmdhbml6YXRpb25zUmVxdWVzdBokLnRhaWxvci52MS5MaXN0T3JnYW5pemF0aW9uc1Jlc3BvbnNlIgOQAgESbwoVTGlzdFVzZXJPcmdhbml6YXRpb25zEicudGFpbG9yLnYxLkxpc3RVc2VyT3JnYW5pemF0aW9uc1JlcXVlc3QaKC50YWlsb3IudjEuTGlzdFVzZXJPcmdhbml6YXRpb25zUmVzcG9uc2UiA5ACARJyChdHcmFudE9yZ2FuaXphdGlvbkFjY2VzcxIpLnRhaWxvci52MS5HcmFudE9yZ2FuaXphdGlvbkFjY2Vzc1JlcXVlc3QaKi50YWlsb3IudjEuR3JhbnRPcmdhbml6YXRpb25BY2Nlc3NSZXNwb25zZSIAEnUKGFVwZGF0ZU9yZ2FuaXphdGlvbkFjY2VzcxIqLnRhaWxvci52MS5VcGRhdGVPcmdhbml6YXRpb25BY2Nlc3NSZXF1ZXN0GisudGFpbG9yLnYxLlVwZGF0ZU9yZ2FuaXphdGlvbkFjY2Vzc1Jlc3BvbnNlIgASdQoYUmV2b2tlT3JnYW5pemF0aW9uQWNjZXNzEioudGFpbG9yLnYxLlJldm9rZU9yZ2FuaXphdGlvbkFjY2Vzc1JlcXVlc3QaKy50YWlsb3IudjEuUmV2b2tlT3JnYW5pemF0aW9uQWNjZXNzUmVzcG9uc2UiABJ4ChhMaXN0T3JnYW5pemF0aW9uQWNjZXNzZXMSKi50YWlsb3IudjEuTGlzdE9yZ2FuaXphdGlvbkFjY2Vzc2VzUmVxdWVzdBorLnRhaWxvci52MS5MaXN0T3JnYW5pemF0aW9uQWNjZXNzZXNSZXNwb25zZSIDkAIBEm8KFUdldE9yZ2FuaXphdGlvbkFjY2VzcxInLnRhaWxvci52MS5HZXRPcmdhbml6YXRpb25BY2Nlc3NSZXF1ZXN0GigudGFpbG9yLnYxLkdldE9yZ2FuaXphdGlvbkFjY2Vzc1Jlc3BvbnNlIgOQAgESdQoYQ3JlYXRlT3JnYW5pemF0aW9uRm9sZGVyEioudGFpbG9yLnYxLkNyZWF0ZU9yZ2FuaXphdGlvbkZvbGRlclJlcXVlc3QaKy50YWlsb3IudjEuQ3JlYXRlT3JnYW5pemF0aW9uRm9sZGVyUmVzcG9uc2UiABJ1ChhVcGRhdGVPcmdhbml6YXRpb25Gb2xkZXISKi50YWlsb3IudjEuVXBkYXRlT3JnYW5pemF0aW9uRm9sZGVyUmVxdWVzdBorLnRhaWxvci52MS5VcGRhdGVPcmdhbml6YXRpb25Gb2xkZXJSZXNwb25zZSIAEnUKGERlbGV0ZU9yZ2FuaXphdGlvbkZvbGRlchIqLnRhaWxvci52MS5EZWxldGVPcmdhbml6YXRpb25Gb2xkZXJSZXF1ZXN0GisudGFpbG9yLnYxLkRlbGV0ZU9yZ2FuaXphdGlvbkZvbGRlclJlc3BvbnNlIgASbwoVR2V0T3JnYW5pemF0aW9uRm9sZGVyEicudGFpbG9yLnYxLkdldE9yZ2FuaXphdGlvbkZvbGRlclJlcXVlc3QaKC50YWlsb3IudjEuR2V0T3JnYW5pemF0aW9uRm9sZGVyUmVzcG9uc2UiA5ACARJ1ChdMaXN0T3JnYW5pemF0aW9uRm9sZGVycxIpLnRhaWxvci52MS5MaXN0T3JnYW5pemF0aW9uRm9sZGVyc1JlcXVlc3QaKi50YWlsb3IudjEuTGlzdE9yZ2FuaXphdGlvbkZvbGRlcnNSZXNwb25zZSIDkAIBEoQBCh1HcmFudE9yZ2FuaXphdGlvbkZvbGRlckFjY2VzcxIvLnRhaWxvci52MS5HcmFudE9yZ2FuaXphdGlvbkZvbGRlckFjY2Vzc1JlcXVlc3QaMC50YWlsb3IudjEuR3JhbnRPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3NSZXNwb25zZSIAEocBCh5VcGRhdGVPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3MSMC50YWlsb3IudjEuVXBkYXRlT3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzUmVxdWVzdBoxLnRhaWxvci52MS5VcGRhdGVPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3NSZXNwb25zZSIAEocBCh5SZXZva2VPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3MSMC50YWlsb3IudjEuUmV2b2tlT3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzUmVxdWVzdBoxLnRhaWxvci52MS5SZXZva2VPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3NSZXNwb25zZSIAEooBCh5MaXN0T3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzZXMSMC50YWlsb3IudjEuTGlzdE9yZ2FuaXphdGlvbkZvbGRlckFjY2Vzc2VzUmVxdWVzdBoxLnRhaWxvci52MS5MaXN0T3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzZXNSZXNwb25zZSIDkAIBEoEBChtHZXRPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3MSLS50YWlsb3IudjEuR2V0T3JnYW5pemF0aW9uRm9sZGVyQWNjZXNzUmVxdWVzdBouLnRhaWxvci52MS5HZXRPcmdhbml6YXRpb25Gb2xkZXJBY2Nlc3NSZXNwb25zZSIDkAIBEooBCh9VcHNlcnRPcmdhbml6YXRpb25JUFJlc3RyaWN0aW9uEjEudGFpbG9yLnYxLlVwc2VydE9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXF1ZXN0GjIudGFpbG9yLnYxLlVwc2VydE9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXNwb25zZSIAEoQBChxHZXRPcmdhbml6YXRpb25JUFJlc3RyaWN0aW9uEi4udGFpbG9yLnYxLkdldE9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXF1ZXN0Gi8udGFpbG9yLnYxLkdldE9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXNwb25zZSIDkAIBEooBCh9EZWxldGVPcmdhbml6YXRpb25JUFJlc3RyaWN0aW9uEjEudGFpbG9yLnYxLkRlbGV0ZU9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXF1ZXN0GjIudGFpbG9yLnYxLkRlbGV0ZU9yZ2FuaXphdGlvbklQUmVzdHJpY3Rpb25SZXNwb25zZSIAEpwBCiVVcHNlcnRPcmdhbml6YXRpb25Gb2xkZXJJUFJlc3RyaWN0aW9uEjcudGFpbG9yLnYxLlVwc2VydE9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb25SZXF1ZXN0GjgudGFpbG9yLnYxLlVwc2VydE9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb25SZXNwb25zZSIAEpYBCiJHZXRPcmdhbml6YXRpb25Gb2xkZXJJUFJlc3RyaWN0aW9uEjQudGFpbG9yLnYxLkdldE9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb25SZXF1ZXN0GjUudGFpbG9yLnYxLkdldE9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb25SZXNwb25zZSIDkAIBEpwBCiVEZWxldGVPcmdhbml6YXRpb25Gb2xkZXJJUFJlc3RyaWN0aW9uEjcudGFpbG9yLnYxLkRlbGV0ZU9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb25SZXF1ZXN0GjgudGFpbG9yLnYxLkRlbGV0ZU9yZ2FuaXphdGlvbkZvbGRlcklQUmVzdHJpY3Rpb25SZXNwb25zZSIAEm8KFkNyZWF0ZU9yZ2FuaXphdGlvblRlYW0SKC50YWlsb3IudjEuQ3JlYXRlT3JnYW5pemF0aW9uVGVhbVJlcXVlc3QaKS50YWlsb3IudjEuQ3JlYXRlT3JnYW5pemF0aW9uVGVhbVJlc3BvbnNlIgASbwoWVXBkYXRlT3JnYW5pemF0aW9uVGVhbRIoLnRhaWxvci52MS5VcGRhdGVPcmdhbml6YXRpb25UZWFtUmVxdWVzdBopLnRhaWxvci52MS5VcGRhdGVPcmdhbml6YXRpb25UZWFtUmVzcG9uc2UiABJvChZEZWxldGVPcmdhbml6YXRpb25UZWFtEigudGFpbG9yLnYxLkRlbGV0ZU9yZ2FuaXphdGlvblRlYW1SZXF1ZXN0GikudGFpbG9yLnYxLkRlbGV0ZU9yZ2FuaXphdGlvblRlYW1SZXNwb25zZSIAEmkKE0dldE9yZ2FuaXphdGlvblRlYW0SJS50YWlsb3IudjEuR2V0T3JnYW5pemF0aW9uVGVhbVJlcXVlc3QaJi50YWlsb3IudjEuR2V0T3JnYW5pemF0aW9uVGVhbVJlc3BvbnNlIgOQAgESbwoVTGlzdE9yZ2FuaXphdGlvblRlYW1zEicudGFpbG9yLnYxLkxpc3RPcmdhbml6YXRpb25UZWFtc1JlcXVlc3QaKC50YWlsb3IudjEuTGlzdE9yZ2FuaXphdGlvblRlYW1zUmVzcG9uc2UiA5ACARJ4ChlBZGRPcmdhbml6YXRpb25UZWFtTWVtYmVyEisudGFpbG9yLnYxLkFkZE9yZ2FuaXphdGlvblRlYW1NZW1iZXJSZXF1ZXN0GiwudGFpbG9yLnYxLkFkZE9yZ2FuaXphdGlvblRlYW1NZW1iZXJSZXNwb25zZSIAEoEBChxVcGRhdGVPcmdhbml6YXRpb25UZWFtTWVtYmVyEi4udGFpbG9yLnYxLlVwZGF0ZU9yZ2FuaXphdGlvblRlYW1NZW1iZXJSZXF1ZXN0Gi8udGFpbG9yLnYxLlVwZGF0ZU9yZ2FuaXphdGlvblRlYW1NZW1iZXJSZXNwb25zZSIAEoEBChxSZW1vdmVPcmdhbml6YXRpb25UZWFtTWVtYmVyEi4udGFpbG9yLnYxLlJlbW92ZU9yZ2FuaXphdGlvblRlYW1NZW1iZXJSZXF1ZXN0Gi8udGFpbG9yLnYxLlJlbW92ZU9yZ2FuaXphdGlvblRlYW1NZW1iZXJSZXNwb25zZSIAEoEBChtMaXN0T3JnYW5pemF0aW9uVGVhbU1lbWJlcnMSLS50YWlsb3IudjEuTGlzdE9yZ2FuaXphdGlvblRlYW1NZW1iZXJzUmVxdWVzdBouLnRhaWxvci52MS5MaXN0T3JnYW5pemF0aW9uVGVhbU1lbWJlcnNSZXNwb25zZSIDkAIBEnsKGUdldE9yZ2FuaXphdGlvblRlYW1NZW1iZXISKy50YWlsb3IudjEuR2V0T3JnYW5pemF0aW9uVGVhbU1lbWJlclJlcXVlc3QaLC50YWlsb3IudjEuR2V0T3JnYW5pemF0aW9uVGVhbU1lbWJlclJlc3BvbnNlIgOQAgEScgoWR2V0UGxhdGZvcm1BY2NvdW50UGxhbhIoLnRhaWxvci52MS5HZXRQbGF0Zm9ybUFjY291bnRQbGFuUmVxdWVzdBopLnRhaWxvci52MS5HZXRQbGF0Zm9ybUFjY291bnRQbGFuUmVzcG9uc2UiA5ACARJgChFDcmVhdGVBcHBsaWNhdGlvbhIjLnRhaWxvci52MS5DcmVhdGVBcHBsaWNhdGlvblJlcXVlc3QaJC50YWlsb3IudjEuQ3JlYXRlQXBwbGljYXRpb25SZXNwb25zZSIAEmAKEVVwZGF0ZUFwcGxpY2F0aW9uEiMudGFpbG9yLnYxLlVwZGF0ZUFwcGxpY2F0aW9uUmVxdWVzdBokLnRhaWxvci52MS5VcGRhdGVBcHBsaWNhdGlvblJlc3BvbnNlIgASYAoRRGVsZXRlQXBwbGljYXRpb24SIy50YWlsb3IudjEuRGVsZXRlQXBwbGljYXRpb25SZXF1ZXN0GiQudGFpbG9yLnYxLkRlbGV0ZUFwcGxpY2F0aW9uUmVzcG9uc2UiABJgChBMaXN0QXBwbGljYXRpb25zEiIudGFpbG9yLnYxLkxpc3RBcHBsaWNhdGlvbnNSZXF1ZXN0GiMudGFpbG9yLnYxLkxpc3RBcHBsaWNhdGlvbnNSZXNwb25zZSIDkAIBEloKDkdldEFwcGxpY2F0aW9uEiAudGFpbG9yLnYxLkdldEFwcGxpY2F0aW9uUmVxdWVzdBohLnRhaWxvci52MS5HZXRBcHBsaWNhdGlvblJlc3BvbnNlIgOQAgESfgoaR2V0QXBwbGljYXRpb25TY2hlbWFIZWFsdGgSLC50YWlsb3IudjEuR2V0QXBwbGljYXRpb25TY2hlbWFIZWFsdGhSZXF1ZXN0Gi0udGFpbG9yLnYxLkdldEFwcGxpY2F0aW9uU2NoZW1hSGVhbHRoUmVzcG9uc2UiA5ACARJaCg9DcmVhdGVBSUdhdGV3YXkSIS50YWlsb3IudjEuQ3JlYXRlQUlHYXRld2F5UmVxdWVzdBoiLnRhaWxvci52MS5DcmVhdGVBSUdhdGV3YXlSZXNwb25zZSIAEloKD1VwZGF0ZUFJR2F0ZXdheRIhLnRhaWxvci52MS5VcGRhdGVBSUdhdGV3YXlSZXF1ZXN0GiIudGFpbG9yLnYxLlVwZGF0ZUFJR2F0ZXdheVJlc3BvbnNlIgASWgoPRGVsZXRlQUlHYXRld2F5EiEudGFpbG9yLnYxLkRlbGV0ZUFJR2F0ZXdheVJlcXVlc3QaIi50YWlsb3IudjEuRGVsZXRlQUlHYXRld2F5UmVzcG9uc2UiABJUCgxHZXRBSUdhdGV3YXkSHi50YWlsb3IudjEuR2V0QUlHYXRld2F5UmVxdWVzdBofLnRhaWxvci52MS5HZXRBSUdhdGV3YXlSZXNwb25zZSIDkAIBEloKDkxpc3RBSUdhdGV3YXlzEiAudGFpbG9yLnYxLkxpc3RBSUdhdGV3YXlzUmVxdWVzdBohLnRhaWxvci52MS5MaXN0QUlHYXRld2F5c1Jlc3BvbnNlIgOQAgESYwoSQ29tcG9zZVRhaWxvckRCU0RMEiQudGFpbG9yLnYxLkNvbXBvc2VUYWlsb3JEQlNETFJlcXVlc3QaJS50YWlsb3IudjEuQ29tcG9zZVRhaWxvckRCU0RMUmVzcG9uc2UiABJsChVDcmVhdGVUYWlsb3JEQlNlcnZpY2USJy50YWlsb3IudjEuQ3JlYXRlVGFpbG9yREJTZXJ2aWNlUmVxdWVzdBooLnRhaWxvci52MS5DcmVhdGVUYWlsb3JEQlNlcnZpY2VSZXNwb25zZSIAEmwKFVVwZGF0ZVRhaWxvckRCU2VydmljZRInLnRhaWxvci52MS5VcGRhdGVUYWlsb3JEQlNlcnZpY2VSZXF1ZXN0GigudGFpbG9yLnYxLlVwZGF0ZVRhaWxvckRCU2VydmljZVJlc3BvbnNlIgASbAoVRGVsZXRlVGFpbG9yREJTZXJ2aWNlEicudGFpbG9yLnYxLkRlbGV0ZVRhaWxvckRCU2VydmljZVJlcXVlc3QaKC50YWlsb3IudjEuRGVsZXRlVGFpbG9yREJTZXJ2aWNlUmVzcG9uc2UiABJmChJHZXRUYWlsb3JEQlNlcnZpY2USJC50YWlsb3IudjEuR2V0VGFpbG9yREJTZXJ2aWNlUmVxdWVzdBolLnRhaWxvci52MS5HZXRUYWlsb3JEQlNlcnZpY2VSZXNwb25zZSIDkAIBEmwKFExpc3RUYWlsb3JEQlNlcnZpY2VzEiYudGFpbG9yLnYxLkxpc3RUYWlsb3JEQlNlcnZpY2VzUmVxdWVzdBonLnRhaWxvci52MS5MaXN0VGFpbG9yREJTZXJ2aWNlc1Jlc3BvbnNlIgOQAgESYwoSQ3JlYXRlVGFpbG9yREJUeXBlEiQudGFpbG9yLnYxLkNyZWF0ZVRhaWxvckRCVHlwZVJlcXVlc3QaJS50YWlsb3IudjEuQ3JlYXRlVGFpbG9yREJUeXBlUmVzcG9uc2UiABJjChJVcGRhdGVUYWlsb3JEQlR5cGUSJC50YWlsb3IudjEuVXBkYXRlVGFpbG9yREJUeXBlUmVxdWVzdBolLnRhaWxvci52MS5VcGRhdGVUYWlsb3JEQlR5cGVSZXNwb25zZSIAEmMKEkRlbGV0ZVRhaWxvckRCVHlwZRIkLnRhaWxvci52MS5EZWxldGVUYWlsb3JEQlR5cGVSZXF1ZXN0GiUudGFpbG9yLnYxLkRlbGV0ZVRhaWxvckRCVHlwZVJlc3BvbnNlIgASbAoVVHJ1bmNhdGVUYWlsb3JEQlR5cGVzEicudGFpbG9yLnYxLlRydW5jYXRlVGFpbG9yREJUeXBlc1JlcXVlc3QaKC50YWlsb3IudjEuVHJ1bmNhdGVUYWlsb3JEQlR5cGVzUmVzcG9uc2UiABJpChRUcnVuY2F0ZVRhaWxvckRCVHlwZRImLnRhaWxvci52MS5UcnVuY2F0ZVRhaWxvckRCVHlwZVJlcXVlc3QaJy50YWlsb3IudjEuVHJ1bmNhdGVUYWlsb3JEQlR5cGVSZXNwb25zZSIAEmMKEUxpc3RUYWlsb3JEQlR5cGVzEiMudGFpbG9yLnYxLkxpc3RUYWlsb3JEQlR5cGVzUmVxdWVzdBokLnRhaWxvci52MS5MaXN0VGFpbG9yREJUeXBlc1Jlc3BvbnNlIgOQAgESXQoPR2V0VGFpbG9yREJUeXBlEiEudGFpbG9yLnYxLkdldFRhaWxvckRCVHlwZVJlcXVlc3QaIi50YWlsb3IudjEuR2V0VGFpbG9yREJUeXBlUmVzcG9uc2UiA5ACARJ+ChtDcmVhdGVUYWlsb3JEQkdRTFBlcm1pc3Npb24SLS50YWlsb3IudjEuQ3JlYXRlVGFpbG9yREJHUUxQZXJtaXNzaW9uUmVxdWVzdBouLnRhaWxvci52MS5DcmVhdGVUYWlsb3JEQkdRTFBlcm1pc3Npb25SZXNwb25zZSIAEngKGEdldFRhaWxvckRCR1FMUGVybWlzc2lvbhIqLnRhaWxvci52MS5HZXRUYWlsb3JEQkdRTFBlcm1pc3Npb25SZXF1ZXN0GisudGFpbG9yLnYxLkdldFRhaWxvckRCR1FMUGVybWlzc2lvblJlc3BvbnNlIgOQAgESfgoaTGlzdFRhaWxvckRCR1FMUGVybWlzc2lvbnMSLC50YWlsb3IudjEuTGlzdFRhaWxvckRCR1FMUGVybWlzc2lvbnNSZXF1ZXN0Gi0udGFpbG9yLnYxLkxpc3RUYWlsb3JEQkdRTFBlcm1pc3Npb25zUmVzcG9uc2UiA5ACARJ+ChtVcGRhdGVUYWlsb3JEQkdRTFBlcm1pc3Npb24SLS50YWlsb3IudjEuVXBkYXRlVGFpbG9yREJHUUxQZXJtaXNzaW9uUmVxdWVzdBouLnRhaWxvci52MS5VcGRhdGVUYWlsb3JEQkdRTFBlcm1pc3Npb25SZXNwb25zZSIAEn4KG0RlbGV0ZVRhaWxvckRCR1FMUGVybWlzc2lvbhItLnRhaWxvci52MS5EZWxldGVUYWlsb3JEQkdRTFBlcm1pc3Npb25SZXF1ZXN0Gi4udGFpbG9yLnYxLkRlbGV0ZVRhaWxvckRCR1FMUGVybWlzc2lvblJlc3BvbnNlIgASbAoVQ3JlYXRlUGlwZWxpbmVTZXJ2aWNlEicudGFpbG9yLnYxLkNyZWF0ZVBpcGVsaW5lU2VydmljZVJlcXVlc3QaKC50YWlsb3IudjEuQ3JlYXRlUGlwZWxpbmVTZXJ2aWNlUmVzcG9uc2UiABJsChVVcGRhdGVQaXBlbGluZVNlcnZpY2USJy50YWlsb3IudjEuVXBkYXRlUGlwZWxpbmVTZXJ2aWNlUmVxdWVzdBooLnRhaWxvci52MS5VcGRhdGVQaXBlbGluZVNlcnZpY2VSZXNwb25zZSIAEmwKFURlbGV0ZVBpcGVsaW5lU2VydmljZRInLnRhaWxvci52MS5EZWxldGVQaXBlbGluZVNlcnZpY2VSZXF1ZXN0GigudGFpbG9yLnYxLkRlbGV0ZVBpcGVsaW5lU2VydmljZVJlc3BvbnNlIgASZgoSR2V0UGlwZWxpbmVTZXJ2aWNlEiQudGFpbG9yLnYxLkdldFBpcGVsaW5lU2VydmljZVJlcXVlc3QaJS50YWlsb3IudjEuR2V0UGlwZWxpbmVTZXJ2aWNlUmVzcG9uc2UiA5ACARJsChRMaXN0UGlwZWxpbmVTZXJ2aWNlcxImLnRhaWxvci52MS5MaXN0UGlwZWxpbmVTZXJ2aWNlc1JlcXVlc3QaJy50YWlsb3IudjEuTGlzdFBpcGVsaW5lU2VydmljZXNSZXNwb25zZSIDkAIBEmkKE0dldFBpcGVsaW5lUmVzb2x2ZXISJS50YWlsb3IudjEuR2V0UGlwZWxpbmVSZXNvbHZlclJlcXVlc3QaJi50YWlsb3IudjEuR2V0UGlwZWxpbmVSZXNvbHZlclJlc3BvbnNlIgOQAgESbwoVTGlzdFBpcGVsaW5lUmVzb2x2ZXJzEicudGFpbG9yLnYxLkxpc3RQaXBlbGluZVJlc29sdmVyc1JlcXVlc3QaKC50YWlsb3IudjEuTGlzdFBpcGVsaW5lUmVzb2x2ZXJzUmVzcG9uc2UiA5ACARJvChZDcmVhdGVQaXBlbGluZVJlc29sdmVyEigudGFpbG9yLnYxLkNyZWF0ZVBpcGVsaW5lUmVzb2x2ZXJSZXF1ZXN0GikudGFpbG9yLnYxLkNyZWF0ZVBpcGVsaW5lUmVzb2x2ZXJSZXNwb25zZSIAEm8KFlVwZGF0ZVBpcGVsaW5lUmVzb2x2ZXISKC50YWlsb3IudjEuVXBkYXRlUGlwZWxpbmVSZXNvbHZlclJlcXVlc3QaKS50YWlsb3IudjEuVXBkYXRlUGlwZWxpbmVSZXNvbHZlclJlc3BvbnNlIgASbwoWRGVsZXRlUGlwZWxpbmVSZXNvbHZlchIoLnRhaWxvci52MS5EZWxldGVQaXBlbGluZVJlc29sdmVyUmVxdWVzdBopLnRhaWxvci52MS5EZWxldGVQaXBlbGluZVJlc29sdmVyUmVzcG9uc2UiABJjChJDb21wb3NlUGlwZWxpbmVTREwSJC50YWlsb3IudjEuQ29tcG9zZVBpcGVsaW5lU0RMUmVxdWVzdBolLnRhaWxvci52MS5Db21wb3NlUGlwZWxpbmVTRExSZXNwb25zZSIAEpwBCiRMaXN0UGlwZWxpbmVSZXNvbHZlckV4ZWN1dGlvblJlc3VsdHMSNi50YWlsb3IudjEuTGlzdFBpcGVsaW5lUmVzb2x2ZXJFeGVjdXRpb25SZXN1bHRzUmVxdWVzdBo3LnRhaWxvci52MS5MaXN0UGlwZWxpbmVSZXNvbHZlckV4ZWN1dGlvblJlc3VsdHNSZXNwb25zZSIDkAIBEpYBCiJHZXRQaXBlbGluZVJlc29sdmVyRXhlY3V0aW9uUmVzdWx0EjQudGFpbG9yLnYxLkdldFBpcGVsaW5lUmVzb2x2ZXJFeGVjdXRpb25SZXN1bHRSZXF1ZXN0GjUudGFpbG9yLnYxLkdldFBpcGVsaW5lUmVzb2x2ZXJFeGVjdXRpb25SZXN1bHRSZXNwb25zZSIDkAIBEnIKF1Jlc3RhcnRQaXBlbGluZVJlc29sdmVyEikudGFpbG9yLnYxLlJlc3RhcnRQaXBlbGluZVJlc29sdmVyUmVxdWVzdBoqLnRhaWxvci52MS5SZXN0YXJ0UGlwZWxpbmVSZXNvbHZlclJlc3BvbnNlIgASbwoWQ3JlYXRlU3RhdGVmbG93U2VydmljZRIoLnRhaWxvci52MS5DcmVhdGVTdGF0ZWZsb3dTZXJ2aWNlUmVxdWVzdBopLnRhaWxvci52MS5DcmVhdGVTdGF0ZWZsb3dTZXJ2aWNlUmVzcG9uc2UiABJvChZVcGRhdGVTdGF0ZWZsb3dTZXJ2aWNlEigudGFpbG9yLnYxLlVwZGF0ZVN0YXRlZmxvd1NlcnZpY2VSZXF1ZXN0GikudGFpbG9yLnYxLlVwZGF0ZVN0YXRlZmxvd1NlcnZpY2VSZXNwb25zZSIAEm8KFkRlbGV0ZVN0YXRlZmxvd1NlcnZpY2USKC50YWlsb3IudjEuRGVsZXRlU3RhdGVmbG93U2VydmljZVJlcXVlc3QaKS50YWlsb3IudjEuRGVsZXRlU3RhdGVmbG93U2VydmljZVJlc3BvbnNlIgASaQoTR2V0U3RhdGVmbG93U2VydmljZRIlLnRhaWxvci52MS5HZXRTdGF0ZWZsb3dTZXJ2aWNlUmVxdWVzdBomLnRhaWxvci52MS5HZXRTdGF0ZWZsb3dTZXJ2aWNlUmVzcG9uc2UiA5ACARJvChVMaXN0U3RhdGVmbG93U2VydmljZXMSJy50YWlsb3IudjEuTGlzdFN0YXRlZmxvd1NlcnZpY2VzUmVxdWVzdBooLnRhaWxvci52MS5MaXN0U3RhdGVmbG93U2VydmljZXNSZXNwb25zZSIDkAIBEm8KFkNyZWF0ZUV4ZWN1dG9yRXhlY3V0b3ISKC50YWlsb3IudjEuQ3JlYXRlRXhlY3V0b3JFeGVjdXRvclJlcXVlc3QaKS50YWlsb3IudjEuQ3JlYXRlRXhlY3V0b3JFeGVjdXRvclJlc3BvbnNlIgASbwoWVXBkYXRlRXhlY3V0b3JFeGVjdXRvchIoLnRhaWxvci52MS5VcGRhdGVFeGVjdXRvckV4ZWN1dG9yUmVxdWVzdBopLnRhaWxvci52MS5VcGRhdGVFeGVjdXRvckV4ZWN1dG9yUmVzcG9uc2UiABJpChNHZXRFeGVjdXRvckV4ZWN1dG9yEiUudGFpbG9yLnYxLkdldEV4ZWN1dG9yRXhlY3V0b3JSZXF1ZXN0GiYudGFpbG9yLnYxLkdldEV4ZWN1dG9yRXhlY3V0b3JSZXNwb25zZSIDkAIBEm8KFkRlbGV0ZUV4ZWN1dG9yRXhlY3V0b3ISKC50YWlsb3IudjEuRGVsZXRlRXhlY3V0b3JFeGVjdXRvclJlcXVlc3QaKS50YWlsb3IudjEuRGVsZXRlRXhlY3V0b3JFeGVjdXRvclJlc3BvbnNlIgASbwoVTGlzdEV4ZWN1dG9yRXhlY3V0b3JzEicudGFpbG9yLnYxLkxpc3RFeGVjdXRvckV4ZWN1dG9yc1JlcXVlc3QaKC50YWlsb3IudjEuTGlzdEV4ZWN1dG9yRXhlY3V0b3JzUmVzcG9uc2UiA5ACARJaCg5HZXRFeGVjdXRvckpvYhIgLnRhaWxvci52MS5HZXRFeGVjdXRvckpvYlJlcXVlc3QaIS50YWlsb3IudjEuR2V0RXhlY3V0b3JKb2JSZXNwb25zZSIDkAIBEmAKEExpc3RFeGVjdXRvckpvYnMSIi50YWlsb3IudjEuTGlzdEV4ZWN1dG9ySm9ic1JlcXVlc3QaIy50YWlsb3IudjEuTGlzdEV4ZWN1dG9ySm9ic1Jlc3BvbnNlIgOQAgESdQoXTGlzdEV4ZWN1dG9ySm9iQXR0ZW1wdHMSKS50YWlsb3IudjEuTGlzdEV4ZWN1dG9ySm9iQXR0ZW1wdHNSZXF1ZXN0GioudGFpbG9yLnYxLkxpc3RFeGVjdXRvckpvYkF0dGVtcHRzUmVzcG9uc2UiA5ACARKEAQocTGlzdEV4ZWN1dG9ySW5jb21pbmdXZWJob29rcxIuLnRhaWxvci52MS5MaXN0RXhlY3V0b3JJbmNvbWluZ1dlYmhvb2tzUmVxdWVzdBovLnRhaWxvci52MS5MaXN0RXhlY3V0b3JJbmNvbWluZ1dlYmhvb2tzUmVzcG9uc2UiA5ACARJ+ChpHZXRFeGVjdXRvckluY29taW5nV2ViaG9vaxIsLnRhaWxvci52MS5HZXRFeGVjdXRvckluY29taW5nV2ViaG9va1JlcXVlc3QaLS50YWlsb3IudjEuR2V0RXhlY3V0b3JJbmNvbWluZ1dlYmhvb2tSZXNwb25zZSIDkAIBEloKD1RyaWdnZXJFeGVjdXRvchIhLnRhaWxvci52MS5UcmlnZ2VyRXhlY3V0b3JSZXF1ZXN0GiIudGFpbG9yLnYxLlRyaWdnZXJFeGVjdXRvclJlc3BvbnNlIgASdQoYQ3JlYXRlU2VjcmV0TWFuYWdlclZhdWx0EioudGFpbG9yLnYxLkNyZWF0ZVNlY3JldE1hbmFnZXJWYXVsdFJlcXVlc3QaKy50YWlsb3IudjEuQ3JlYXRlU2VjcmV0TWFuYWdlclZhdWx0UmVzcG9uc2UiABJvChVHZXRTZWNyZXRNYW5hZ2VyVmF1bHQSJy50YWlsb3IudjEuR2V0U2VjcmV0TWFuYWdlclZhdWx0UmVxdWVzdBooLnRhaWxvci52MS5HZXRTZWNyZXRNYW5hZ2VyVmF1bHRSZXNwb25zZSIDkAIBEnUKGERlbGV0ZVNlY3JldE1hbmFnZXJWYXVsdBIqLnRhaWxvci52MS5EZWxldGVTZWNyZXRNYW5hZ2VyVmF1bHRSZXF1ZXN0GisudGFpbG9yLnYxLkRlbGV0ZVNlY3JldE1hbmFnZXJWYXVsdFJlc3BvbnNlIgASdQoXTGlzdFNlY3JldE1hbmFnZXJWYXVsdHMSKS50YWlsb3IudjEuTGlzdFNlY3JldE1hbmFnZXJWYXVsdHNSZXF1ZXN0GioudGFpbG9yLnYxLkxpc3RTZWNyZXRNYW5hZ2VyVmF1bHRzUmVzcG9uc2UiA5ACARJ4ChlDcmVhdGVTZWNyZXRNYW5hZ2VyU2VjcmV0EisudGFpbG9yLnYxLkNyZWF0ZVNlY3JldE1hbmFnZXJTZWNyZXRSZXF1ZXN0GiwudGFpbG9yLnYxLkNyZWF0ZVNlY3JldE1hbmFnZXJTZWNyZXRSZXNwb25zZSIAEngKGVVwZGF0ZVNlY3JldE1hbmFnZXJTZWNyZXQSKy50YWlsb3IudjEuVXBkYXRlU2VjcmV0TWFuYWdlclNlY3JldFJlcXVlc3QaLC50YWlsb3IudjEuVXBkYXRlU2VjcmV0TWFuYWdlclNlY3JldFJlc3BvbnNlIgAScgoWR2V0U2VjcmV0TWFuYWdlclNlY3JldBIoLnRhaWxvci52MS5HZXRTZWNyZXRNYW5hZ2VyU2VjcmV0UmVxdWVzdBopLnRhaWxvci52MS5HZXRTZWNyZXRNYW5hZ2VyU2VjcmV0UmVzcG9uc2UiA5ACARJ4ChlEZWxldGVTZWNyZXRNYW5hZ2VyU2VjcmV0EisudGFpbG9yLnYxLkRlbGV0ZVNlY3JldE1hbmFnZXJTZWNyZXRSZXF1ZXN0GiwudGFpbG9yLnYxLkRlbGV0ZVNlY3JldE1hbmFnZXJTZWNyZXRSZXNwb25zZSIAEngKGExpc3RTZWNyZXRNYW5hZ2VyU2VjcmV0cxIqLnRhaWxvci52MS5MaXN0U2VjcmV0TWFuYWdlclNlY3JldHNSZXF1ZXN0GisudGFpbG9yLnYxLkxpc3RTZWNyZXRNYW5hZ2VyU2VjcmV0c1Jlc3BvbnNlIgOQAgESYAoRQ3JlYXRlQXV0aFNlcnZpY2USIy50YWlsb3IudjEuQ3JlYXRlQXV0aFNlcnZpY2VSZXF1ZXN0GiQudGFpbG9yLnYxLkNyZWF0ZUF1dGhTZXJ2aWNlUmVzcG9uc2UiABJgChFVcGRhdGVBdXRoU2VydmljZRIjLnRhaWxvci52MS5VcGRhdGVBdXRoU2VydmljZVJlcXVlc3QaJC50YWlsb3IudjEuVXBkYXRlQXV0aFNlcnZpY2VSZXNwb25zZSIAEmAKEURlbGV0ZUF1dGhTZXJ2aWNlEiMudGFpbG9yLnYxLkRlbGV0ZUF1dGhTZXJ2aWNlUmVxdWVzdBokLnRhaWxvci52MS5EZWxldGVBdXRoU2VydmljZVJlc3BvbnNlIgASWgoOR2V0QXV0aFNlcnZpY2USIC50YWlsb3IudjEuR2V0QXV0aFNlcnZpY2VSZXF1ZXN0GiEudGFpbG9yLnYxLkdldEF1dGhTZXJ2aWNlUmVzcG9uc2UiA5ACARJgChBMaXN0QXV0aFNlcnZpY2VzEiIudGFpbG9yLnYxLkxpc3RBdXRoU2VydmljZXNSZXF1ZXN0GiMudGFpbG9yLnYxLkxpc3RBdXRoU2VydmljZXNSZXNwb25zZSIDkAIBEmYKE0NyZWF0ZUF1dGhJRFBDb25maWcSJS50YWlsb3IudjEuQ3JlYXRlQXV0aElEUENvbmZpZ1JlcXVlc3QaJi50YWlsb3IudjEuQ3JlYXRlQXV0aElEUENvbmZpZ1Jlc3BvbnNlIgASZgoTVXBkYXRlQXV0aElEUENvbmZpZxIlLnRhaWxvci52MS5VcGRhdGVBdXRoSURQQ29uZmlnUmVxdWVzdBomLnRhaWxvci52MS5VcGRhdGVBdXRoSURQQ29uZmlnUmVzcG9uc2UiABJmChNEZWxldGVBdXRoSURQQ29uZmlnEiUudGFpbG9yLnYxLkRlbGV0ZUF1dGhJRFBDb25maWdSZXF1ZXN0GiYudGFpbG9yLnYxLkRlbGV0ZUF1dGhJRFBDb25maWdSZXNwb25zZSIAEmAKEEdldEF1dGhJRFBDb25maWcSIi50YWlsb3IudjEuR2V0QXV0aElEUENvbmZpZ1JlcXVlc3QaIy50YWlsb3IudjEuR2V0QXV0aElEUENvbmZpZ1Jlc3BvbnNlIgOQAgESZgoSTGlzdEF1dGhJRFBDb25maWdzEiQudGFpbG9yLnYxLkxpc3RBdXRoSURQQ29uZmlnc1JlcXVlc3QaJS50YWlsb3IudjEuTGlzdEF1dGhJRFBDb25maWdzUmVzcG9uc2UiA5ACARJyChdDcmVhdGVVc2VyUHJvZmlsZUNvbmZpZxIpLnRhaWxvci52MS5DcmVhdGVVc2VyUHJvZmlsZUNvbmZpZ1JlcXVlc3QaKi50YWlsb3IudjEuQ3JlYXRlVXNlclByb2ZpbGVDb25maWdSZXNwb25zZSIAEnIKF1VwZGF0ZVVzZXJQcm9maWxlQ29uZmlnEikudGFpbG9yLnYxLlVwZGF0ZVVzZXJQcm9maWxlQ29uZmlnUmVxdWVzdBoqLnRhaWxvci52MS5VcGRhdGVVc2VyUHJvZmlsZUNvbmZpZ1Jlc3BvbnNlIgAScgoXRGVsZXRlVXNlclByb2ZpbGVDb25maWcSKS50YWlsb3IudjEuRGVsZXRlVXNlclByb2ZpbGVDb25maWdSZXF1ZXN0GioudGFpbG9yLnYxLkRlbGV0ZVVzZXJQcm9maWxlQ29uZmlnUmVzcG9uc2UiABJsChRHZXRVc2VyUHJvZmlsZUNvbmZpZxImLnRhaWxvci52MS5HZXRVc2VyUHJvZmlsZUNvbmZpZ1JlcXVlc3QaJy50YWlsb3IudjEuR2V0VXNlclByb2ZpbGVDb25maWdSZXNwb25zZSIDkAIBEmMKEkNyZWF0ZVRlbmFudENvbmZpZxIkLnRhaWxvci52MS5DcmVhdGVUZW5hbnRDb25maWdSZXF1ZXN0GiUudGFpbG9yLnYxLkNyZWF0ZVRlbmFudENvbmZpZ1Jlc3BvbnNlIgASYwoSVXBkYXRlVGVuYW50Q29uZmlnEiQudGFpbG9yLnYxLlVwZGF0ZVRlbmFudENvbmZpZ1JlcXVlc3QaJS50YWlsb3IudjEuVXBkYXRlVGVuYW50Q29uZmlnUmVzcG9uc2UiABJjChJEZWxldGVUZW5hbnRDb25maWcSJC50YWlsb3IudjEuRGVsZXRlVGVuYW50Q29uZmlnUmVxdWVzdBolLnRhaWxvci52MS5EZWxldGVUZW5hbnRDb25maWdSZXNwb25zZSIAEl0KD0dldFRlbmFudENvbmZpZxIhLnRhaWxvci52MS5HZXRUZW5hbnRDb25maWdSZXF1ZXN0GiIudGFpbG9yLnYxLkdldFRlbmFudENvbmZpZ1Jlc3BvbnNlIgOQAgESeAoZQ3JlYXRlUGVyc29uYWxBY2Nlc3NUb2tlbhIrLnRhaWxvci52MS5DcmVhdGVQZXJzb25hbEFjY2Vzc1Rva2VuUmVxdWVzdBosLnRhaWxvci52MS5DcmVhdGVQZXJzb25hbEFjY2Vzc1Rva2VuUmVzcG9uc2UiABJ4ChlEZWxldGVQZXJzb25hbEFjY2Vzc1Rva2VuEisudGFpbG9yLnYxLkRlbGV0ZVBlcnNvbmFsQWNjZXNzVG9rZW5SZXF1ZXN0GiwudGFpbG9yLnYxLkRlbGV0ZVBlcnNvbmFsQWNjZXNzVG9rZW5SZXNwb25zZSIAEngKGExpc3RQZXJzb25hbEFjY2Vzc1Rva2VucxIqLnRhaWxvci52MS5MaXN0UGVyc29uYWxBY2Nlc3NUb2tlbnNSZXF1ZXN0GisudGFpbG9yLnYxLkxpc3RQZXJzb25hbEFjY2Vzc1Rva2Vuc1Jlc3BvbnNlIgOQAgESbAoVQ3JlYXRlQXV0aE1hY2hpbmVVc2VyEicudGFpbG9yLnYxLkNyZWF0ZUF1dGhNYWNoaW5lVXNlclJlcXVlc3QaKC50YWlsb3IudjEuQ3JlYXRlQXV0aE1hY2hpbmVVc2VyUmVzcG9uc2UiABJsChVVcGRhdGVBdXRoTWFjaGluZVVzZXISJy50YWlsb3IudjEuVXBkYXRlQXV0aE1hY2hpbmVVc2VyUmVxdWVzdBooLnRhaWxvci52MS5VcGRhdGVBdXRoTWFjaGluZVVzZXJSZXNwb25zZSIAEmwKFURlbGV0ZUF1dGhNYWNoaW5lVXNlchInLnRhaWxvci52MS5EZWxldGVBdXRoTWFjaGluZVVzZXJSZXF1ZXN0GigudGFpbG9yLnYxLkRlbGV0ZUF1dGhNYWNoaW5lVXNlclJlc3BvbnNlIgASZgoSR2V0QXV0aE1hY2hpbmVVc2VyEiQudGFpbG9yLnYxLkdldEF1dGhNYWNoaW5lVXNlclJlcXVlc3QaJS50YWlsb3IudjEuR2V0QXV0aE1hY2hpbmVVc2VyUmVzcG9uc2UiA5ACARJsChRMaXN0QXV0aE1hY2hpbmVVc2VycxImLnRhaWxvci52MS5MaXN0QXV0aE1hY2hpbmVVc2Vyc1JlcXVlc3QaJy50YWlsb3IudjEuTGlzdEF1dGhNYWNoaW5lVXNlcnNSZXNwb25zZSIDkAIBEmkKFENyZWF0ZUF1dGhTQ0lNQ29uZmlnEiYudGFpbG9yLnYxLkNyZWF0ZUF1dGhTQ0lNQ29uZmlnUmVxdWVzdBonLnRhaWxvci52MS5DcmVhdGVBdXRoU0NJTUNvbmZpZ1Jlc3BvbnNlIgASaQoUVXBkYXRlQXV0aFNDSU1Db25maWcSJi50YWlsb3IudjEuVXBkYXRlQXV0aFNDSU1Db25maWdSZXF1ZXN0GicudGFpbG9yLnYxLlVwZGF0ZUF1dGhTQ0lNQ29uZmlnUmVzcG9uc2UiABJpChREZWxldGVBdXRoU0NJTUNvbmZpZxImLnRhaWxvci52MS5EZWxldGVBdXRoU0NJTUNvbmZpZ1JlcXVlc3QaJy50YWlsb3IudjEuRGVsZXRlQXV0aFNDSU1Db25maWdSZXNwb25zZSIAEmMKEUdldEF1dGhTQ0lNQ29uZmlnEiMudGFpbG9yLnYxLkdldEF1dGhTQ0lNQ29uZmlnUmVxdWVzdBokLnRhaWxvci52MS5HZXRBdXRoU0NJTUNvbmZpZ1Jlc3BvbnNlIgOQAgESbwoWQ3JlYXRlQXV0aFNDSU1SZXNvdXJjZRIoLnRhaWxvci52MS5DcmVhdGVBdXRoU0NJTVJlc291cmNlUmVxdWVzdBopLnRhaWxvci52MS5DcmVhdGVBdXRoU0NJTVJlc291cmNlUmVzcG9uc2UiABJvChZVcGRhdGVBdXRoU0NJTVJlc291cmNlEigudGFpbG9yLnYxLlVwZGF0ZUF1dGhTQ0lNUmVzb3VyY2VSZXF1ZXN0GikudGFpbG9yLnYxLlVwZGF0ZUF1dGhTQ0lNUmVzb3VyY2VSZXNwb25zZSIAEm8KFkRlbGV0ZUF1dGhTQ0lNUmVzb3VyY2USKC50YWlsb3IudjEuRGVsZXRlQXV0aFNDSU1SZXNvdXJjZVJlcXVlc3QaKS50YWlsb3IudjEuRGVsZXRlQXV0aFNDSU1SZXNvdXJjZVJlc3BvbnNlIgASaQoTR2V0QXV0aFNDSU1SZXNvdXJjZRIlLnRhaWxvci52MS5HZXRBdXRoU0NJTVJlc291cmNlUmVxdWVzdBomLnRhaWxvci52MS5HZXRBdXRoU0NJTVJlc291cmNlUmVzcG9uc2UiA5ACARJsChRHZXRBdXRoU0NJTVJlc291cmNlcxImLnRhaWxvci52MS5HZXRBdXRoU0NJTVJlc291cmNlc1JlcXVlc3QaJy50YWlsb3IudjEuR2V0QXV0aFNDSU1SZXNvdXJjZXNSZXNwb25zZSIDkAIBElcKDkNyZWF0ZUF1dGhIb29rEiAudGFpbG9yLnYxLkNyZWF0ZUF1dGhIb29rUmVxdWVzdBohLnRhaWxvci52MS5DcmVhdGVBdXRoSG9va1Jlc3BvbnNlIgASVwoOVXBkYXRlQXV0aEhvb2sSIC50YWlsb3IudjEuVXBkYXRlQXV0aEhvb2tSZXF1ZXN0GiEudGFpbG9yLnYxLlVwZGF0ZUF1dGhIb29rUmVzcG9uc2UiABJXCg5EZWxldGVBdXRoSG9vaxIgLnRhaWxvci52MS5EZWxldGVBdXRoSG9va1JlcXVlc3QaIS50YWlsb3IudjEuRGVsZXRlQXV0aEhvb2tSZXNwb25zZSIAElEKC0dldEF1dGhIb29rEh0udGFpbG9yLnYxLkdldEF1dGhIb29rUmVxdWVzdBoeLnRhaWxvci52MS5HZXRBdXRoSG9va1Jlc3BvbnNlIgOQAgESaQoUQ3JlYXRlQXV0aENvbm5lY3Rpb24SJi50YWlsb3IudjEuQ3JlYXRlQXV0aENvbm5lY3Rpb25SZXF1ZXN0GicudGFpbG9yLnYxLkNyZWF0ZUF1dGhDb25uZWN0aW9uUmVzcG9uc2UiABJpChRVcGRhdGVBdXRoQ29ubmVjdGlvbhImLnRhaWxvci52MS5VcGRhdGVBdXRoQ29ubmVjdGlvblJlcXVlc3QaJy50YWlsb3IudjEuVXBkYXRlQXV0aENvbm5lY3Rpb25SZXNwb25zZSIAEmkKE0xpc3RBdXRoQ29ubmVjdGlvbnMSJS50YWlsb3IudjEuTGlzdEF1dGhDb25uZWN0aW9uc1JlcXVlc3QaJi50YWlsb3IudjEuTGlzdEF1dGhDb25uZWN0aW9uc1Jlc3BvbnNlIgOQAgESaQoUUmV2b2tlQXV0aENvbm5lY3Rpb24SJi50YWlsb3IudjEuUmV2b2tlQXV0aENvbm5lY3Rpb25SZXF1ZXN0GicudGFpbG9yLnYxLlJldm9rZUF1dGhDb25uZWN0aW9uUmVzcG9uc2UiABJpChREZWxldGVBdXRoQ29ubmVjdGlvbhImLnRhaWxvci52MS5EZWxldGVBdXRoQ29ubmVjdGlvblJlcXVlc3QaJy50YWlsb3IudjEuRGVsZXRlQXV0aENvbm5lY3Rpb25SZXNwb25zZSIAEoQBCh1SZWdpc3RlckF1dGhDb25uZWN0aW9uU2Vzc2lvbhIvLnRhaWxvci52MS5SZWdpc3RlckF1dGhDb25uZWN0aW9uU2Vzc2lvblJlcXVlc3QaMC50YWlsb3IudjEuUmVnaXN0ZXJBdXRoQ29ubmVjdGlvblNlc3Npb25SZXNwb25zZSIAEqIBCidFeGNoYW5nZUF1dGhDb25uZWN0aW9uQXV0aG9yaXphdGlvbkNvZGUSOS50YWlsb3IudjEuRXhjaGFuZ2VBdXRoQ29ubmVjdGlvbkF1dGhvcml6YXRpb25Db2RlUmVxdWVzdBo6LnRhaWxvci52MS5FeGNoYW5nZUF1dGhDb25uZWN0aW9uQXV0aG9yaXphdGlvbkNvZGVSZXNwb25zZSIAEm8KFkNyZWF0ZUF1dGhPQXV0aDJDbGllbnQSKC50YWlsb3IudjEuQ3JlYXRlQXV0aE9BdXRoMkNsaWVudFJlcXVlc3QaKS50YWlsb3IudjEuQ3JlYXRlQXV0aE9BdXRoMkNsaWVudFJlc3BvbnNlIgASbwoWVXBkYXRlQXV0aE9BdXRoMkNsaWVudBIoLnRhaWxvci52MS5VcGRhdGVBdXRoT0F1dGgyQ2xpZW50UmVxdWVzdBopLnRhaWxvci52MS5VcGRhdGVBdXRoT0F1dGgyQ2xpZW50UmVzcG9uc2UiABJvChZEZWxldGVBdXRoT0F1dGgyQ2xpZW50EigudGFpbG9yLnYxLkRlbGV0ZUF1dGhPQXV0aDJDbGllbnRSZXF1ZXN0GikudGFpbG9yLnYxLkRlbGV0ZUF1dGhPQXV0aDJDbGllbnRSZXNwb25zZSIAEmkKE0dldEF1dGhPQXV0aDJDbGllbnQSJS50YWlsb3IudjEuR2V0QXV0aE9BdXRoMkNsaWVudFJlcXVlc3QaJi50YWlsb3IudjEuR2V0QXV0aE9BdXRoMkNsaWVudFJlc3BvbnNlIgOQAgESbwoVTGlzdEF1dGhPQXV0aDJDbGllbnRzEicudGFpbG9yLnYxLkxpc3RBdXRoT0F1dGgyQ2xpZW50c1JlcXVlc3QaKC50YWlsb3IudjEuTGlzdEF1dGhPQXV0aDJDbGllbnRzUmVzcG9uc2UiA5ACARJpChNMaXN0RGF0YXBsYW5lRXZlbnRzEiUudGFpbG9yLnYxLkxpc3REYXRhcGxhbmVFdmVudHNSZXF1ZXN0GiYudGFpbG9yLnYxLkxpc3REYXRhcGxhbmVFdmVudHNSZXNwb25zZSIDkAIBEoQBChxMaXN0Q29udHJvbHBsYW5lQWN0aXZpdHlMb2dzEi4udGFpbG9yLnYxLkxpc3RDb250cm9scGxhbmVBY3Rpdml0eUxvZ3NSZXF1ZXN0Gi8udGFpbG9yLnYxLkxpc3RDb250cm9scGxhbmVBY3Rpdml0eUxvZ3NSZXNwb25zZSIDkAIBElcKDlRlc3RFeGVjU2NyaXB0EiAudGFpbG9yLnYxLlRlc3RFeGVjU2NyaXB0UmVxdWVzdBohLnRhaWxvci52MS5UZXN0RXhlY1NjcmlwdFJlc3BvbnNlIgASbAoUR2V0RnVuY3Rpb25FeGVjdXRpb24SJi50YWlsb3IudjEuR2V0RnVuY3Rpb25FeGVjdXRpb25SZXF1ZXN0GicudGFpbG9yLnYxLkdldEZ1bmN0aW9uRXhlY3V0aW9uUmVzcG9uc2UiA5ACARJyChZMaXN0RnVuY3Rpb25FeGVjdXRpb25zEigudGFpbG9yLnYxLkxpc3RGdW5jdGlvbkV4ZWN1dGlvbnNSZXF1ZXN0GikudGFpbG9yLnYxLkxpc3RGdW5jdGlvbkV4ZWN1dGlvbnNSZXNwb25zZSIDkAIBEnEKFkNyZWF0ZUZ1bmN0aW9uUmVnaXN0cnkSKC50YWlsb3IudjEuQ3JlYXRlRnVuY3Rpb25SZWdpc3RyeVJlcXVlc3QaKS50YWlsb3IudjEuQ3JlYXRlRnVuY3Rpb25SZWdpc3RyeVJlc3BvbnNlIgAoARJxChZVcGRhdGVGdW5jdGlvblJlZ2lzdHJ5EigudGFpbG9yLnYxLlVwZGF0ZUZ1bmN0aW9uUmVnaXN0cnlSZXF1ZXN0GikudGFpbG9yLnYxLlVwZGF0ZUZ1bmN0aW9uUmVnaXN0cnlSZXNwb25zZSIAKAESaQoTR2V0RnVuY3Rpb25SZWdpc3RyeRIlLnRhaWxvci52MS5HZXRGdW5jdGlvblJlZ2lzdHJ5UmVxdWVzdBomLnRhaWxvci52MS5HZXRGdW5jdGlvblJlZ2lzdHJ5UmVzcG9uc2UiA5ACARJyChZMaXN0RnVuY3Rpb25SZWdpc3RyaWVzEigudGFpbG9yLnYxLkxpc3RGdW5jdGlvblJlZ2lzdHJpZXNSZXF1ZXN0GikudGFpbG9yLnYxLkxpc3RGdW5jdGlvblJlZ2lzdHJpZXNSZXNwb25zZSIDkAIBEm8KFkRlbGV0ZUZ1bmN0aW9uUmVnaXN0cnkSKC50YWlsb3IudjEuRGVsZXRlRnVuY3Rpb25SZWdpc3RyeVJlcXVlc3QaKS50YWlsb3IudjEuRGVsZXRlRnVuY3Rpb25SZWdpc3RyeVJlc3BvbnNlIgASjAEKHkRvd25sb2FkRnVuY3Rpb25SZWdpc3RyeVNjcmlwdBIwLnRhaWxvci52MS5Eb3dubG9hZEZ1bmN0aW9uUmVnaXN0cnlTY3JpcHRSZXF1ZXN0GjEudGFpbG9yLnYxLkRvd25sb2FkRnVuY3Rpb25SZWdpc3RyeVNjcmlwdFJlc3BvbnNlIgOQAgEwARJyChZMaXN0TWV0ZXJSZXF1ZXN0Q291bnRzEigudGFpbG9yLnYxLkxpc3RNZXRlclJlcXVlc3RDb3VudHNSZXF1ZXN0GikudGFpbG9yLnYxLkxpc3RNZXRlclJlcXVlc3RDb3VudHNSZXNwb25zZSIDkAIBEngKGExpc3RNZXRlckV4ZWN1dGlvbkNvdW50cxIqLnRhaWxvci52MS5MaXN0TWV0ZXJFeGVjdXRpb25Db3VudHNSZXF1ZXN0GisudGFpbG9yLnYxLkxpc3RNZXRlckV4ZWN1dGlvbkNvdW50c1Jlc3BvbnNlIgOQAgESbAoUTGlzdE1ldGVyRXZlbnRDb3VudHMSJi50YWlsb3IudjEuTGlzdE1ldGVyRXZlbnRDb3VudHNSZXF1ZXN0GicudGFpbG9yLnYxLkxpc3RNZXRlckV2ZW50Q291bnRzUmVzcG9uc2UiA5ACARJyChZMaXN0TWV0ZXJBSVRva2VuVXNhZ2VzEigudGFpbG9yLnYxLkxpc3RNZXRlckFJVG9rZW5Vc2FnZXNSZXF1ZXN0GikudGFpbG9yLnYxLkxpc3RNZXRlckFJVG9rZW5Vc2FnZXNSZXNwb25zZSIDkAIBEl0KD0xpc3RJZFBTZXJ2aWNlcxIhLnRhaWxvci52MS5MaXN0SWRQU2VydmljZXNSZXF1ZXN0GiIudGFpbG9yLnYxLkxpc3RJZFBTZXJ2aWNlc1Jlc3BvbnNlIgOQAgESXQoQQ3JlYXRlSWRQU2VydmljZRIiLnRhaWxvci52MS5DcmVhdGVJZFBTZXJ2aWNlUmVxdWVzdBojLnRhaWxvci52MS5DcmVhdGVJZFBTZXJ2aWNlUmVzcG9uc2UiABJdChBVcGRhdGVJZFBTZXJ2aWNlEiIudGFpbG9yLnYxLlVwZGF0ZUlkUFNlcnZpY2VSZXF1ZXN0GiMudGFpbG9yLnYxLlVwZGF0ZUlkUFNlcnZpY2VSZXNwb25zZSIAEl0KEERlbGV0ZUlkUFNlcnZpY2USIi50YWlsb3IudjEuRGVsZXRlSWRQU2VydmljZVJlcXVlc3QaIy50YWlsb3IudjEuRGVsZXRlSWRQU2VydmljZVJlc3BvbnNlIgASVwoNR2V0SWRQU2VydmljZRIfLnRhaWxvci52MS5HZXRJZFBTZXJ2aWNlUmVxdWVzdBogLnRhaWxvci52MS5HZXRJZFBTZXJ2aWNlUmVzcG9uc2UiA5ACARJaCg5MaXN0SWRQQ2xpZW50cxIgLnRhaWxvci52MS5MaXN0SWRQQ2xpZW50c1JlcXVlc3QaIS50YWlsb3IudjEuTGlzdElkUENsaWVudHNSZXNwb25zZSIDkAIBEloKD0NyZWF0ZUlkUENsaWVudBIhLnRhaWxvci52MS5DcmVhdGVJZFBDbGllbnRSZXF1ZXN0GiIudGFpbG9yLnYxLkNyZWF0ZUlkUENsaWVudFJlc3BvbnNlIgASWgoPRGVsZXRlSWRQQ2xpZW50EiEudGFpbG9yLnYxLkRlbGV0ZUlkUENsaWVudFJlcXVlc3QaIi50YWlsb3IudjEuRGVsZXRlSWRQQ2xpZW50UmVzcG9uc2UiABJUCgxHZXRJZFBDbGllbnQSHi50YWlsb3IudjEuR2V0SWRQQ2xpZW50UmVxdWVzdBofLnRhaWxvci52MS5HZXRJZFBDbGllbnRSZXNwb25zZSIDkAIBEmYKE0NyZWF0ZVN0YXRpY1dlYnNpdGUSJS50YWlsb3IudjEuQ3JlYXRlU3RhdGljV2Vic2l0ZVJlcXVlc3QaJi50YWlsb3IudjEuQ3JlYXRlU3RhdGljV2Vic2l0ZVJlc3BvbnNlIgASZgoTVXBkYXRlU3RhdGljV2Vic2l0ZRIlLnRhaWxvci52MS5VcGRhdGVTdGF0aWNXZWJzaXRlUmVxdWVzdBomLnRhaWxvci52MS5VcGRhdGVTdGF0aWNXZWJzaXRlUmVzcG9uc2UiABJmChNEZWxldGVTdGF0aWNXZWJzaXRlEiUudGFpbG9yLnYxLkRlbGV0ZVN0YXRpY1dlYnNpdGVSZXF1ZXN0GiYudGFpbG9yLnYxLkRlbGV0ZVN0YXRpY1dlYnNpdGVSZXNwb25zZSIAEmAKEEdldFN0YXRpY1dlYnNpdGUSIi50YWlsb3IudjEuR2V0U3RhdGljV2Vic2l0ZVJlcXVlc3QaIy50YWlsb3IudjEuR2V0U3RhdGljV2Vic2l0ZVJlc3BvbnNlIgOQAgESZgoSTGlzdFN0YXRpY1dlYnNpdGVzEiQudGFpbG9yLnYxLkxpc3RTdGF0aWNXZWJzaXRlc1JlcXVlc3QaJS50YWlsb3IudjEuTGlzdFN0YXRpY1dlYnNpdGVzUmVzcG9uc2UiA5ACARJaCg9BZGRDdXN0b21Eb21haW4SIS50YWlsb3IudjEuQWRkQ3VzdG9tRG9tYWluUmVxdWVzdBoiLnRhaWxvci52MS5BZGRDdXN0b21Eb21haW5SZXNwb25zZSIAEl0KD0dldEN1c3RvbURvbWFpbhIhLnRhaWxvci52MS5HZXRDdXN0b21Eb21haW5SZXF1ZXN0GiIudGFpbG9yLnYxLkdldEN1c3RvbURvbWFpblJlc3BvbnNlIgOQAgESYwoRTGlzdEN1c3RvbURvbWFpbnMSIy50YWlsb3IudjEuTGlzdEN1c3RvbURvbWFpbnNSZXF1ZXN0GiQudGFpbG9yLnYxLkxpc3RDdXN0b21Eb21haW5zUmVzcG9uc2UiA5ACARJjChJSZW1vdmVDdXN0b21Eb21haW4SJC50YWlsb3IudjEuUmVtb3ZlQ3VzdG9tRG9tYWluUmVxdWVzdBolLnRhaWxvci52MS5SZW1vdmVDdXN0b21Eb21haW5SZXNwb25zZSIAEl0KEENyZWF0ZURlcGxveW1lbnQSIi50YWlsb3IudjEuQ3JlYXRlRGVwbG95bWVudFJlcXVlc3QaIy50YWlsb3IudjEuQ3JlYXRlRGVwbG95bWVudFJlc3BvbnNlIgASTQoKVXBsb2FkRmlsZRIcLnRhaWxvci52MS5VcGxvYWRGaWxlUmVxdWVzdBodLnRhaWxvci52MS5VcGxvYWRGaWxlUmVzcG9uc2UiACgBEmAKEVB1Ymxpc2hEZXBsb3ltZW50EiMudGFpbG9yLnYxLlB1Ymxpc2hEZXBsb3ltZW50UmVxdWVzdBokLnRhaWxvci52MS5QdWJsaXNoRGVwbG95bWVudFJlc3BvbnNlIgASVwoOQ3JlYXRlV29ya2Zsb3cSIC50YWlsb3IudjEuQ3JlYXRlV29ya2Zsb3dSZXF1ZXN0GiEudGFpbG9yLnYxLkNyZWF0ZVdvcmtmbG93UmVzcG9uc2UiABJXCg5VcGRhdGVXb3JrZmxvdxIgLnRhaWxvci52MS5VcGRhdGVXb3JrZmxvd1JlcXVlc3QaIS50YWlsb3IudjEuVXBkYXRlV29ya2Zsb3dSZXNwb25zZSIAElcKDkRlbGV0ZVdvcmtmbG93EiAudGFpbG9yLnYxLkRlbGV0ZVdvcmtmbG93UmVxdWVzdBohLnRhaWxvci52MS5EZWxldGVXb3JrZmxvd1Jlc3BvbnNlIgASUQoLR2V0V29ya2Zsb3cSHS50YWlsb3IudjEuR2V0V29ya2Zsb3dSZXF1ZXN0Gh4udGFpbG9yLnYxLkdldFdvcmtmbG93UmVzcG9uc2UiA5ACARJjChFHZXRXb3JrZmxvd0J5TmFtZRIjLnRhaWxvci52MS5HZXRXb3JrZmxvd0J5TmFtZVJlcXVlc3QaJC50YWlsb3IudjEuR2V0V29ya2Zsb3dCeU5hbWVSZXNwb25zZSIDkAIBElcKDUxpc3RXb3JrZmxvd3MSHy50YWlsb3IudjEuTGlzdFdvcmtmbG93c1JlcXVlc3QaIC50YWlsb3IudjEuTGlzdFdvcmtmbG93c1Jlc3BvbnNlIgOQAgESeAoZQ3JlYXRlV29ya2Zsb3dKb2JGdW5jdGlvbhIrLnRhaWxvci52MS5DcmVhdGVXb3JrZmxvd0pvYkZ1bmN0aW9uUmVxdWVzdBosLnRhaWxvci52MS5DcmVhdGVXb3JrZmxvd0pvYkZ1bmN0aW9uUmVzcG9uc2UiABJ4ChlVcGRhdGVXb3JrZmxvd0pvYkZ1bmN0aW9uEisudGFpbG9yLnYxLlVwZGF0ZVdvcmtmbG93Sm9iRnVuY3Rpb25SZXF1ZXN0GiwudGFpbG9yLnYxLlVwZGF0ZVdvcmtmbG93Sm9iRnVuY3Rpb25SZXNwb25zZSIAEngKGURlbGV0ZVdvcmtmbG93Sm9iRnVuY3Rpb24SKy50YWlsb3IudjEuRGVsZXRlV29ya2Zsb3dKb2JGdW5jdGlvblJlcXVlc3QaLC50YWlsb3IudjEuRGVsZXRlV29ya2Zsb3dKb2JGdW5jdGlvblJlc3BvbnNlIgAScgoWR2V0V29ya2Zsb3dKb2JGdW5jdGlvbhIoLnRhaWxvci52MS5HZXRXb3JrZmxvd0pvYkZ1bmN0aW9uUmVxdWVzdBopLnRhaWxvci52MS5HZXRXb3JrZmxvd0pvYkZ1bmN0aW9uUmVzcG9uc2UiA5ACARKEAQocR2V0V29ya2Zsb3dKb2JGdW5jdGlvbkJ5TmFtZRIuLnRhaWxvci52MS5HZXRXb3JrZmxvd0pvYkZ1bmN0aW9uQnlOYW1lUmVxdWVzdBovLnRhaWxvci52MS5HZXRXb3JrZmxvd0pvYkZ1bmN0aW9uQnlOYW1lUmVzcG9uc2UiA5ACARJ4ChhMaXN0V29ya2Zsb3dKb2JGdW5jdGlvbnMSKi50YWlsb3IudjEuTGlzdFdvcmtmbG93Sm9iRnVuY3Rpb25zUmVxdWVzdBorLnRhaWxvci52MS5MaXN0V29ya2Zsb3dKb2JGdW5jdGlvbnNSZXNwb25zZSIDkAIBEmwKFEdldFdvcmtmbG93RXhlY3V0aW9uEiYudGFpbG9yLnYxLkdldFdvcmtmbG93RXhlY3V0aW9uUmVxdWVzdBonLnRhaWxvci52MS5HZXRXb3JrZmxvd0V4ZWN1dGlvblJlc3BvbnNlIgOQAgEScgoWTGlzdFdvcmtmbG93RXhlY3V0aW9ucxIoLnRhaWxvci52MS5MaXN0V29ya2Zsb3dFeGVjdXRpb25zUmVxdWVzdBopLnRhaWxvci52MS5MaXN0V29ya2Zsb3dFeGVjdXRpb25zUmVzcG9uc2UiA5ACARJgChFUZXN0U3RhcnRXb3JrZmxvdxIjLnRhaWxvci52MS5UZXN0U3RhcnRXb3JrZmxvd1JlcXVlc3QaJC50YWlsb3IudjEuVGVzdFN0YXJ0V29ya2Zsb3dSZXNwb25zZSIAEmMKElRlc3RSZXN1bWVXb3JrZmxvdxIkLnRhaWxvci52MS5UZXN0UmVzdW1lV29ya2Zsb3dSZXF1ZXN0GiUudGFpbG9yLnYxLlRlc3RSZXN1bWVXb3JrZmxvd1Jlc3BvbnNlIgASpQEKKENyZWF0ZVdvcmtmbG93Sm9iRnVuY3Rpb25FeGVjdXRpb25Qb2xpY3kSOi50YWlsb3IudjEuQ3JlYXRlV29ya2Zsb3dKb2JGdW5jdGlvbkV4ZWN1dGlvblBvbGljeVJlcXVlc3QaOy50YWlsb3IudjEuQ3JlYXRlV29ya2Zsb3dKb2JGdW5jdGlvbkV4ZWN1dGlvblBvbGljeVJlc3BvbnNlIgASpQEKKFVwZGF0ZVdvcmtmbG93Sm9iRnVuY3Rpb25FeGVjdXRpb25Qb2xpY3kSOi50YWlsb3IudjEuVXBkYXRlV29ya2Zsb3dKb2JGdW5jdGlvbkV4ZWN1dGlvblBvbGljeVJlcXVlc3QaOy50YWlsb3IudjEuVXBkYXRlV29ya2Zsb3dKb2JGdW5jdGlvbkV4ZWN1dGlvblBvbGljeVJlc3BvbnNlIgASpQEKKERlbGV0ZVdvcmtmbG93Sm9iRnVuY3Rpb25FeGVjdXRpb25Qb2xpY3kSOi50YWlsb3IudjEuRGVsZXRlV29ya2Zsb3dKb2JGdW5jdGlvbkV4ZWN1dGlvblBvbGljeVJlcXVlc3QaOy50YWlsb3IudjEuRGVsZXRlV29ya2Zsb3dKb2JGdW5jdGlvbkV4ZWN1dGlvblBvbGljeVJlc3BvbnNlIgASnwEKJUdldFdvcmtmbG93Sm9iRnVuY3Rpb25FeGVjdXRpb25Qb2xpY3kSNy50YWlsb3IudjEuR2V0V29ya2Zsb3dKb2JGdW5jdGlvbkV4ZWN1dGlvblBvbGljeVJlcXVlc3QaOC50YWlsb3IudjEuR2V0V29ya2Zsb3dKb2JGdW5jdGlvbkV4ZWN1dGlvblBvbGljeVJlc3BvbnNlIgOQAgESrgEKKkdldFdvcmtmbG93Sm9iRnVuY3Rpb25FeGVjdXRpb25Qb2xpY3lCeUtleRI8LnRhaWxvci52MS5HZXRXb3JrZmxvd0pvYkZ1bmN0aW9uRXhlY3V0aW9uUG9saWN5QnlLZXlSZXF1ZXN0Gj0udGFpbG9yLnYxLkdldFdvcmtmbG93Sm9iRnVuY3Rpb25FeGVjdXRpb25Qb2xpY3lCeUtleVJlc3BvbnNlIgOQAgESqAEKKExpc3RXb3JrZmxvd0pvYkZ1bmN0aW9uRXhlY3V0aW9uUG9saWNpZXMSOi50YWlsb3IudjEuTGlzdFdvcmtmbG93Sm9iRnVuY3Rpb25FeGVjdXRpb25Qb2xpY2llc1JlcXVlc3QaOy50YWlsb3IudjEuTGlzdFdvcmtmbG93Sm9iRnVuY3Rpb25FeGVjdXRpb25Qb2xpY2llc1Jlc3BvbnNlIgOQAgESTgoLU2V0TWV0YWRhdGESHS50YWlsb3IudjEuU2V0TWV0YWRhdGFSZXF1ZXN0Gh4udGFpbG9yLnYxLlNldE1ldGFkYXRhUmVzcG9uc2UiABJRCgtHZXRNZXRhZGF0YRIdLnRhaWxvci52MS5HZXRNZXRhZGF0YVJlcXVlc3QaHi50YWlsb3IudjEuR2V0TWV0YWRhdGFSZXNwb25zZSIDkAIBEoQBCh1DcmVhdGVDb250cm9scGxhbmVNYWNoaW5lVXNlchIvLnRhaWxvci52MS5DcmVhdGVDb250cm9scGxhbmVNYWNoaW5lVXNlclJlcXVlc3QaMC50YWlsb3IudjEuQ3JlYXRlQ29udHJvbHBsYW5lTWFjaGluZVVzZXJSZXNwb25zZSIAEoQBCh1VcGRhdGVDb250cm9scGxhbmVNYWNoaW5lVXNlchIvLnRhaWxvci52MS5VcGRhdGVDb250cm9scGxhbmVNYWNoaW5lVXNlclJlcXVlc3QaMC50YWlsb3IudjEuVXBkYXRlQ29udHJvbHBsYW5lTWFjaGluZVVzZXJSZXNwb25zZSIAEn4KGkdldENvbnRyb2xwbGFuZU1hY2hpbmVVc2VyEiwudGFpbG9yLnYxLkdldENvbnRyb2xwbGFuZU1hY2hpbmVVc2VyUmVxdWVzdBotLnRhaWxvci52MS5HZXRDb250cm9scGxhbmVNYWNoaW5lVXNlclJlc3BvbnNlIgOQAgESkAEKIEdldENvbnRyb2xwbGFuZU1hY2hpbmVVc2VyQnlOYW1lEjIudGFpbG9yLnYxLkdldENvbnRyb2xwbGFuZU1hY2hpbmVVc2VyQnlOYW1lUmVxdWVzdBozLnRhaWxvci52MS5HZXRDb250cm9scGxhbmVNYWNoaW5lVXNlckJ5TmFtZVJlc3BvbnNlIgOQAgEShAEKHExpc3RDb250cm9scGxhbmVNYWNoaW5lVXNlcnMSLi50YWlsb3IudjEuTGlzdENvbnRyb2xwbGFuZU1hY2hpbmVVc2Vyc1JlcXVlc3QaLy50YWlsb3IudjEuTGlzdENvbnRyb2xwbGFuZU1hY2hpbmVVc2Vyc1Jlc3BvbnNlIgOQAgEShAEKHURlbGV0ZUNvbnRyb2xwbGFuZU1hY2hpbmVVc2VyEi8udGFpbG9yLnYxLkRlbGV0ZUNvbnRyb2xwbGFuZU1hY2hpbmVVc2VyUmVxdWVzdBowLnRhaWxvci52MS5EZWxldGVDb250cm9scGxhbmVNYWNoaW5lVXNlclJlc3BvbnNlIgASYwoSQ3JlYXRlT1RMUEV4cG9ydGVyEiQudGFpbG9yLnYxLkNyZWF0ZU9UTFBFeHBvcnRlclJlcXVlc3QaJS50YWlsb3IudjEuQ3JlYXRlT1RMUEV4cG9ydGVyUmVzcG9uc2UiABJjChJVcGRhdGVPVExQRXhwb3J0ZXISJC50YWlsb3IudjEuVXBkYXRlT1RMUEV4cG9ydGVyUmVxdWVzdBolLnRhaWxvci52MS5VcGRhdGVPVExQRXhwb3J0ZXJSZXNwb25zZSIAEl0KD0dldE9UTFBFeHBvcnRlchIhLnRhaWxvci52MS5HZXRPVExQRXhwb3J0ZXJSZXF1ZXN0GiIudGFpbG9yLnYxLkdldE9UTFBFeHBvcnRlclJlc3BvbnNlIgOQAgESYwoRTGlzdE9UTFBFeHBvcnRlcnMSIy50YWlsb3IudjEuTGlzdE9UTFBFeHBvcnRlcnNSZXF1ZXN0GiQudGFpbG9yLnYxLkxpc3RPVExQRXhwb3J0ZXJzUmVzcG9uc2UiA5ACARJjChJEZWxldGVPVExQRXhwb3J0ZXISJC50YWlsb3IudjEuRGVsZXRlT1RMUEV4cG9ydGVyUmVxdWVzdBolLnRhaWxvci52MS5EZWxldGVPVExQRXhwb3J0ZXJSZXNwb25zZSIAEl0KEFRlc3RPVExQRXhwb3J0ZXISIi50YWlsb3IudjEuVGVzdE9UTFBFeHBvcnRlclJlcXVlc3QaIy50YWlsb3IudjEuVGVzdE9UTFBFeHBvcnRlclJlc3BvbnNlIgAShwEKHkNyZWF0ZVJlc291cmNlQXR0cmlidXRlc0NvbmZpZxIwLnRhaWxvci52MS5DcmVhdGVSZXNvdXJjZUF0dHJpYnV0ZXNDb25maWdSZXF1ZXN0GjEudGFpbG9yLnYxLkNyZWF0ZVJlc291cmNlQXR0cmlidXRlc0NvbmZpZ1Jlc3BvbnNlIgASgQEKG0dldFJlc291cmNlQXR0cmlidXRlc0NvbmZpZxItLnRhaWxvci52MS5HZXRSZXNvdXJjZUF0dHJpYnV0ZXNDb25maWdSZXF1ZXN0Gi4udGFpbG9yLnYxLkdldFJlc291cmNlQXR0cmlidXRlc0NvbmZpZ1Jlc3BvbnNlIgOQAgEShwEKHlVwZGF0ZVJlc291cmNlQXR0cmlidXRlc0NvbmZpZxIwLnRhaWxvci52MS5VcGRhdGVSZXNvdXJjZUF0dHJpYnV0ZXNDb25maWdSZXF1ZXN0GjEudGFpbG9yLnYxLlVwZGF0ZVJlc291cmNlQXR0cmlidXRlc0NvbmZpZ1Jlc3BvbnNlIgAShwEKHkRlbGV0ZVJlc291cmNlQXR0cmlidXRlc0NvbmZpZxIwLnRhaWxvci52MS5EZWxldGVSZXNvdXJjZUF0dHJpYnV0ZXNDb25maWdSZXF1ZXN0GjEudGFpbG9yLnYxLkRlbGV0ZVJlc291cmNlQXR0cmlidXRlc0NvbmZpZ1Jlc3BvbnNlIgBiBnByb3RvMw\", [file_tailor_v1_aigateway, file_tailor_v1_application, file_tailor_v1_auth, file_tailor_v1_events, file_tailor_v1_executor, file_tailor_v1_function, file_tailor_v1_function_registry, file_tailor_v1_idp, file_tailor_v1_metadata, file_tailor_v1_meter, file_tailor_v1_pipeline, file_tailor_v1_secret_manager, file_tailor_v1_stateflow, file_tailor_v1_staticwebsite, file_tailor_v1_tailordb, file_tailor_v1_telemetryrouter, file_tailor_v1_workflow, file_tailor_v1_workspace]);\n\n/**\n * Describes the message tailor.v1.PingRequest.\n * Use `create(PingRequestSchema)` to create a new message.\n */\nexport const PingRequestSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_service, 0);\n\n/**\n * Describes the message tailor.v1.PingResponse.\n * Use `create(PingResponseSchema)` to create a new message.\n */\nexport const PingResponseSchema = /*@__PURE__*/\n messageDesc(file_tailor_v1_service, 1);\n\n/**\n * @generated from service tailor.v1.OperatorService\n */\nexport const OperatorService = /*@__PURE__*/\n serviceDesc(file_tailor_v1_service, 0);\n\n"],"mappings":";;;;;;;;AAUA,MAAa,iCACX,uBAAS,skBAAskB,CAAC,6BAA6B,8BAA8B,CAAC;;;;;;;ACC9oB,MAAa,wBACX,uBAAS,m5BAAm5B;CAAC;CAA4B;CAAgC;AAAuB,CAAC;;;;;;;ACAn/B,MAAa,0BACX,uBAAS,4iCAA4iC;CAAC;CAA4B;CAA8B;CAAkC;AAAuB,CAAC;;;;;;;ACF5qC,MAAa,mCACX,uBAAS,mxFAAmxF;CAAC;CAA4B;CAAgC;AAAuB,CAAC;;;;;;;ACJn3F,MAAa,mCACX,uBAAS,0NAA0N;;;;;;;ACCrO,MAAa,0BACX,uBAAS,43BAA43B,CAAC,4BAA4B,gCAAgC,CAAC;;;;;;;ACDr8B,MAAa,uBACX,uBAAS,+hGAA+hG;CAAC;CAA4B;CAA+B;AAA8B,CAAC;;;;;;;ACFroG,MAAa,oCACX,uBAAS,wRAAwR,CAAC,uBAAuB,CAAC;;;;;;;ACC5T,MAAa,2BACX,uBAAS,0nDAA0nD;CAAC;CAA4B;CAAyB;AAAiC,CAAC;;;;;;;ACA7tD,MAAa,0CACX,uBAAS,45DAA45D;CAAC;CAA4B;CAAgC;CAAgC;AAAsC,CAAC;;;;;;;ACF3iE,MAAa,iCACX,uBAAS,usFAAusF;CAAC;CAA4B;CAAyB;AAAuC,CAAC;;;;;;;ACChzF,MAAa,2BACX,uBAAS,koeAAkoe;CAAC;CAA4B;CAAiC;CAAgC;CAAiC;CAAyB;AAAiC,CAAC;;;;;;;ACYv0e,MAAa,yBACX,uBAAS,85oCAA85oC;CAAC;CAA0B;CAA4B;CAAqB;CAAuB;CAAyB;CAAyB;CAAkC;CAAoB;CAAyB;CAAsB;CAAyB;CAA+B;CAA0B;CAA8B;CAAyB;CAAgC;CAAyB;AAAwB,CAAC;;;;;AAM93pC,MAAa,oBACX,0BAAY,wBAAwB,CAAC;;;;;AAMvC,MAAa,qBACX,0BAAY,wBAAwB,CAAC;;;;AAKvC,MAAa,kBACX,0BAAY,wBAAwB,CAAC"}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { TailorPrincipal } from "../../runtime/types.mjs";
|
|
2
|
-
//#region src/utils/test/mock.d.ts
|
|
3
|
-
type MainFunction = (args: Record<string, unknown>) => unknown | Promise<unknown>;
|
|
4
|
-
type QueryResolver = (query: string, params: unknown[]) => unknown[];
|
|
5
|
-
type JobHandler = (jobName: string, args: unknown) => unknown;
|
|
6
|
-
type WaitHandler = (key: string, payload: unknown) => unknown;
|
|
7
|
-
type ResolveHandler = (executionId: string, key: string, callback: (payload: unknown) => unknown) => Promise<void> | void;
|
|
8
|
-
/**
|
|
9
|
-
* Sets up a mock for `globalThis.tailordb.Client` used in bundled resolver/executor tests.
|
|
10
|
-
* @deprecated Use `mockTailordb` from `@tailor-platform/sdk/vitest` with the `tailor-runtime` environment instead.
|
|
11
|
-
* @param resolver - Optional function to resolve query results. Defaults to returning empty arrays.
|
|
12
|
-
* @returns Object containing arrays of executed queries and created clients for assertions.
|
|
13
|
-
*/
|
|
14
|
-
declare function setupTailordbMock(resolver?: QueryResolver): {
|
|
15
|
-
executedQueries: {
|
|
16
|
-
query: string;
|
|
17
|
-
params: unknown[];
|
|
18
|
-
}[];
|
|
19
|
-
createdClients: {
|
|
20
|
-
namespace?: string;
|
|
21
|
-
ended: boolean;
|
|
22
|
-
}[];
|
|
23
|
-
};
|
|
24
|
-
/**
|
|
25
|
-
* Sets up a mock for `globalThis.tailor.workflow.startJobFunction` used in bundled workflow tests.
|
|
26
|
-
* `wait`/`resolve` are stubbed to throw a helpful error directing to `mockWorkflow`,
|
|
27
|
-
* so mistakenly calling wait without wait-point mocks produces a clear message instead of a TypeError.
|
|
28
|
-
* @deprecated Use `mockWorkflow` from `@tailor-platform/sdk/vitest` with the `tailor-runtime` environment instead.
|
|
29
|
-
* @param handler - Function that handles started job calls and returns results.
|
|
30
|
-
* @returns Object containing an array of started jobs for assertions.
|
|
31
|
-
*/
|
|
32
|
-
declare function setupWorkflowMock(handler: JobHandler): {
|
|
33
|
-
startedJobs: {
|
|
34
|
-
jobName: string;
|
|
35
|
-
args: unknown;
|
|
36
|
-
}[];
|
|
37
|
-
};
|
|
38
|
-
/**
|
|
39
|
-
* Sets up a mock for `globalThis.tailor.context.getInvoker` used in bundled
|
|
40
|
-
* resolver/executor/workflow tests.
|
|
41
|
-
* @deprecated With the `tailor-runtime` environment from `@tailor-platform/sdk/vitest`, drive the invoker via `vi.spyOn(globalThis.tailor.context, "getInvoker").mockReturnValue(...)` for bundled tests, or pass `invoker` directly to `.body()` when unit-testing resolvers/executors/workflow jobs against the TypeScript source.
|
|
42
|
-
* @param invoker - The `TailorPrincipal` value to return, or `null` for anonymous.
|
|
43
|
-
*/
|
|
44
|
-
declare function setupInvokerMock(invoker: TailorPrincipal | null): void;
|
|
45
|
-
/**
|
|
46
|
-
* Sets up a mock for `globalThis.TailorErrors` used in bundled resolver tests.
|
|
47
|
-
* Mimics the PF runtime's TailorErrors class that serializes errors with the `TailorErrors: ` prefix.
|
|
48
|
-
* @deprecated Use the `tailor-runtime` environment from `@tailor-platform/sdk/vitest` which auto-injects TailorErrors.
|
|
49
|
-
*/
|
|
50
|
-
declare function setupTailorErrorsMock(): void;
|
|
51
|
-
/**
|
|
52
|
-
* Sets up mocks for `globalThis.tailor.workflow.wait` and `.resolve` used in bundled workflow tests.
|
|
53
|
-
* `startJobFunction` is stubbed to throw a helpful error directing to `setupWorkflowMock()`,
|
|
54
|
-
* so mistakenly starting a job without job mocks produces a clear message instead of silently returning undefined.
|
|
55
|
-
* @deprecated Use `mockWorkflow` from `@tailor-platform/sdk/vitest` with the `tailor-runtime` environment instead.
|
|
56
|
-
* `setWaitHandler` / `setResolveHandler` cover wait/resolve, and `waitCalls` / `resolveCalls` give the same assertion shape.
|
|
57
|
-
* @param config - Optional handlers for wait and resolve calls.
|
|
58
|
-
* @param config.onWait - Handler called when wait is invoked.
|
|
59
|
-
* @param config.onResolve - Handler called when resolve is invoked.
|
|
60
|
-
* @returns Object containing arrays of wait and resolve calls for assertions.
|
|
61
|
-
*/
|
|
62
|
-
declare function setupWaitPointMock(config?: {
|
|
63
|
-
onWait?: WaitHandler;
|
|
64
|
-
onResolve?: ResolveHandler;
|
|
65
|
-
}): {
|
|
66
|
-
waitCalls: {
|
|
67
|
-
key: string;
|
|
68
|
-
payload: unknown;
|
|
69
|
-
}[];
|
|
70
|
-
resolveCalls: {
|
|
71
|
-
executionId: string;
|
|
72
|
-
key: string;
|
|
73
|
-
}[];
|
|
74
|
-
};
|
|
75
|
-
/**
|
|
76
|
-
* Creates a function that imports a bundled JS file and returns its `main` export.
|
|
77
|
-
* Used to test bundled output from `apply --buildOnly`.
|
|
78
|
-
* @param baseDir - Base directory where bundled files are located.
|
|
79
|
-
* @returns An async function that takes a relative path and returns the `main` function.
|
|
80
|
-
* @deprecated This is an SDK-internal testing helper. Bundling integrity is the SDK's responsibility,
|
|
81
|
-
* not the application's — verify your code through unit tests against the TypeScript source and
|
|
82
|
-
* E2E tests against a deployed application instead. This export will be removed in a future release.
|
|
83
|
-
*/
|
|
84
|
-
declare function createImportMain(baseDir: string): (relativePath: string) => Promise<MainFunction>;
|
|
85
|
-
//#endregion
|
|
86
|
-
export { createImportMain, setupInvokerMock, setupTailorErrorsMock, setupTailordbMock, setupWaitPointMock, setupWorkflowMock };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-CsBvRE3g.mjs","names":[],"sources":["../src/runtime/workflow.ts"],"sourcesContent":["/**\n * Workflow utilities.\n *\n * Thin typed wrapper around the platform-provided `tailor.workflow` runtime API.\n * At runtime this delegates to `globalThis.tailor.workflow`. Use `mockWorkflow`\n * from `@tailor-platform/sdk/vitest` to mock these calls in unit tests.\n * @example\n * import { workflow } from \"@tailor-platform/sdk/runtime\";\n *\n * const executionId = await workflow.startWorkflow(\"myWorkflow\", { data: \"value\" });\n */\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\n/**\n * Specifies the machine user that should be used to execute the workflow.\n * This allows workflows to run with specific authentication context.\n */\nexport interface Invoker {\n /** The namespace where the machine user is defined */\n namespace: string;\n /** The name of the machine user to use for workflow execution */\n machineUserName: string;\n}\n\n/** Options for {@link startWorkflow}. */\nexport interface StartWorkflowOptions {\n /** Optional authentication invoker to specify which machine user should execute the workflow */\n authInvoker?: Invoker;\n}\n\ndeclare const executionPolicyKeyBrand: unique symbol;\n\n/**\n * A concrete runtime key produced by an execution policy instance — either an\n * exact-match policy's `.key`, or a wildcard policy's `.keyFor(suffix)` (see\n * `defineWorkflowExecutionPolicies`). Branded so an arbitrary string that\n * wasn't derived from a declared policy can't be passed as `executionPolicyKey`.\n */\nexport type ExecutionPolicyKey = string & { readonly [executionPolicyKeyBrand]: never };\n\n/** Options for {@link startJobFunction}. */\nexport interface StartJobFunctionOptions {\n /**\n * Execution policy key matched by the platform against the policies\n * declared with `defineWorkflowExecutionPolicies` in `tailor.config.ts`.\n */\n executionPolicyKey?: ExecutionPolicyKey;\n}\n\n/**\n * Platform API surface for `tailor.workflow`. Describes the shape the platform\n * runtime injects on `globalThis.tailor.workflow`.\n */\nexport interface PlatformWorkflowAPI {\n /**\n * Starts a workflow and returns its execution ID.\n * @param workflowName - Workflow name as defined in tailor.config\n * @param args - Arguments forwarded to the workflow's main job\n * @param options - Optional start options (e.g. `authInvoker`)\n * @returns The execution ID of the started workflow\n */\n startWorkflow(workflowName: string, args?: any, options?: StartWorkflowOptions): Promise<string>;\n\n /**\n * Resumes a failed or pending-retry workflow execution and returns its execution ID.\n * @param executionId - The execution to resume\n * @returns The execution ID of the resumed workflow\n */\n resumeWorkflowExecution(executionId: string): Promise<string>;\n\n /**\n * Starts a job function and returns its result.\n * @param jobName - Job name as defined in the workflow\n * @param args - Arguments forwarded to the job\n * @param options - Optional start options (e.g. `executionPolicyKey`)\n * @returns The job's return value\n */\n startJobFunction(jobName: string, args?: any, options?: StartJobFunctionOptions): any;\n\n /**\n * Suspends the current workflow execution and waits for an external signal to resume.\n * @param key - Wait point key\n * @param payload - Optional payload to record with the wait point\n * @returns The payload supplied by the corresponding `resolve` call\n */\n wait(key: string, payload?: any): any;\n\n /**\n * Resolves a waiting workflow execution, causing it to resume.\n * @param executionId - The execution to resume\n * @param key - Wait point key to resolve\n * @param callback - Callback receiving the wait payload; its return value is forwarded to `wait`\n * @returns A promise that resolves once the resolve has been recorded\n */\n resolve(executionId: string, key: string, callback: (waitPayload: any) => any): Promise<void>;\n}\n\nconst api = (): PlatformWorkflowAPI =>\n (globalThis as unknown as { tailor: { workflow: PlatformWorkflowAPI } }).tailor.workflow;\n\n/**\n * See {@link PlatformWorkflowAPI.startWorkflow}.\n * @param args - Forwarded to {@link PlatformWorkflowAPI.startWorkflow}\n * @returns The execution ID of the started workflow\n */\nconst startWorkflow: PlatformWorkflowAPI[\"startWorkflow\"] = (...args) =>\n api().startWorkflow(...args);\n\n/**\n * See {@link PlatformWorkflowAPI.resumeWorkflowExecution}.\n * @param args - Forwarded to {@link PlatformWorkflowAPI.resumeWorkflowExecution}\n * @returns The execution ID of the resumed workflow\n */\nconst resumeWorkflowExecution: PlatformWorkflowAPI[\"resumeWorkflowExecution\"] = (...args) =>\n api().resumeWorkflowExecution(...args);\n\n/**\n * See {@link PlatformWorkflowAPI.startJobFunction}.\n * @param args - Forwarded to {@link PlatformWorkflowAPI.startJobFunction}\n * @returns The job's return value\n */\nconst startJobFunction: PlatformWorkflowAPI[\"startJobFunction\"] = (...args) =>\n api().startJobFunction(...args);\n\nconst wait: PlatformWorkflowAPI[\"wait\"] = (...args) => api().wait(...args);\n\nconst resolve: PlatformWorkflowAPI[\"resolve\"] = (...args) => api().resolve(...args);\n\n/** Runtime wrapper namespace for `tailor.workflow`. */\nexport const workflow = {\n startWorkflow,\n resumeWorkflowExecution,\n startJobFunction,\n wait,\n resolve,\n} as const satisfies PlatformWorkflowAPI;\n"],"mappings":";AAkGA,MAAM,YACH,WAAwE,OAAO;;;;;;AAOlF,MAAM,iBAAuD,GAAG,SAC9D,IAAI,CAAC,CAAC,cAAc,GAAG,IAAI;;;;;;AAO7B,MAAM,2BAA2E,GAAG,SAClF,IAAI,CAAC,CAAC,wBAAwB,GAAG,IAAI;;;;;;AAOvC,MAAM,oBAA6D,GAAG,SACpE,IAAI,CAAC,CAAC,iBAAiB,GAAG,IAAI;AAEhC,MAAM,QAAqC,GAAG,SAAS,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI;AAEzE,MAAM,WAA2C,GAAG,SAAS,IAAI,CAAC,CAAC,QAAQ,GAAG,IAAI;;AAGlF,MAAa,WAAW;CACtB;CACA;CACA;CACA;CACA;AACF"}
|