@avallon-labs/sdk 50.3.0 → 50.4.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/dist/index.d.ts +39 -39
- package/dist/index.js +15 -4
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/fetcher.ts","../src/auth.ts","../generated/endpoints/analytics/analytics.ts","../generated/endpoints/api-keys/api-keys.ts","../generated/endpoints/artifacts/artifacts.ts","../generated/endpoints/auth/auth.ts","../generated/endpoints/call-feedback/call-feedback.ts","../generated/endpoints/calls/calls.ts","../generated/endpoints/cases/cases.ts","../generated/endpoints/chat-agents/chat-agents.ts","../generated/endpoints/chats/chats.ts","../generated/endpoints/dispatches/dispatches.ts","../generated/endpoints/emails/emails.ts","../generated/endpoints/evals/evals.ts","../generated/endpoints/extraction-jobs/extraction-jobs.ts","../generated/endpoints/extractors/extractors.ts","../generated/endpoints/extracts/extracts.ts","../generated/endpoints/inboxes/inboxes.ts","../generated/endpoints/information-requests/information-requests.ts","../generated/endpoints/jobs/jobs.ts","../generated/endpoints/notifications/notifications.ts","../generated/endpoints/profiles/profiles.ts","../generated/endpoints/schedules/schedules.ts","../generated/endpoints/secrets/secrets.ts","../generated/endpoints/team/team.ts","../generated/endpoints/tools/tools.ts","../generated/endpoints/voice-agents/voice-agents.ts","../generated/endpoints/webhooks/webhooks.ts","../generated/endpoints/worker-runs/worker-runs.ts","../generated/endpoints/worker/worker.ts","../generated/endpoints/workers/workers.ts","../generated/models/addCaseLinksBodyEntitiesItemEntityType.ts","../generated/models/addCaseLinksEnvironment.ts","../generated/models/analyticsTimeSeriesGranularity.ts","../generated/models/analyticsTimeSeriesGroupBy.ts","../generated/models/analyticsTimeSeriesMetric.ts","../generated/models/apiKeyCreatedRole.ts","../generated/models/apiKeyRole.ts","../generated/models/artifactDetailDataStatus.ts","../generated/models/artifactStatus.ts","../generated/models/callDetailDirection.ts","../generated/models/callDetailEnvironment.ts","../generated/models/callDirection.ts","../generated/models/callEnvironment.ts","../generated/models/caseLinkEntityType.ts","../generated/models/caseSummaryEnvironment.ts","../generated/models/chatHistoryMessagesItemRole.ts","../generated/models/chatMessageRole.ts","../generated/models/createAgentWebhookBodyEnvironmentsItem.ts","../generated/models/createApiKeyBodyEnvironment.ts","../generated/models/createApiKeyBodyRole.ts","../generated/models/createCaseBodyEnvironment.ts","../generated/models/createExtractorWebhookBodyEnvironmentsItem.ts","../generated/models/createInboxBodyProcessorType.ts","../generated/models/createInboxWebhookBodyEnvironmentsItem.ts","../generated/models/createNotificationWebhookBodyEnvironmentsItem.ts","../generated/models/createScheduleBodyEnvironmentsItem.ts","../generated/models/createVoiceAgentBodyCallProcessorType.ts","../generated/models/createVoiceAgentBodyDirection.ts","../generated/models/createVoiceAgentBodyLanguage.ts","../generated/models/createVoiceAgentBodyLlmModel.ts","../generated/models/createVoiceAgentBodySttModel.ts","../generated/models/createVoiceAgentBodyTtsModel.ts","../generated/models/createVoiceAgentBodyTtsProvider.ts","../generated/models/createWorkerBodyMcpType.ts","../generated/models/createWorkerEvalFromRunEnvelopeDataSourceType.ts","../generated/models/createWorkerEvalFromRunEnvelopeDataTargetType.ts","../generated/models/createWorkerRunBodyEnvironment.ts","../generated/models/createWorkerWebhookBodyEnvironmentsItem.ts","../generated/models/deleteCaseEnvironment.ts","../generated/models/dispatchEnvironment.ts","../generated/models/dispatchStatus.ts","../generated/models/dispatchTargetType.ts","../generated/models/dispatchTriggerType.ts","../generated/models/emailDetailDirection.ts","../generated/models/emailDetailEnvironment.ts","../generated/models/emailDetailIgnoredReason.ts","../generated/models/emailDirection.ts","../generated/models/emailEnvironment.ts","../generated/models/emailIgnoredReason.ts","../generated/models/emailReplyResult.ts","../generated/models/emailThreadEnvironment.ts","../generated/models/executeCodeBodyEnvironment.ts","../generated/models/getAnalyticsTimeSeriesGranularity.ts","../generated/models/getAnalyticsTimeSeriesGroupBy.ts","../generated/models/getAnalyticsTimeSeriesMetric.ts","../generated/models/getCaseEnvironment.ts","../generated/models/getEvalRunEnvelopeDataStatus.ts","../generated/models/getOAuthUrlCodeChallengeMethod.ts","../generated/models/getOAuthUrlProvider.ts","../generated/models/inboxProcessorType.ts","../generated/models/informationRequestEnvironment.ts","../generated/models/listAgentWebhooksEnvironment.ts","../generated/models/listApiKeysIncludeRevoked.ts","../generated/models/listArtifactsEnvironment.ts","../generated/models/listArtifactsSortBy.ts","../generated/models/listArtifactsSortOrder.ts","../generated/models/listArtifactsStatus.ts","../generated/models/listCallFeedbackSortBy.ts","../generated/models/listCallFeedbackSortOrder.ts","../generated/models/listCallsDirection.ts","../generated/models/listCallsEnvironment.ts","../generated/models/listCallsSortBy.ts","../generated/models/listCallsSortOrder.ts","../generated/models/listCallsStatus.ts","../generated/models/listCaseLinksEntityType.ts","../generated/models/listCaseLinksEnvironment.ts","../generated/models/listCaseLinksSortBy.ts","../generated/models/listCaseLinksSortOrder.ts","../generated/models/listCasesEnvironment.ts","../generated/models/listCasesSortBy.ts","../generated/models/listCasesSortOrder.ts","../generated/models/listChatAgentsSortBy.ts","../generated/models/listChatAgentsSortOrder.ts","../generated/models/listChatMessagesSortBy.ts","../generated/models/listChatMessagesSortOrder.ts","../generated/models/listChatsEnvironment.ts","../generated/models/listChatsSortBy.ts","../generated/models/listChatsSortOrder.ts","../generated/models/listDispatchesSortBy.ts","../generated/models/listDispatchesSortOrder.ts","../generated/models/listDispatchesTriggerType.ts","../generated/models/listEmailsEnvironment.ts","../generated/models/listEmailsSortBy.ts","../generated/models/listEmailsSortOrder.ts","../generated/models/listEmailThreadsEnvironment.ts","../generated/models/listEmailThreadsSortBy.ts","../generated/models/listEmailThreadsSortOrder.ts","../generated/models/listExtractorJobsSortBy.ts","../generated/models/listExtractorJobsSortOrder.ts","../generated/models/listExtractorJobsStatus.ts","../generated/models/listExtractorsSortBy.ts","../generated/models/listExtractorsSortOrder.ts","../generated/models/listExtractsEnvironment.ts","../generated/models/listExtractsSortBy.ts","../generated/models/listExtractsSortOrder.ts","../generated/models/listInboxesSortBy.ts","../generated/models/listInboxesSortOrder.ts","../generated/models/listInboxWebhooksEnvironment.ts","../generated/models/listInformationRequestsEnvironment.ts","../generated/models/listInformationRequestsResolved.ts","../generated/models/listInformationRequestsSortBy.ts","../generated/models/listInformationRequestsSortOrder.ts","../generated/models/listJobsStatusItem.ts","../generated/models/listNotificationsSortBy.ts","../generated/models/listNotificationsSortOrder.ts","../generated/models/listNotificationWebhooksEnvironment.ts","../generated/models/listSchedulesEnvironment.ts","../generated/models/listSchedulesRuleType.ts","../generated/models/listSchedulesSortBy.ts","../generated/models/listSchedulesSortOrder.ts","../generated/models/listSecretsSortBy.ts","../generated/models/listSecretsSortOrder.ts","../generated/models/listToolsSortBy.ts","../generated/models/listToolsSortOrder.ts","../generated/models/listToolVersionsSortBy.ts","../generated/models/listToolVersionsSortOrder.ts","../generated/models/listVoiceAgentVersionsSortBy.ts","../generated/models/listVoiceAgentVersionsSortOrder.ts","../generated/models/listWebhookDeliveriesSortOrder.ts","../generated/models/listWebhooksEnvironment.ts","../generated/models/listWorkerRunsEnvironment.ts","../generated/models/listWorkerRunsSortBy.ts","../generated/models/listWorkerRunsSortOrder.ts","../generated/models/listWorkerRunsStatus.ts","../generated/models/listWorkersSortBy.ts","../generated/models/listWorkersSortOrder.ts","../generated/models/listWorkerVersionsSortBy.ts","../generated/models/listWorkerVersionsSortOrder.ts","../generated/models/listWorkerWebhooksEnvironment.ts","../generated/models/outboundJobEnvironment.ts","../generated/models/outboundJobStatus.ts","../generated/models/profilePermissionsItem.ts","../generated/models/profileRole.ts","../generated/models/promotedVoiceAgentVersionEnvironment.ts","../generated/models/promoteVoiceAgentVersionBodyEnvironment.ts","../generated/models/removeCaseLinkEnvironment.ts","../generated/models/runEvalEnvelopeDataStatus.ts","../generated/models/scheduleEnvironmentsItem.ts","../generated/models/scheduleJobBodyEnvironment.ts","../generated/models/sendEmailBodyEnvironment.ts","../generated/models/teamInvitationState.ts","../generated/models/teamMemberRole.ts","../generated/models/testWebhookBodyEnvironment.ts","../generated/models/toolEnvironment.ts","../generated/models/updateApiKeyBodyRole.ts","../generated/models/updateInboxBodyProcessorType.ts","../generated/models/updateMemberRoleBodyRole.ts","../generated/models/updateScheduleBodyEnvironmentsItem.ts","../generated/models/updateVoiceAgentBodyCallProcessorType.ts","../generated/models/updateVoiceAgentBodyNoiseCancellation.ts","../generated/models/updateVoiceAgentModelsBodyFallbackLlmModel.ts","../generated/models/updateVoiceAgentModelsBodyFallbackSttModel.ts","../generated/models/updateVoiceAgentModelsBodyFallbackTtsModel.ts","../generated/models/updateVoiceAgentModelsBodyFallbackTtsProvider.ts","../generated/models/updateVoiceAgentModelsBodyLanguage.ts","../generated/models/updateVoiceAgentModelsBodyLlmModel.ts","../generated/models/updateVoiceAgentModelsBodySttModel.ts","../generated/models/updateVoiceAgentModelsBodyTtsModel.ts","../generated/models/updateVoiceAgentModelsBodyTtsProvider.ts","../generated/models/updateWebhookBodyEnvironmentsItem.ts","../generated/models/voiceAgentBackgroundSounds.ts","../generated/models/voiceAgentCallProcessorType.ts","../generated/models/voiceAgentDirection.ts","../generated/models/voiceAgentFallbackLlmModel.ts","../generated/models/voiceAgentFallbackSttModel.ts","../generated/models/voiceAgentFallbackTtsModel.ts","../generated/models/voiceAgentFallbackTtsProvider.ts","../generated/models/voiceAgentLanguage.ts","../generated/models/voiceAgentLlmModel.ts","../generated/models/voiceAgentNoiseCancellation.ts","../generated/models/voiceAgentSttModel.ts","../generated/models/voiceAgentTtsModel.ts","../generated/models/voiceAgentTtsProvider.ts","../generated/models/voiceAgentVersionActiveEnvironmentsItem.ts","../generated/models/voiceAgentVersionDetailActiveEnvironmentsItem.ts","../generated/models/voiceAgentVersionDetailBackgroundSounds.ts","../generated/models/voiceAgentVersionDetailCallProcessorType.ts","../generated/models/voiceAgentVersionDetailDirection.ts","../generated/models/voiceAgentVersionDetailFallbackLlmModel.ts","../generated/models/voiceAgentVersionDetailFallbackSttModel.ts","../generated/models/voiceAgentVersionDetailFallbackTtsModel.ts","../generated/models/voiceAgentVersionDetailFallbackTtsProvider.ts","../generated/models/voiceAgentVersionDetailLanguage.ts","../generated/models/voiceAgentVersionDetailLlmModel.ts","../generated/models/voiceAgentVersionDetailNoiseCancellation.ts","../generated/models/voiceAgentVersionDetailSttModel.ts","../generated/models/voiceAgentVersionDetailTtsModel.ts","../generated/models/voiceAgentVersionDetailTtsProvider.ts","../generated/models/voiceAgentWithTestPhoneNumberBackgroundSounds.ts","../generated/models/voiceAgentWithTestPhoneNumberCallProcessorType.ts","../generated/models/voiceAgentWithTestPhoneNumberDirection.ts","../generated/models/voiceAgentWithTestPhoneNumberFallbackLlmModel.ts","../generated/models/voiceAgentWithTestPhoneNumberFallbackSttModel.ts","../generated/models/voiceAgentWithTestPhoneNumberFallbackTtsModel.ts","../generated/models/voiceAgentWithTestPhoneNumberFallbackTtsProvider.ts","../generated/models/voiceAgentWithTestPhoneNumberLanguage.ts","../generated/models/voiceAgentWithTestPhoneNumberLlmModel.ts","../generated/models/voiceAgentWithTestPhoneNumberNoiseCancellation.ts","../generated/models/voiceAgentWithTestPhoneNumberSttModel.ts","../generated/models/voiceAgentWithTestPhoneNumberTtsModel.ts","../generated/models/voiceAgentWithTestPhoneNumberTtsProvider.ts","../generated/models/webhookEnvironmentsItem.ts","../generated/models/workerEnvironment.ts","../generated/models/workerExecuteToolBodyEnvironment.ts","../generated/models/workerListToolsSortBy.ts","../generated/models/workerListToolsSortOrder.ts","../generated/models/workerMcpName.ts","../generated/models/workerMcpOutputName.ts","../generated/models/workerPermission.ts","../generated/models/workerRunCreatedEnvironment.ts","../generated/models/workerRunCreatedStatus.ts","../generated/models/workerRunEnvironment.ts","../generated/models/workerRunStatus.ts"],"names":["useSwr","useSWRMutation"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * Custom fetch wrapper for Orval-generated client.\n * Handles auth (API key or Bearer token) and base URL configuration.\n * Throws AvallonError on non-2xx responses for clean SWR error handling.\n *\n * The API's `{ data, message, meta }` envelope is returned verbatim — the\n * generated types describe the envelope, so callers read `result.data`, and\n * paginated endpoints expose the total via `result.meta.total`.\n */\n\n// --------------------------------------------------------------------------\n// Configuration\n// --------------------------------------------------------------------------\n\nlet config: AvallonConfig = {\n baseUrl: \"https://api.avallon.ai\",\n};\n\nexport type AvallonConfig = {\n baseUrl?: string;\n apiKey?: string;\n /**\n * Token provider - can be sync or async.\n * Async allows the application to check expiry and refresh before returning.\n */\n getAccessToken?: () => string | null | Promise<string | null>;\n};\n\n/** Configure the SDK at runtime */\nexport function configure(newConfig: Partial<AvallonConfig>) {\n config = { ...config, ...newConfig };\n}\n\n/** Get current config */\nexport function getConfig(): AvallonConfig {\n return { ...config };\n}\n\n// --------------------------------------------------------------------------\n// Fetch wrapper\n// --------------------------------------------------------------------------\n\n/** Shared fetch logic */\nasync function doFetch<T>(\n url: string,\n options: RequestInit,\n withAuth: boolean\n): Promise<T> {\n const fullUrl = url.startsWith(\"http\") ? url : `${config.baseUrl}${url}`;\n\n const headers = new Headers(options.headers);\n\n // Only set Content-Type for requests with JSON body\n // (allows file uploads to set their own Content-Type)\n if (options.body && typeof options.body === \"string\") {\n headers.set(\"Content-Type\", \"application/json\");\n }\n\n if (withAuth) {\n const accessToken = await config.getAccessToken?.();\n if (accessToken) {\n headers.set(\"Authorization\", `Bearer ${accessToken}`);\n } else if (config.apiKey) {\n headers.set(\"x-api-key\", config.apiKey);\n }\n }\n\n const response = await fetch(fullUrl, {\n ...options,\n headers,\n });\n\n // Parse response based on content type\n const contentType = response.headers.get(\"Content-Type\") ?? \"\";\n let body: unknown;\n\n if (response.status === 204) {\n // No content\n body = {};\n } else if (contentType.includes(\"application/json\")) {\n body = await response.json().catch(() => ({}));\n } else {\n // Non-JSON response (shouldn't happen with our API, but handle gracefully)\n const text = await response.text().catch(() => \"\");\n body = { message: text };\n }\n\n // Throw on non-2xx - SWR will catch this as `error`\n if (!response.ok) {\n throw new AvallonError(response.status, body as AvallonError[\"body\"]);\n }\n\n return body as T;\n}\n\n/** Authenticated fetch - adds API key or Bearer token */\nexport async function customFetch<T>(\n url: string,\n options: RequestInit\n): Promise<T> {\n return doFetch(url, options, true);\n}\n\n/** Unauthenticated fetch - for auth flow endpoints (sign-in, sign-up, etc.) */\nexport async function customFetchNoAuth<T>(\n url: string,\n options: RequestInit\n): Promise<T> {\n return doFetch(url, options, false);\n}\n\n// --------------------------------------------------------------------------\n// Errors\n// --------------------------------------------------------------------------\n\n/** Orval uses this to type the `error` field in SWR hooks as AvallonError */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport type ErrorType<E> = AvallonError;\n\n/** Typed error class for API errors. Thrown by customFetch on non-2xx responses. */\nexport class AvallonError extends Error {\n constructor(\n public readonly status: number,\n public readonly body: {\n data?: unknown;\n message?: string;\n }\n ) {\n super(body?.message ?? `API error ${status}`);\n this.name = \"AvallonError\";\n }\n\n /** Validation errors (400) have field-level details */\n get errors(): Array<{ field: string; message: string }> | undefined {\n const data = this.body?.data as {\n errors?: Array<{ field: string; message: string }>;\n };\n return data?.errors;\n }\n\n isValidationError(): boolean {\n return this.status === 400;\n }\n\n isUnauthorized(): boolean {\n return this.status === 401;\n }\n\n isNotFound(): boolean {\n return this.status === 404;\n }\n}\n","/**\n * PKCE Utilities\n *\n * Cryptographic helpers for OAuth PKCE flow. Platform-agnostic -\n * works in both Node.js and browsers via Web Crypto API.\n *\n * These utilities can't be generated from OpenAPI - they're\n * client-side crypto that complements the generated auth endpoints.\n *\n * @example\n * ```ts\n * import {\n * generateCodeVerifier,\n * generateCodeChallenge,\n * getV1AuthOauthUrl,\n * postV1AuthOauthExchange,\n * } from \"@avallon-labs/sdk\";\n *\n * // 1. Generate PKCE pair\n * const verifier = generateCodeVerifier();\n * const challenge = await generateCodeChallenge(verifier);\n *\n * // 2. Get OAuth URL (store verifier for after redirect)\n * sessionStorage.setItem(\"oauth_verifier\", verifier);\n * const { data } = await getV1AuthOauthUrl({\n * provider: \"google\",\n * redirect_uri: \"https://app.example.com/callback\",\n * code_challenge: challenge,\n * code_challenge_method: \"s256\",\n * });\n * window.location.href = data.data.url;\n *\n * // 3. After redirect, exchange code for tokens\n * const verifier = sessionStorage.getItem(\"oauth_verifier\");\n * const tokens = await postV1AuthOauthExchange({\n * code: urlParams.get(\"code\"),\n * code_verifier: verifier,\n * });\n * ```\n */\n\n// --------------------------------------------------------------------------\n// PKCE Utilities\n// --------------------------------------------------------------------------\n\n/** Generate a cryptographically random code verifier (43-128 chars) */\nexport function generateCodeVerifier(length = 64): string {\n const charset =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~\";\n const randomValues = crypto.getRandomValues(new Uint8Array(length));\n return Array.from(randomValues)\n .map((v) => charset[v % charset.length])\n .join(\"\");\n}\n\n/** Generate S256 code challenge from verifier */\nexport async function generateCodeChallenge(verifier: string): Promise<string> {\n const encoder = new TextEncoder();\n const data = encoder.encode(verifier);\n const digest = await crypto.subtle.digest(\"SHA-256\", data);\n return base64UrlEncode(digest);\n}\n\nfunction base64UrlEncode(buffer: ArrayBuffer): string {\n const bytes = new Uint8Array(buffer);\n let binary = \"\";\n for (const byte of bytes) {\n binary += String.fromCharCode(byte);\n }\n return btoa(binary)\n .replace(/\\+/g, \"-\")\n .replace(/\\//g, \"_\")\n .replace(/=+$/, \"\");\n}\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n GetAnalyticsTimeSeriesEnvelope,\n GetAnalyticsTimeSeriesParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getGetAnalyticsTimeSeriesUrl = (\n params: GetAnalyticsTimeSeriesParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/analytics/timeseries?${stringifiedParams}`\n : `/v1/analytics/timeseries`;\n};\n\n/**\n * Retrieve a tenant-scoped time series for a single processing-volume metric.\n *\n * Pick a `metric` (worker runs, documents, or pages), a date range, a bucket `granularity` (day/week/month), and optionally a `group_by` dimension (e.g. worker runs grouped by worker). The series is sparse (only buckets with data) over the half-open window `[from, to)`.\n *\n * `data` is an array of per-metric results; today it always contains exactly one entry (the requested metric).\n * @summary Get analytics time series\n */\nexport const getAnalyticsTimeSeries = async (\n params: GetAnalyticsTimeSeriesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetAnalyticsTimeSeriesEnvelope> => {\n return customFetch<GetAnalyticsTimeSeriesEnvelope>(\n getGetAnalyticsTimeSeriesUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetAnalyticsTimeSeriesKey = (\n params: GetAnalyticsTimeSeriesParams\n) => [`/v1/analytics/timeseries`, ...(params ? [params] : [])] as const;\n\nexport type GetAnalyticsTimeSeriesQueryResult = NonNullable<\n Awaited<ReturnType<typeof getAnalyticsTimeSeries>>\n>;\n\n/**\n * @summary Get analytics time series\n */\nexport const useGetAnalyticsTimeSeries = <TError = ErrorType<ErrorResponse>>(\n params: GetAnalyticsTimeSeriesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getAnalyticsTimeSeries>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetAnalyticsTimeSeriesKey(params) : null));\n const swrFn = () => getAnalyticsTimeSeries(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateApiKeyBody,\n CreateApiKeyEnvelope,\n ErrorResponse,\n ListApiKeysEnvelope,\n ListApiKeysParams,\n RevokeApiKeyEnvelope,\n UpdateApiKeyBody,\n UpdateApiKeyEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListApiKeysUrl = (params?: ListApiKeysParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/platform/api-keys?${stringifiedParams}`\n : `/platform/api-keys`;\n};\n\n/**\n * List all API keys for your tenant.\n *\n * By default, revoked keys are excluded. Set `include_revoked=true` to include them.\n *\n * **Note:** The full API key value is never returned — only the key prefix is shown.\n * @summary List API keys\n */\nexport const listApiKeys = async (\n params?: ListApiKeysParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListApiKeysEnvelope> => {\n return customFetch<ListApiKeysEnvelope>(getListApiKeysUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListApiKeysKey = (params?: ListApiKeysParams) =>\n [`/platform/api-keys`, ...(params ? [params] : [])] as const;\n\nexport type ListApiKeysQueryResult = NonNullable<\n Awaited<ReturnType<typeof listApiKeys>>\n>;\n\n/**\n * @summary List API keys\n */\nexport const useListApiKeys = <TError = ErrorType<ErrorResponse>>(\n params?: ListApiKeysParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listApiKeys>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListApiKeysKey(params) : null));\n const swrFn = () => listApiKeys(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateApiKeyUrl = () => {\n return `/platform/api-keys`;\n};\n\n/**\n * Create a new API key for authenticating with the Avallon API.\n *\n * **Important:** The full API key is only returned once in the response. Store it securely — it cannot be retrieved again.\n *\n * Keys are scoped to an environment (`test` or `live`) and optionally accept an expiration date.\n * @summary Create an API key\n */\nexport const createApiKey = async (\n createApiKeyBody?: CreateApiKeyBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateApiKeyEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateApiKeyEnvelope>(getCreateApiKeyUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createApiKeyBody),\n });\n};\n\nexport const getCreateApiKeyMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateApiKeyBody | undefined }) => {\n return createApiKey(arg, options);\n };\n};\nexport const getCreateApiKeyMutationKey = () => [`/platform/api-keys`] as const;\n\nexport type CreateApiKeyMutationResult = NonNullable<\n Awaited<ReturnType<typeof createApiKey>>\n>;\n\n/**\n * @summary Create an API key\n */\nexport const useCreateApiKey = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createApiKey>>,\n TError,\n Key,\n CreateApiKeyBody | undefined,\n Awaited<ReturnType<typeof createApiKey>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateApiKeyMutationKey();\n const swrFn = getCreateApiKeyMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRevokeApiKeyUrl = (id: string) => {\n return `/platform/api-keys/${id}/revoke`;\n};\n\n/**\n * Revoke an existing API key. Once revoked, the key can no longer be used for authentication.\n *\n * This operation is irreversible — revoked keys cannot be re-enabled. Create a new key if needed.\n *\n * Returns 409 if the key is already revoked, 404 if the key does not exist.\n * @summary Revoke an API key\n */\nexport const revokeApiKey = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<RevokeApiKeyEnvelope> => {\n return customFetch<RevokeApiKeyEnvelope>(getRevokeApiKeyUrl(id), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getRevokeApiKeyMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return revokeApiKey(id, options);\n };\n};\nexport const getRevokeApiKeyMutationKey = (id: string) =>\n [`/platform/api-keys/${id}/revoke`] as const;\n\nexport type RevokeApiKeyMutationResult = NonNullable<\n Awaited<ReturnType<typeof revokeApiKey>>\n>;\n\n/**\n * @summary Revoke an API key\n */\nexport const useRevokeApiKey = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof revokeApiKey>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof revokeApiKey>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRevokeApiKeyMutationKey(id);\n const swrFn = getRevokeApiKeyMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateApiKeyUrl = (id: string) => {\n return `/platform/api-keys/${id}`;\n};\n\n/**\n * Update mutable fields of an API key. Currently only `role` can be updated.\n *\n * The caller's role caps the maximum role they can grant — an `admin` cannot promote a key to `avallon_admin`.\n * @summary Update API key\n */\nexport const updateApiKey = async (\n id: string,\n updateApiKeyBody?: UpdateApiKeyBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateApiKeyEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateApiKeyEnvelope>(getUpdateApiKeyUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateApiKeyBody),\n });\n};\n\nexport const getUpdateApiKeyMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateApiKeyBody | undefined }) => {\n return updateApiKey(id, arg, options);\n };\n};\nexport const getUpdateApiKeyMutationKey = (id: string) =>\n [`/platform/api-keys/${id}`] as const;\n\nexport type UpdateApiKeyMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateApiKey>>\n>;\n\n/**\n * @summary Update API key\n */\nexport const useUpdateApiKey = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateApiKey>>,\n TError,\n Key,\n UpdateApiKeyBody | undefined,\n Awaited<ReturnType<typeof updateApiKey>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateApiKeyMutationKey(id);\n const swrFn = getUpdateApiKeyMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateArtifactBody,\n CreateArtifactEnvelope,\n DeleteArtifactEnvelope,\n ErrorResponse,\n GetArtifactEnvelope,\n GetArtifactMetadataKeysEnvelope,\n GetArtifactMetadataKeysParams,\n GetArtifactStatusSummaryEnvelope,\n GetArtifactStatusSummaryParams,\n GetArtifactUploadUrlBody,\n GetArtifactUploadUrlEnvelope,\n ListArtifactsEnvelope,\n ListArtifactsParams,\n UpdateArtifactMetadataBody,\n UpdateArtifactMetadataEnvelope,\n UploadFileBody,\n UploadFileEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateArtifactUrl = () => {\n return `/v1/artifacts`;\n};\n\n/**\n * Upload a document as a base64-encoded artifact for processing.\n *\n * **Limits:**\n *\n * Maximum file size is approximately 6.75MB (base64 encoded). The API Gateway has a 10MB request limit.\n *\n * **Processing options:**\n *\n * - `file_password`: Password for encrypted PDFs\n * - `file_splitting_enabled`: Split multi-page PDFs into separate artifacts\n * @summary Create artifact\n */\nexport const createArtifact = async (\n createArtifactBody?: CreateArtifactBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateArtifactEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateArtifactEnvelope>(getCreateArtifactUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createArtifactBody),\n });\n};\n\nexport const getCreateArtifactMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateArtifactBody | undefined }) => {\n return createArtifact(arg, options);\n };\n};\nexport const getCreateArtifactMutationKey = () => [`/v1/artifacts`] as const;\n\nexport type CreateArtifactMutationResult = NonNullable<\n Awaited<ReturnType<typeof createArtifact>>\n>;\n\n/**\n * @summary Create artifact\n */\nexport const useCreateArtifact = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createArtifact>>,\n TError,\n Key,\n CreateArtifactBody | undefined,\n Awaited<ReturnType<typeof createArtifact>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateArtifactMutationKey();\n const swrFn = getCreateArtifactMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListArtifactsUrl = (params?: ListArtifactsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"metadata\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/artifacts?${stringifiedParams}`\n : `/v1/artifacts`;\n};\n\n/**\n * List all artifacts with pagination, filtering, and sorting.\n *\n * **Case Filtering:**\n *\n * Use `case_id` to return only artifacts linked to a case. This reads the case links\n * created via `POST /v1/cases/{caseId}/links`, and is independent of any\n * `metadata.case_id` an artifact may carry.\n *\n * **Metadata Filtering:**\n *\n * Use bracket notation to filter by metadata keys:\n * - `metadata[claim_id]=abc-123`\n * - `metadata[source]=email`\n *\n * Multiple metadata filters can be combined (AND logic).\n * @summary List artifacts\n */\nexport const listArtifacts = async (\n params?: ListArtifactsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListArtifactsEnvelope> => {\n return customFetch<ListArtifactsEnvelope>(getListArtifactsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListArtifactsKey = (params?: ListArtifactsParams) =>\n [`/v1/artifacts`, ...(params ? [params] : [])] as const;\n\nexport type ListArtifactsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listArtifacts>>\n>;\n\n/**\n * @summary List artifacts\n */\nexport const useListArtifacts = <TError = ErrorType<ErrorResponse>>(\n params?: ListArtifactsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listArtifacts>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListArtifactsKey(params) : null));\n const swrFn = () => listArtifacts(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetArtifactUrl = (id: string) => {\n return `/v1/artifacts/${id}`;\n};\n\n/**\n * Retrieve a single artifact by ID, including its metadata, file URL, extracted content, and chunk-annotated content.\n *\n * The response always includes `content_with_chunkids_md`: the parsed content annotated with `[chunk_id=...]` markers when the artifact has parsed chunks. Chunk IDs are stable citation anchors — cite them to attribute extracted values to their source location.\n * @summary Get artifact\n */\nexport const getArtifact = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetArtifactEnvelope> => {\n return customFetch<GetArtifactEnvelope>(getGetArtifactUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetArtifactKey = (id: string) =>\n [`/v1/artifacts/${id}`] as const;\n\nexport type GetArtifactQueryResult = NonNullable<\n Awaited<ReturnType<typeof getArtifact>>\n>;\n\n/**\n * @summary Get artifact\n */\nexport const useGetArtifact = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getArtifact>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetArtifactKey(id) : null));\n const swrFn = () => getArtifact(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteArtifactUrl = (id: string) => {\n return `/v1/artifacts/${id}`;\n};\n\n/**\n * Soft-delete an artifact. Soft-deleted artifacts and their chunks no longer appear in any read.\n * @summary Delete artifact\n */\nexport const deleteArtifact = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteArtifactEnvelope> => {\n return customFetch<DeleteArtifactEnvelope>(getDeleteArtifactUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteArtifactMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteArtifact(id, options);\n };\n};\nexport const getDeleteArtifactMutationKey = (id: string) =>\n [`/v1/artifacts/${id}`] as const;\n\nexport type DeleteArtifactMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteArtifact>>\n>;\n\n/**\n * @summary Delete artifact\n */\nexport const useDeleteArtifact = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteArtifact>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteArtifact>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteArtifactMutationKey(id);\n const swrFn = getDeleteArtifactMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetArtifactMetadataKeysUrl = (\n params?: GetArtifactMetadataKeysParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/artifacts/metadata/keys?${stringifiedParams}`\n : `/v1/artifacts/metadata/keys`;\n};\n\n/**\n * Retrieve all unique metadata keys and their values across artifacts. Useful for building filter UIs.\n * @summary Get artifact metadata keys\n */\nexport const getArtifactMetadataKeys = async (\n params?: GetArtifactMetadataKeysParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetArtifactMetadataKeysEnvelope> => {\n return customFetch<GetArtifactMetadataKeysEnvelope>(\n getGetArtifactMetadataKeysUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetArtifactMetadataKeysKey = (\n params?: GetArtifactMetadataKeysParams\n) => [`/v1/artifacts/metadata/keys`, ...(params ? [params] : [])] as const;\n\nexport type GetArtifactMetadataKeysQueryResult = NonNullable<\n Awaited<ReturnType<typeof getArtifactMetadataKeys>>\n>;\n\n/**\n * @summary Get artifact metadata keys\n */\nexport const useGetArtifactMetadataKeys = <TError = ErrorType<ErrorResponse>>(\n params?: GetArtifactMetadataKeysParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getArtifactMetadataKeys>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetArtifactMetadataKeysKey(params) : null));\n const swrFn = () => getArtifactMetadataKeys(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetArtifactStatusSummaryUrl = (\n params: GetArtifactStatusSummaryParams\n) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"scope\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/artifacts/status-summary?${stringifiedParams}`\n : `/v1/artifacts/status-summary`;\n};\n\n/**\n * Count the artifacts in a scope, broken down by processing status.\n *\n * Define the scope with bracket notation (e.g. `scope[email_id]=abc-123`). At least one key is required; multiple keys are combined with AND logic.\n * @summary Get artifact status summary\n */\nexport const getArtifactStatusSummary = async (\n params: GetArtifactStatusSummaryParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetArtifactStatusSummaryEnvelope> => {\n return customFetch<GetArtifactStatusSummaryEnvelope>(\n getGetArtifactStatusSummaryUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetArtifactStatusSummaryKey = (\n params: GetArtifactStatusSummaryParams\n) => [`/v1/artifacts/status-summary`, ...(params ? [params] : [])] as const;\n\nexport type GetArtifactStatusSummaryQueryResult = NonNullable<\n Awaited<ReturnType<typeof getArtifactStatusSummary>>\n>;\n\n/**\n * @summary Get artifact status summary\n */\nexport const useGetArtifactStatusSummary = <TError = ErrorType<ErrorResponse>>(\n params: GetArtifactStatusSummaryParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getArtifactStatusSummary>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetArtifactStatusSummaryKey(params) : null));\n const swrFn = () => getArtifactStatusSummary(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetArtifactUploadUrlUrl = () => {\n return `/v1/artifacts/get-upload-url`;\n};\n\n/**\n * Returns a pre-signed PUT URL. Upload the file directly to `upload_url`, then pass `file_url` as `source_url` to POST /v1/upload-file.\n * @summary Request a pre-signed URL for direct large file upload\n */\nexport const getArtifactUploadUrl = async (\n getArtifactUploadUrlBody?: GetArtifactUploadUrlBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetArtifactUploadUrlEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<GetArtifactUploadUrlEnvelope>(\n getGetArtifactUploadUrlUrl(),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(getArtifactUploadUrlBody),\n }\n );\n};\n\nexport const getGetArtifactUploadUrlMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: GetArtifactUploadUrlBody | undefined }) => {\n return getArtifactUploadUrl(arg, options);\n };\n};\nexport const getGetArtifactUploadUrlMutationKey = () =>\n [`/v1/artifacts/get-upload-url`] as const;\n\nexport type GetArtifactUploadUrlMutationResult = NonNullable<\n Awaited<ReturnType<typeof getArtifactUploadUrl>>\n>;\n\n/**\n * @summary Request a pre-signed URL for direct large file upload\n */\nexport const useGetArtifactUploadUrl = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof getArtifactUploadUrl>>,\n TError,\n Key,\n GetArtifactUploadUrlBody | undefined,\n Awaited<ReturnType<typeof getArtifactUploadUrl>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getGetArtifactUploadUrlMutationKey();\n const swrFn = getGetArtifactUploadUrlMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateArtifactMetadataUrl = (id: string) => {\n return `/v1/artifacts/${id}/metadata`;\n};\n\n/**\n * Merge-update metadata on an existing artifact. Provided keys are added or overwritten; other existing keys are preserved.\n * @summary Update artifact metadata\n */\nexport const updateArtifactMetadata = async (\n id: string,\n updateArtifactMetadataBody?: UpdateArtifactMetadataBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateArtifactMetadataEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateArtifactMetadataEnvelope>(\n getUpdateArtifactMetadataUrl(id),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateArtifactMetadataBody),\n }\n );\n};\n\nexport const getUpdateArtifactMetadataMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateArtifactMetadataBody | undefined }) => {\n return updateArtifactMetadata(id, arg, options);\n };\n};\nexport const getUpdateArtifactMetadataMutationKey = (id: string) =>\n [`/v1/artifacts/${id}/metadata`] as const;\n\nexport type UpdateArtifactMetadataMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateArtifactMetadata>>\n>;\n\n/**\n * @summary Update artifact metadata\n */\nexport const useUpdateArtifactMetadata = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateArtifactMetadata>>,\n TError,\n Key,\n UpdateArtifactMetadataBody | undefined,\n Awaited<ReturnType<typeof updateArtifactMetadata>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateArtifactMetadataMutationKey(id);\n const swrFn = getUpdateArtifactMetadataMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUploadFileUrl = () => {\n return `/v1/upload-file`;\n};\n\n/**\n * Upload a file for processing by passing a URL to a file. Use this for uploading larger files.\n *\n * This endpoint returns an upload id that can be used to find the created artifacts using the list artifacts endpoint.\n * @summary Upload a file for processing\n */\nexport const uploadFile = async (\n uploadFileBody?: UploadFileBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UploadFileEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UploadFileEnvelope>(getUploadFileUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(uploadFileBody),\n });\n};\n\nexport const getUploadFileMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UploadFileBody | undefined }) => {\n return uploadFile(arg, options);\n };\n};\nexport const getUploadFileMutationKey = () => [`/v1/upload-file`] as const;\n\nexport type UploadFileMutationResult = NonNullable<\n Awaited<ReturnType<typeof uploadFile>>\n>;\n\n/**\n * @summary Upload a file for processing\n */\nexport const useUploadFile = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof uploadFile>>,\n TError,\n Key,\n UploadFileBody | undefined,\n Awaited<ReturnType<typeof uploadFile>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUploadFileMutationKey();\n const swrFn = getUploadFileMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n ErrorResponse,\n GetOAuthUrlEnvelope,\n GetOAuthUrlParams,\n GetSessionTokenBody,\n GetSessionTokenEnvelope,\n PartnerJwks,\n PartnerLaunchEnvelope,\n PartnerLaunchParams,\n RefreshTokenBody,\n RefreshTokenEnvelope,\n RequestPasswordResetBody,\n RequestPasswordResetEnvelope,\n ResetPasswordBody,\n ResetPasswordEnvelope,\n SignInBody,\n SignInEnvelope,\n SignUpBody,\n SignUpEnvelope,\n} from \"../../models\";\n\nimport { customFetchNoAuth } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getSignUpUrl = () => {\n return `/v1/auth/sign-up`;\n};\n\n/**\n * Create a new user account with email and password. When the response includes a pending_authentication_token, the account requires email verification: complete it via sign-in (type: email_otp) with the emailed one-time password and this token.\n * @summary Sign up\n */\nexport const signUp = async (\n signUpBody?: SignUpBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<SignUpEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<SignUpEnvelope>(getSignUpUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(signUpBody),\n });\n};\n\nexport const getSignUpMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: SignUpBody | undefined }) => {\n return signUp(arg, options);\n };\n};\nexport const getSignUpMutationKey = () => [`/v1/auth/sign-up`] as const;\n\nexport type SignUpMutationResult = NonNullable<\n Awaited<ReturnType<typeof signUp>>\n>;\n\n/**\n * @summary Sign up\n */\nexport const useSignUp = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof signUp>>,\n TError,\n Key,\n SignUpBody | undefined,\n Awaited<ReturnType<typeof signUp>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getSignUpMutationKey();\n const swrFn = getSignUpMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getSignInUrl = () => {\n return `/v1/auth/sign-in`;\n};\n\n/**\n * Authenticate using one of the supported methods:\n *\n * - **Password:** Email and password credentials. If the password is correct but the email is not verified yet, responds 403 with `data.pending_authentication_token` and a fresh verification code is emailed; complete verification via **Email OTP**. Each password attempt invalidates earlier codes and tokens, so always use the most recent pair — repeating the password sign-in is also how a new code is requested.\n * - **OAuth:** Authorization code from OAuth flow (social or enterprise SSO). Pass the `provider` the flow was started with so the code is exchanged against the system that issued it. `verifier` is only required when the flow was started with a `code_challenge` — see **Get OAuth sign-in URL**.\n * - **Email OTP:** One-time password sent to email. Include the `pending_authentication_token` from sign-up, or from the 403 returned by an unverified user's password sign-in, when completing email verification.\n * @summary Sign in\n */\nexport const signIn = async (\n signInBody?: SignInBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<SignInEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<SignInEnvelope>(getSignInUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(signInBody),\n });\n};\n\nexport const getSignInMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: SignInBody | undefined }) => {\n return signIn(arg, options);\n };\n};\nexport const getSignInMutationKey = () => [`/v1/auth/sign-in`] as const;\n\nexport type SignInMutationResult = NonNullable<\n Awaited<ReturnType<typeof signIn>>\n>;\n\n/**\n * @summary Sign in\n */\nexport const useSignIn = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof signIn>>,\n TError,\n Key,\n SignInBody | undefined,\n Awaited<ReturnType<typeof signIn>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getSignInMutationKey();\n const swrFn = getSignInMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRequestPasswordResetUrl = () => {\n return `/v1/auth/request-password-reset`;\n};\n\n/**\n * Start password recovery for an email/password account. When the email belongs to an account, a reset link is emailed to it. The response is 200 regardless, and does not reveal whether an account exists.\n * @summary Request password reset\n */\nexport const requestPasswordReset = async (\n requestPasswordResetBody?: RequestPasswordResetBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<RequestPasswordResetEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<RequestPasswordResetEnvelope>(\n getRequestPasswordResetUrl(),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(requestPasswordResetBody),\n }\n );\n};\n\nexport const getRequestPasswordResetMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: RequestPasswordResetBody | undefined }) => {\n return requestPasswordReset(arg, options);\n };\n};\nexport const getRequestPasswordResetMutationKey = () =>\n [`/v1/auth/request-password-reset`] as const;\n\nexport type RequestPasswordResetMutationResult = NonNullable<\n Awaited<ReturnType<typeof requestPasswordReset>>\n>;\n\n/**\n * @summary Request password reset\n */\nexport const useRequestPasswordReset = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof requestPasswordReset>>,\n TError,\n Key,\n RequestPasswordResetBody | undefined,\n Awaited<ReturnType<typeof requestPasswordReset>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRequestPasswordResetMutationKey();\n const swrFn = getRequestPasswordResetMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getResetPasswordUrl = () => {\n return `/v1/auth/reset-password`;\n};\n\n/**\n * Complete password recovery with the token from the emailed reset link and set a new password. Completing the reset also verifies the account's email address. Afterwards, sign in with the new password.\n * @summary Reset password\n */\nexport const resetPassword = async (\n resetPasswordBody?: ResetPasswordBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<ResetPasswordEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<ResetPasswordEnvelope>(getResetPasswordUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(resetPasswordBody),\n });\n};\n\nexport const getResetPasswordMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: ResetPasswordBody | undefined }) => {\n return resetPassword(arg, options);\n };\n};\nexport const getResetPasswordMutationKey = () =>\n [`/v1/auth/reset-password`] as const;\n\nexport type ResetPasswordMutationResult = NonNullable<\n Awaited<ReturnType<typeof resetPassword>>\n>;\n\n/**\n * @summary Reset password\n */\nexport const useResetPassword = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof resetPassword>>,\n TError,\n Key,\n ResetPasswordBody | undefined,\n Awaited<ReturnType<typeof resetPassword>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getResetPasswordMutationKey();\n const swrFn = getResetPasswordMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRefreshTokenUrl = () => {\n return `/v1/auth/refresh-token`;\n};\n\n/**\n * Exchange a valid access token and refresh token pair for new tokens.\n * @summary Refresh authentication token\n */\nexport const refreshToken = async (\n refreshTokenBody?: RefreshTokenBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<RefreshTokenEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<RefreshTokenEnvelope>(getRefreshTokenUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(refreshTokenBody),\n });\n};\n\nexport const getRefreshTokenMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: RefreshTokenBody | undefined }) => {\n return refreshToken(arg, options);\n };\n};\nexport const getRefreshTokenMutationKey = () =>\n [`/v1/auth/refresh-token`] as const;\n\nexport type RefreshTokenMutationResult = NonNullable<\n Awaited<ReturnType<typeof refreshToken>>\n>;\n\n/**\n * @summary Refresh authentication token\n */\nexport const useRefreshToken = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof refreshToken>>,\n TError,\n Key,\n RefreshTokenBody | undefined,\n Awaited<ReturnType<typeof refreshToken>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRefreshTokenMutationKey();\n const swrFn = getRefreshTokenMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetOAuthUrlUrl = (params: GetOAuthUrlParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/auth/oauth-url?${stringifiedParams}`\n : `/v1/auth/oauth-url`;\n};\n\n/**\n * Generate an OAuth authorization URL for a given provider.\n *\n * PKCE is optional. To use it, generate a random verifier, derive `code_challenge` from it, and pass both `code_challenge` and the matching `code_challenge_method` — then send the verifier to **Sign in** when exchanging the code. Omit both to run the flow without PKCE and exchange the code on its own.\n *\n * For enterprise SSO, pass `provider=sso` together with the user's `email`; the email domain selects the SSO organization. Responds 404 when no SSO organization is configured for the domain.\n * @summary Get OAuth sign-in URL\n */\nexport const getOAuthUrl = async (\n params: GetOAuthUrlParams,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<GetOAuthUrlEnvelope> => {\n return customFetchNoAuth<GetOAuthUrlEnvelope>(getGetOAuthUrlUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetOAuthUrlKey = (params: GetOAuthUrlParams) =>\n [`/v1/auth/oauth-url`, ...(params ? [params] : [])] as const;\n\nexport type GetOAuthUrlQueryResult = NonNullable<\n Awaited<ReturnType<typeof getOAuthUrl>>\n>;\n\n/**\n * @summary Get OAuth sign-in URL\n */\nexport const useGetOAuthUrl = <TError = ErrorType<ErrorResponse>>(\n params: GetOAuthUrlParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getOAuthUrl>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetchNoAuth>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetOAuthUrlKey(params) : null));\n const swrFn = () => getOAuthUrl(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetSessionTokenUrl = () => {\n return `/v1/auth/session`;\n};\n\n/**\n * Exchange an identity token for a tenant-scoped Core Plane access token.\n *\n * - If `tenant_id` is provided, validates the user is a member of that tenant and returns 404 if they are not.\n * - If `tenant_id` is omitted, selects the tenant of the identity token's organization, falling back to the user's default (oldest) tenant.\n * - Call this endpoint again with a different `tenant_id` to switch tenants.\n * @summary Create or switch tenant session\n */\nexport const getSessionToken = async (\n getSessionTokenBody?: GetSessionTokenBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<GetSessionTokenEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<GetSessionTokenEnvelope>(getGetSessionTokenUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(getSessionTokenBody),\n });\n};\n\nexport const getGetSessionTokenMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: GetSessionTokenBody | undefined }) => {\n return getSessionToken(arg, options);\n };\n};\nexport const getGetSessionTokenMutationKey = () =>\n [`/v1/auth/session`] as const;\n\nexport type GetSessionTokenMutationResult = NonNullable<\n Awaited<ReturnType<typeof getSessionToken>>\n>;\n\n/**\n * @summary Create or switch tenant session\n */\nexport const useGetSessionToken = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof getSessionToken>>,\n TError,\n Key,\n GetSessionTokenBody | undefined,\n Awaited<ReturnType<typeof getSessionToken>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getGetSessionTokenMutationKey();\n const swrFn = getGetSessionTokenMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetPartnerJwksUrl = (partner: string) => {\n return `/.well-known/partners/${partner}/jwks.json`;\n};\n\n/**\n * Returns the JSON Web Key Set (RFC 7517) of a partner's public signing keys, used to verify partner-issued launch tokens.\n * @summary Get partner JWKS\n */\nexport const getPartnerJwks = async (\n partner: string,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<PartnerJwks> => {\n return customFetchNoAuth<PartnerJwks>(getGetPartnerJwksUrl(partner), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetPartnerJwksKey = (partner: string) =>\n [`/.well-known/partners/${partner}/jwks.json`] as const;\n\nexport type GetPartnerJwksQueryResult = NonNullable<\n Awaited<ReturnType<typeof getPartnerJwks>>\n>;\n\n/**\n * @summary Get partner JWKS\n */\nexport const useGetPartnerJwks = <TError = ErrorType<ErrorResponse>>(\n partner: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getPartnerJwks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetchNoAuth>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && partner !== null && partner !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetPartnerJwksKey(partner) : null));\n const swrFn = () => getPartnerJwks(partner, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPartnerLaunchUrl = (params?: PartnerLaunchParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/auth/partner-launch?${stringifiedParams}`\n : `/v1/auth/partner-launch`;\n};\n\n/**\n * Verifies a partner-signed launch token, mints an Avallon session, and redirects (302) the user into the app's handoff route, carrying the session token in the URL fragment (no cookie).\n * @summary Partner launch (SSO)\n */\nexport const partnerLaunch = async (\n params?: PartnerLaunchParams,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<unknown> => {\n return customFetchNoAuth<unknown>(getPartnerLaunchUrl(params), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getPartnerLaunchMutationFetcher = (\n params?: PartnerLaunchParams,\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return partnerLaunch(params, options);\n };\n};\nexport const getPartnerLaunchMutationKey = (params?: PartnerLaunchParams) =>\n [`/v1/auth/partner-launch`, ...(params ? [params] : [])] as const;\n\nexport type PartnerLaunchMutationResult = NonNullable<\n Awaited<ReturnType<typeof partnerLaunch>>\n>;\n\n/**\n * @summary Partner launch (SSO)\n */\nexport const usePartnerLaunch = <\n TError = ErrorType<PartnerLaunchEnvelope | ErrorResponse>,\n>(\n params?: PartnerLaunchParams,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof partnerLaunch>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof partnerLaunch>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getPartnerLaunchMutationKey(params);\n const swrFn = getPartnerLaunchMutationFetcher(params, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateCallFeedbackEnvelope,\n CreateFeedbackRequest,\n DeleteCallFeedbackEnvelope,\n ErrorResponse,\n ListCallFeedbackEnvelope,\n ListCallFeedbackParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateCallFeedbackUrl = (id: string) => {\n return `/v1/calls/${id}/feedback`;\n};\n\n/**\n * Create feedback for a specific message in a call. Requires user (JWT) authentication; the author is derived from the authenticated user's profile and API-key callers are rejected.\n * @summary Create feedback on a call message\n */\nexport const createCallFeedback = async (\n id: string,\n createFeedbackRequest?: CreateFeedbackRequest,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateCallFeedbackEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateCallFeedbackEnvelope>(getCreateCallFeedbackUrl(id), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createFeedbackRequest),\n });\n};\n\nexport const getCreateCallFeedbackMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateFeedbackRequest | undefined }) => {\n return createCallFeedback(id, arg, options);\n };\n};\nexport const getCreateCallFeedbackMutationKey = (id: string) =>\n [`/v1/calls/${id}/feedback`] as const;\n\nexport type CreateCallFeedbackMutationResult = NonNullable<\n Awaited<ReturnType<typeof createCallFeedback>>\n>;\n\n/**\n * @summary Create feedback on a call message\n */\nexport const useCreateCallFeedback = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createCallFeedback>>,\n TError,\n Key,\n CreateFeedbackRequest | undefined,\n Awaited<ReturnType<typeof createCallFeedback>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateCallFeedbackMutationKey(id);\n const swrFn = getCreateCallFeedbackMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListCallFeedbackUrl = (\n id: string,\n params?: ListCallFeedbackParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/calls/${id}/feedback?${stringifiedParams}`\n : `/v1/calls/${id}/feedback`;\n};\n\n/**\n * List all feedback for a call. Paginated.\n * @summary List feedback for a call\n */\nexport const listCallFeedback = async (\n id: string,\n params?: ListCallFeedbackParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListCallFeedbackEnvelope> => {\n return customFetch<ListCallFeedbackEnvelope>(\n getListCallFeedbackUrl(id, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListCallFeedbackKey = (\n id: string,\n params?: ListCallFeedbackParams\n) => [`/v1/calls/${id}/feedback`, ...(params ? [params] : [])] as const;\n\nexport type ListCallFeedbackQueryResult = NonNullable<\n Awaited<ReturnType<typeof listCallFeedback>>\n>;\n\n/**\n * @summary List feedback for a call\n */\nexport const useListCallFeedback = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListCallFeedbackParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listCallFeedback>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListCallFeedbackKey(id, params) : null));\n const swrFn = () => listCallFeedback(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteCallFeedbackUrl = (id: string, feedbackId: string) => {\n return `/v1/calls/${id}/feedback/${feedbackId}`;\n};\n\n/**\n * Delete a single feedback entry.\n * @summary Delete feedback\n */\nexport const deleteCallFeedback = async (\n id: string,\n feedbackId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteCallFeedbackEnvelope> => {\n return customFetch<DeleteCallFeedbackEnvelope>(\n getDeleteCallFeedbackUrl(id, feedbackId),\n {\n ...options,\n method: \"DELETE\",\n }\n );\n};\n\nexport const getDeleteCallFeedbackMutationFetcher = (\n id: string,\n feedbackId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteCallFeedback(id, feedbackId, options);\n };\n};\nexport const getDeleteCallFeedbackMutationKey = (\n id: string,\n feedbackId: string\n) => [`/v1/calls/${id}/feedback/${feedbackId}`] as const;\n\nexport type DeleteCallFeedbackMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteCallFeedback>>\n>;\n\n/**\n * @summary Delete feedback\n */\nexport const useDeleteCallFeedback = <TError = ErrorType<ErrorResponse>>(\n id: string,\n feedbackId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteCallFeedback>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteCallFeedback>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getDeleteCallFeedbackMutationKey(id, feedbackId);\n const swrFn = getDeleteCallFeedbackMutationFetcher(\n id,\n feedbackId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n GetCallAnalyticsEnvelope,\n GetCallAnalyticsParams,\n GetCallEnvelope,\n GetCallEvaluationEnvelope,\n GetCallParams,\n ListCallsEnvelope,\n ListCallsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListCallsUrl = (params?: ListCallsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"metadata\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/calls?${stringifiedParams}`\n : `/v1/calls`;\n};\n\n/**\n * List all calls, with pagination, filtering, and sorting.\n *\n * **Filtering:**\n *\n * Filter by agent, direction, status, time range, phone number, and more. Phone number filter supports both exact E.164 matches and partial search.\n *\n * **Case Filtering:**\n *\n * Use `case_id` to return only calls linked to a case. This reads the case links created\n * via `POST /v1/cases/{caseId}/links`, and is independent of any `metadata.case_id` a\n * call may carry.\n *\n * **Metadata Filtering:**\n *\n * Use bracket notation to filter by metadata keys:\n * - `metadata[claim_id]=abc-123`\n * - `metadata[source]=worker`\n *\n * Multiple metadata filters can be combined (AND logic).\n * @summary List calls\n */\nexport const listCalls = async (\n params?: ListCallsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListCallsEnvelope> => {\n return customFetch<ListCallsEnvelope>(getListCallsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListCallsKey = (params?: ListCallsParams) =>\n [`/v1/calls`, ...(params ? [params] : [])] as const;\n\nexport type ListCallsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listCalls>>\n>;\n\n/**\n * @summary List calls\n */\nexport const useListCalls = <TError = ErrorType<ErrorResponse>>(\n params?: ListCallsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listCalls>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListCallsKey(params) : null));\n const swrFn = () => listCalls(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetCallUrl = (id: string, params?: GetCallParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/calls/${id}?${stringifiedParams}`\n : `/v1/calls/${id}`;\n};\n\n/**\n * Retrieve detailed information about a specific call.\n *\n * Set `include_messages=true` to include the full message transcript.\n * @summary Get call\n */\nexport const getCall = async (\n id: string,\n params?: GetCallParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetCallEnvelope> => {\n return customFetch<GetCallEnvelope>(getGetCallUrl(id, params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetCallKey = (id: string, params?: GetCallParams) =>\n [`/v1/calls/${id}`, ...(params ? [params] : [])] as const;\n\nexport type GetCallQueryResult = NonNullable<\n Awaited<ReturnType<typeof getCall>>\n>;\n\n/**\n * @summary Get call\n */\nexport const useGetCall = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: GetCallParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getCall>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetCallKey(id, params) : null));\n const swrFn = () => getCall(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetCallEvaluationUrl = (id: string) => {\n return `/v1/calls/${id}/evaluation`;\n};\n\n/**\n * Retrieve the evaluation results for a specific call, including overall score, pass status, and per-metric breakdowns.\n * @summary Get call evaluation\n */\nexport const getCallEvaluation = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetCallEvaluationEnvelope> => {\n return customFetch<GetCallEvaluationEnvelope>(getGetCallEvaluationUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetCallEvaluationKey = (id: string) =>\n [`/v1/calls/${id}/evaluation`] as const;\n\nexport type GetCallEvaluationQueryResult = NonNullable<\n Awaited<ReturnType<typeof getCallEvaluation>>\n>;\n\n/**\n * @summary Get call evaluation\n */\nexport const useGetCallEvaluation = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getCallEvaluation>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetCallEvaluationKey(id) : null));\n const swrFn = () => getCallEvaluation(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetCallAnalyticsUrl = (params: GetCallAnalyticsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/calls/analytics?${stringifiedParams}`\n : `/v1/calls/analytics`;\n};\n\n/**\n * Retrieve aggregated call analytics for a time range.\n *\n * Includes summary statistics, call volume over time, evaluation scores, score and duration distributions, and per-metric performance.\n * @summary Get call analytics\n */\nexport const getCallAnalytics = async (\n params: GetCallAnalyticsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetCallAnalyticsEnvelope> => {\n return customFetch<GetCallAnalyticsEnvelope>(getGetCallAnalyticsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetCallAnalyticsKey = (params: GetCallAnalyticsParams) =>\n [`/v1/calls/analytics`, ...(params ? [params] : [])] as const;\n\nexport type GetCallAnalyticsQueryResult = NonNullable<\n Awaited<ReturnType<typeof getCallAnalytics>>\n>;\n\n/**\n * @summary Get call analytics\n */\nexport const useGetCallAnalytics = <TError = ErrorType<ErrorResponse>>(\n params: GetCallAnalyticsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getCallAnalytics>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetCallAnalyticsKey(params) : null));\n const swrFn = () => getCallAnalytics(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n AddCaseLinksBody,\n AddCaseLinksEnvelope,\n AddCaseLinksParams,\n CreateCaseBody,\n CreateCaseEnvelope,\n DeleteCaseEnvelope,\n DeleteCaseParams,\n ErrorResponse,\n GetCaseEnvelope,\n GetCaseParams,\n ListCaseLinksEnvelope,\n ListCaseLinksParams,\n ListCasesEnvelope,\n ListCasesParams,\n RemoveCaseLinkEnvelope,\n RemoveCaseLinkParams,\n SearchCasesEnvelope,\n SearchCasesParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListCasesUrl = (params?: ListCasesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases?${stringifiedParams}`\n : `/v1/cases`;\n};\n\n/**\n * List all cases for the current tenant, paginated, filterable, and sortable.\n * @summary List cases\n */\nexport const listCases = async (\n params?: ListCasesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListCasesEnvelope> => {\n return customFetch<ListCasesEnvelope>(getListCasesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListCasesKey = (params?: ListCasesParams) =>\n [`/v1/cases`, ...(params ? [params] : [])] as const;\n\nexport type ListCasesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listCases>>\n>;\n\n/**\n * @summary List cases\n */\nexport const useListCases = <TError = ErrorType<ErrorResponse>>(\n params?: ListCasesParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listCases>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListCasesKey(params) : null));\n const swrFn = () => listCases(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateCaseUrl = () => {\n return `/v1/cases`;\n};\n\n/**\n * Create a case with a client-supplied id.\n *\n * Case ids are tenant-scoped opaque keys (e.g. \"clm-1\", \"STD-001\") and are normalized server-side (trimmed and lowercased). Creating an id that already exists **in the same environment** returns 409 — the same id can exist once in `live` and once in `test`.\n * @summary Create case\n */\nexport const createCase = async (\n createCaseBody?: CreateCaseBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateCaseEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateCaseEnvelope>(getCreateCaseUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createCaseBody),\n });\n};\n\nexport const getCreateCaseMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateCaseBody | undefined }) => {\n return createCase(arg, options);\n };\n};\nexport const getCreateCaseMutationKey = () => [`/v1/cases`] as const;\n\nexport type CreateCaseMutationResult = NonNullable<\n Awaited<ReturnType<typeof createCase>>\n>;\n\n/**\n * @summary Create case\n */\nexport const useCreateCase = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createCase>>,\n TError,\n Key,\n CreateCaseBody | undefined,\n Awaited<ReturnType<typeof createCase>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateCaseMutationKey();\n const swrFn = getCreateCaseMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getSearchCasesUrl = (params: SearchCasesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/search?${stringifiedParams}`\n : `/v1/cases/search`;\n};\n\n/**\n * Probe for candidate cases. Matches the query as a normalized substring of the case id, and fuzzily (trigram) against subject and reporter. Results are relevance-ranked — id matches first, then best fuzzy match, then most recently updated — so ordering is fixed and not configurable.\n * @summary Search cases\n */\nexport const searchCases = async (\n params: SearchCasesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<SearchCasesEnvelope> => {\n return customFetch<SearchCasesEnvelope>(getSearchCasesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getSearchCasesKey = (params: SearchCasesParams) =>\n [`/v1/cases/search`, ...(params ? [params] : [])] as const;\n\nexport type SearchCasesQueryResult = NonNullable<\n Awaited<ReturnType<typeof searchCases>>\n>;\n\n/**\n * @summary Search cases\n */\nexport const useSearchCases = <TError = ErrorType<ErrorResponse>>(\n params: SearchCasesParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof searchCases>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getSearchCasesKey(params) : null));\n const swrFn = () => searchCases(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetCaseUrl = (id: string, params?: GetCaseParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}?${stringifiedParams}`\n : `/v1/cases/${id}`;\n};\n\n/**\n * Retrieve a case by id.\n *\n * Related entities are not embedded — fetch them via the filtered list endpoints,\n * e.g. `GET /v1/worker-runs?case_id=…` and `GET /v1/artifacts?metadata[case_id]=…`.\n * @summary Get case\n */\nexport const getCase = async (\n id: string,\n params?: GetCaseParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetCaseEnvelope> => {\n return customFetch<GetCaseEnvelope>(getGetCaseUrl(id, params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetCaseKey = (id: string, params?: GetCaseParams) =>\n [`/v1/cases/${id}`, ...(params ? [params] : [])] as const;\n\nexport type GetCaseQueryResult = NonNullable<\n Awaited<ReturnType<typeof getCase>>\n>;\n\n/**\n * @summary Get case\n */\nexport const useGetCase = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: GetCaseParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getCase>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetCaseKey(id, params) : null));\n const swrFn = () => getCase(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteCaseUrl = (id: string, params?: DeleteCaseParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}?${stringifiedParams}`\n : `/v1/cases/${id}`;\n};\n\n/**\n * Delete a case.\n *\n * The case and its links stop being visible; the linked entities themselves are untouched. The id becomes available again — a case created with the same id afterwards is a new, empty case, not the deleted one.\n *\n * Unlike removing a case link, this is **not** idempotent: deleting a case that does not exist, or has already been deleted, returns 404.\n * @summary Delete case\n */\nexport const deleteCase = async (\n id: string,\n params?: DeleteCaseParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteCaseEnvelope> => {\n return customFetch<DeleteCaseEnvelope>(getDeleteCaseUrl(id, params), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteCaseMutationFetcher = (\n id: string,\n params?: DeleteCaseParams,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteCase(id, params, options);\n };\n};\nexport const getDeleteCaseMutationKey = (\n id: string,\n params?: DeleteCaseParams\n) => [`/v1/cases/${id}`, ...(params ? [params] : [])] as const;\n\nexport type DeleteCaseMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteCase>>\n>;\n\n/**\n * @summary Delete case\n */\nexport const useDeleteCase = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: DeleteCaseParams,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteCase>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteCase>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteCaseMutationKey(id, params);\n const swrFn = getDeleteCaseMutationFetcher(id, params, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getAddCaseLinksUrl = (id: string, params?: AddCaseLinksParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}/links?${stringifiedParams}`\n : `/v1/cases/${id}/links`;\n};\n\n/**\n * Link up to 100 entities (artifacts, calls, chats, emails, extracts, information requests, schedules, worker runs) to a case.\n *\n * The case and every entity must already exist in the tenant — unknown ids return 404 and nothing is created. Calls, emails, information requests and worker runs must belong to the case's environment, and a schedule must run in it; artifacts, chats and extracts are not environment-scoped and can be linked to a case in either. A mismatch rejects the whole request. Adding is idempotent: re-linking an already linked entity returns the existing link with its original `created_at`.\n * @summary Add case links\n */\nexport const addCaseLinks = async (\n id: string,\n addCaseLinksBody?: AddCaseLinksBody,\n params?: AddCaseLinksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<AddCaseLinksEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<AddCaseLinksEnvelope>(getAddCaseLinksUrl(id, params), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(addCaseLinksBody),\n });\n};\n\nexport const getAddCaseLinksMutationFetcher = (\n id: string,\n params?: AddCaseLinksParams,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: AddCaseLinksBody | undefined }) => {\n return addCaseLinks(id, arg, params, options);\n };\n};\nexport const getAddCaseLinksMutationKey = (\n id: string,\n params?: AddCaseLinksParams\n) => [`/v1/cases/${id}/links`, ...(params ? [params] : [])] as const;\n\nexport type AddCaseLinksMutationResult = NonNullable<\n Awaited<ReturnType<typeof addCaseLinks>>\n>;\n\n/**\n * @summary Add case links\n */\nexport const useAddCaseLinks = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: AddCaseLinksParams,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof addCaseLinks>>,\n TError,\n Key,\n AddCaseLinksBody | undefined,\n Awaited<ReturnType<typeof addCaseLinks>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getAddCaseLinksMutationKey(id, params);\n const swrFn = getAddCaseLinksMutationFetcher(id, params, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListCaseLinksUrl = (\n id: string,\n params?: ListCaseLinksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}/links?${stringifiedParams}`\n : `/v1/cases/${id}/links`;\n};\n\n/**\n * List the entities linked to a case, paginated and filterable by entity type.\n * @summary List case links\n */\nexport const listCaseLinks = async (\n id: string,\n params?: ListCaseLinksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListCaseLinksEnvelope> => {\n return customFetch<ListCaseLinksEnvelope>(getListCaseLinksUrl(id, params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListCaseLinksKey = (id: string, params?: ListCaseLinksParams) =>\n [`/v1/cases/${id}/links`, ...(params ? [params] : [])] as const;\n\nexport type ListCaseLinksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listCaseLinks>>\n>;\n\n/**\n * @summary List case links\n */\nexport const useListCaseLinks = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListCaseLinksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listCaseLinks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListCaseLinksKey(id, params) : null));\n const swrFn = () => listCaseLinks(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRemoveCaseLinkUrl = (\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}/links/${entityType}/${entityId}?${stringifiedParams}`\n : `/v1/cases/${id}/links/${entityType}/${entityId}`;\n};\n\n/**\n * Remove the link between a case and an entity. Removal is idempotent: removing a link that does not exist succeeds without effect.\n * @summary Remove case link\n */\nexport const removeCaseLink = async (\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<RemoveCaseLinkEnvelope> => {\n return customFetch<RemoveCaseLinkEnvelope>(\n getRemoveCaseLinkUrl(id, entityType, entityId, params),\n {\n ...options,\n method: \"DELETE\",\n }\n );\n};\n\nexport const getRemoveCaseLinkMutationFetcher = (\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return removeCaseLink(id, entityType, entityId, params, options);\n };\n};\nexport const getRemoveCaseLinkMutationKey = (\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams\n) =>\n [\n `/v1/cases/${id}/links/${entityType}/${entityId}`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type RemoveCaseLinkMutationResult = NonNullable<\n Awaited<ReturnType<typeof removeCaseLink>>\n>;\n\n/**\n * @summary Remove case link\n */\nexport const useRemoveCaseLink = <TError = ErrorType<ErrorResponse>>(\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof removeCaseLink>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof removeCaseLink>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ??\n getRemoveCaseLinkMutationKey(id, entityType, entityId, params);\n const swrFn = getRemoveCaseLinkMutationFetcher(\n id,\n entityType,\n entityId,\n params,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateChatAgentBody,\n CreateChatAgentEnvelope,\n DeleteChatAgentEnvelope,\n ErrorResponse,\n GetChatAgentEnvelope,\n GetChatAgentPromptEnvelope,\n ListChatAgentsEnvelope,\n ListChatAgentsParams,\n UpdateChatAgentEnvelope,\n UpdateChatAgentPromptBody,\n UpdateChatAgentPromptEnvelope,\n UpdateChatAgentRequest,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateChatAgentUrl = () => {\n return `/v1/chat-agents`;\n};\n\n/**\n * Create a new chat agent with a name and prompt.\n * @summary Create chat agent\n */\nexport const createChatAgent = async (\n createChatAgentBody?: CreateChatAgentBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateChatAgentEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateChatAgentEnvelope>(getCreateChatAgentUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createChatAgentBody),\n });\n};\n\nexport const getCreateChatAgentMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateChatAgentBody | undefined }) => {\n return createChatAgent(arg, options);\n };\n};\nexport const getCreateChatAgentMutationKey = () => [`/v1/chat-agents`] as const;\n\nexport type CreateChatAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof createChatAgent>>\n>;\n\n/**\n * @summary Create chat agent\n */\nexport const useCreateChatAgent = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createChatAgent>>,\n TError,\n Key,\n CreateChatAgentBody | undefined,\n Awaited<ReturnType<typeof createChatAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateChatAgentMutationKey();\n const swrFn = getCreateChatAgentMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListChatAgentsUrl = (params?: ListChatAgentsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/chat-agents?${stringifiedParams}`\n : `/v1/chat-agents`;\n};\n\n/**\n * List the tenant's chat agents with pagination and sorting. Prompts are not returned.\n * @summary List chat agents\n */\nexport const listChatAgents = async (\n params?: ListChatAgentsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListChatAgentsEnvelope> => {\n return customFetch<ListChatAgentsEnvelope>(getListChatAgentsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListChatAgentsKey = (params?: ListChatAgentsParams) =>\n [`/v1/chat-agents`, ...(params ? [params] : [])] as const;\n\nexport type ListChatAgentsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listChatAgents>>\n>;\n\n/**\n * @summary List chat agents\n */\nexport const useListChatAgents = <TError = ErrorType<ErrorResponse>>(\n params?: ListChatAgentsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listChatAgents>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListChatAgentsKey(params) : null));\n const swrFn = () => listChatAgents(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetChatAgentUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}`;\n};\n\n/**\n * Retrieve a single chat agent by ID, including the IDs of its attached code tools. The prompt is not returned.\n * @summary Get chat agent\n */\nexport const getChatAgent = async (\n chatAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetChatAgentEnvelope> => {\n return customFetch<GetChatAgentEnvelope>(getGetChatAgentUrl(chatAgentId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetChatAgentKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}`] as const;\n\nexport type GetChatAgentQueryResult = NonNullable<\n Awaited<ReturnType<typeof getChatAgent>>\n>;\n\n/**\n * @summary Get chat agent\n */\nexport const useGetChatAgent = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getChatAgent>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n chatAgentId !== null &&\n chatAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetChatAgentKey(chatAgentId) : null));\n const swrFn = () => getChatAgent(chatAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateChatAgentUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}`;\n};\n\n/**\n * Patch a chat agent's settings. Today only the attached code tool set can be edited; future fields will be added under the same endpoint. The response returns the chat agent's metadata only and does not include the resulting tool list; the agent's `updated_at` is not bumped when only the tool set changes.\n * @summary Update chat agent\n */\nexport const updateChatAgent = async (\n chatAgentId: string,\n updateChatAgentRequest?: UpdateChatAgentRequest,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateChatAgentEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateChatAgentEnvelope>(\n getUpdateChatAgentUrl(chatAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateChatAgentRequest),\n }\n );\n};\n\nexport const getUpdateChatAgentMutationFetcher = (\n chatAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateChatAgentRequest | undefined }) => {\n return updateChatAgent(chatAgentId, arg, options);\n };\n};\nexport const getUpdateChatAgentMutationKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}`] as const;\n\nexport type UpdateChatAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateChatAgent>>\n>;\n\n/**\n * @summary Update chat agent\n */\nexport const useUpdateChatAgent = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateChatAgent>>,\n TError,\n Key,\n UpdateChatAgentRequest | undefined,\n Awaited<ReturnType<typeof updateChatAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateChatAgentMutationKey(chatAgentId);\n const swrFn = getUpdateChatAgentMutationFetcher(chatAgentId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteChatAgentUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}`;\n};\n\n/**\n * Soft-delete a chat agent. The agent no longer appears in any read and stops accepting new chats; existing chats and messages are preserved.\n * @summary Delete chat agent\n */\nexport const deleteChatAgent = async (\n chatAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteChatAgentEnvelope> => {\n return customFetch<DeleteChatAgentEnvelope>(\n getDeleteChatAgentUrl(chatAgentId),\n {\n ...options,\n method: \"DELETE\",\n }\n );\n};\n\nexport const getDeleteChatAgentMutationFetcher = (\n chatAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteChatAgent(chatAgentId, options);\n };\n};\nexport const getDeleteChatAgentMutationKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}`] as const;\n\nexport type DeleteChatAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteChatAgent>>\n>;\n\n/**\n * @summary Delete chat agent\n */\nexport const useDeleteChatAgent = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteChatAgent>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteChatAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getDeleteChatAgentMutationKey(chatAgentId);\n const swrFn = getDeleteChatAgentMutationFetcher(chatAgentId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetChatAgentPromptUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}/prompt`;\n};\n\n/**\n * Retrieve the prompt and greeting for a chat agent. Internal use only.\n * @summary Get chat agent prompt\n */\nexport const getChatAgentPrompt = async (\n chatAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetChatAgentPromptEnvelope> => {\n return customFetch<GetChatAgentPromptEnvelope>(\n getGetChatAgentPromptUrl(chatAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetChatAgentPromptKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}/prompt`] as const;\n\nexport type GetChatAgentPromptQueryResult = NonNullable<\n Awaited<ReturnType<typeof getChatAgentPrompt>>\n>;\n\n/**\n * @summary Get chat agent prompt\n */\nexport const useGetChatAgentPrompt = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getChatAgentPrompt>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n chatAgentId !== null &&\n chatAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetChatAgentPromptKey(chatAgentId) : null));\n const swrFn = () => getChatAgentPrompt(chatAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateChatAgentPromptUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}/prompt`;\n};\n\n/**\n * Update the prompt and/or greeting for a chat agent. Internal use only.\n * @summary Update chat agent prompt\n */\nexport const updateChatAgentPrompt = async (\n chatAgentId: string,\n updateChatAgentPromptBody?: UpdateChatAgentPromptBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateChatAgentPromptEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateChatAgentPromptEnvelope>(\n getUpdateChatAgentPromptUrl(chatAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateChatAgentPromptBody),\n }\n );\n};\n\nexport const getUpdateChatAgentPromptMutationFetcher = (\n chatAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateChatAgentPromptBody | undefined }) => {\n return updateChatAgentPrompt(chatAgentId, arg, options);\n };\n};\nexport const getUpdateChatAgentPromptMutationKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}/prompt`] as const;\n\nexport type UpdateChatAgentPromptMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateChatAgentPrompt>>\n>;\n\n/**\n * @summary Update chat agent prompt\n */\nexport const useUpdateChatAgentPrompt = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateChatAgentPrompt>>,\n TError,\n Key,\n UpdateChatAgentPromptBody | undefined,\n Awaited<ReturnType<typeof updateChatAgentPrompt>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateChatAgentPromptMutationKey(chatAgentId);\n const swrFn = getUpdateChatAgentPromptMutationFetcher(\n chatAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateChatBody,\n CreateChatEnvelope,\n ErrorResponse,\n GetChatEnvelope,\n GetPublicChatAgentEnvelope,\n ListChatMessagesEnvelope,\n ListChatMessagesParams,\n ListChatsEnvelope,\n ListChatsParams,\n PostChatMessageBody,\n PostChatMessageEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateChatUrl = () => {\n return `/public/v1/chats`;\n};\n\n/**\n * Create a new chat against an existing chat agent. The chat agent's tenant becomes the owner of the chat.\n * @summary Create a chat\n */\nexport const createChat = async (\n createChatBody?: CreateChatBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateChatEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateChatEnvelope>(getCreateChatUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createChatBody),\n });\n};\n\nexport const getCreateChatMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateChatBody | undefined }) => {\n return createChat(arg, options);\n };\n};\nexport const getCreateChatMutationKey = () => [`/public/v1/chats`] as const;\n\nexport type CreateChatMutationResult = NonNullable<\n Awaited<ReturnType<typeof createChat>>\n>;\n\n/**\n * @summary Create a chat\n */\nexport const useCreateChat = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createChat>>,\n TError,\n Key,\n CreateChatBody | undefined,\n Awaited<ReturnType<typeof createChat>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateChatMutationKey();\n const swrFn = getCreateChatMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetChatUrl = (chatId: string) => {\n return `/public/v1/chats/${chatId}`;\n};\n\n/**\n * Return a chat and its messages in chronological order. Used to re-render a transcript after a reload. Only `user` and `assistant` messages are included; tool calls and tool results are omitted. Each message's `content` is the concatenation of its text blocks separated by newlines.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /public/v1/chat`\n * @summary Get a chat\n */\nexport const getChat = async (\n chatId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetChatEnvelope> => {\n return customFetch<GetChatEnvelope>(getGetChatUrl(chatId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetChatKey = (chatId: string) =>\n [`/public/v1/chats/${chatId}`] as const;\n\nexport type GetChatQueryResult = NonNullable<\n Awaited<ReturnType<typeof getChat>>\n>;\n\n/**\n * @summary Get a chat\n */\nexport const useGetChat = <TError = ErrorType<ErrorResponse>>(\n chatId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getChat>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && chatId !== null && chatId !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetChatKey(chatId) : null));\n const swrFn = () => getChat(chatId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetPublicChatAgentUrl = (chatAgentId: string) => {\n return `/public/v1/chat-agents/${chatAgentId}`;\n};\n\n/**\n * Return the public-facing fields of a chat agent for use in the chat UI. Sensitive fields such as the agent's prompt and tenant ID are not exposed.\n * @summary Get a chat agent (public)\n */\nexport const getPublicChatAgent = async (\n chatAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetPublicChatAgentEnvelope> => {\n return customFetch<GetPublicChatAgentEnvelope>(\n getGetPublicChatAgentUrl(chatAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetPublicChatAgentKey = (chatAgentId: string) =>\n [`/public/v1/chat-agents/${chatAgentId}`] as const;\n\nexport type GetPublicChatAgentQueryResult = NonNullable<\n Awaited<ReturnType<typeof getPublicChatAgent>>\n>;\n\n/**\n * @summary Get a chat agent (public)\n */\nexport const useGetPublicChatAgent = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getPublicChatAgent>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n chatAgentId !== null &&\n chatAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetPublicChatAgentKey(chatAgentId) : null));\n const swrFn = () => getPublicChatAgent(chatAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPostChatMessageUrl = (chatId: string) => {\n return `/public/v1/chats/${chatId}/messages`;\n};\n\n/**\n * Post a user message to an existing chat and return the assistant reply. Both messages are persisted.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /public/v1/chat/messages`\n * @summary Post a message to a chat\n */\nexport const postChatMessage = async (\n chatId: string,\n postChatMessageBody?: PostChatMessageBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<PostChatMessageEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<PostChatMessageEnvelope>(getPostChatMessageUrl(chatId), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(postChatMessageBody),\n });\n};\n\nexport const getPostChatMessageMutationFetcher = (\n chatId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: PostChatMessageBody | undefined }) => {\n return postChatMessage(chatId, arg, options);\n };\n};\nexport const getPostChatMessageMutationKey = (chatId: string) =>\n [`/public/v1/chats/${chatId}/messages`] as const;\n\nexport type PostChatMessageMutationResult = NonNullable<\n Awaited<ReturnType<typeof postChatMessage>>\n>;\n\n/**\n * @summary Post a message to a chat\n */\nexport const usePostChatMessage = <TError = ErrorType<ErrorResponse>>(\n chatId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof postChatMessage>>,\n TError,\n Key,\n PostChatMessageBody | undefined,\n Awaited<ReturnType<typeof postChatMessage>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getPostChatMessageMutationKey(chatId);\n const swrFn = getPostChatMessageMutationFetcher(chatId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListChatsUrl = (params?: ListChatsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/chats?${stringifiedParams}`\n : `/v1/chats`;\n};\n\n/**\n * List the tenant's chats with pagination, sorting, and optional filtering by case. Returns chat metadata and message counts; messages are not included.\n * @summary List chats\n */\nexport const listChats = async (\n params?: ListChatsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListChatsEnvelope> => {\n return customFetch<ListChatsEnvelope>(getListChatsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListChatsKey = (params?: ListChatsParams) =>\n [`/v1/chats`, ...(params ? [params] : [])] as const;\n\nexport type ListChatsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listChats>>\n>;\n\n/**\n * @summary List chats\n */\nexport const useListChats = <TError = ErrorType<ErrorResponse>>(\n params?: ListChatsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listChats>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListChatsKey(params) : null));\n const swrFn = () => listChats(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListChatMessagesUrl = (\n chatId: string,\n params?: ListChatMessagesParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/chats/${chatId}/messages?${stringifiedParams}`\n : `/v1/chats/${chatId}/messages`;\n};\n\n/**\n * List messages for a chat owned by the tenant, in chronological order by default.\n * @summary List chat messages\n */\nexport const listChatMessages = async (\n chatId: string,\n params?: ListChatMessagesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListChatMessagesEnvelope> => {\n return customFetch<ListChatMessagesEnvelope>(\n getListChatMessagesUrl(chatId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListChatMessagesKey = (\n chatId: string,\n params?: ListChatMessagesParams\n) => [`/v1/chats/${chatId}/messages`, ...(params ? [params] : [])] as const;\n\nexport type ListChatMessagesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listChatMessages>>\n>;\n\n/**\n * @summary List chat messages\n */\nexport const useListChatMessages = <TError = ErrorType<ErrorResponse>>(\n chatId: string,\n params?: ListChatMessagesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listChatMessages>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && chatId !== null && chatId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListChatMessagesKey(chatId, params) : null));\n const swrFn = () => listChatMessages(chatId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n ListDispatchesEnvelope,\n ListDispatchesParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListDispatchesUrl = (params?: ListDispatchesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/dispatches?${stringifiedParams}`\n : `/v1/dispatches`;\n};\n\n/**\n * List the organization's dispatches, newest occurrence first.\n *\n * A dispatch is one occurrence of a trigger in one environment, carried out on its own: a schedule produces one per environment it runs in every time it fires, an inbound email produces one for the environment its inbox received it in, and a resolved information request produces one that restarts the worker that asked. Listing them shows what a trigger has actually done, including occurrences that never produced anything.\n *\n * - `pending` — not carried out yet: waiting to be picked up, in flight, or waiting on a retry after an earlier pickup did not complete.\n * - `dispatched` — carried out.\n * - `abandoned` — gave up, because the occurrence passed its `expires_at` deadline before it could be carried out.\n *\n * `attempts` counts how many times the occurrence has been picked up, not how many times it failed: a dispatch carried out on the first pickup ends at `attempts: 1`, and a higher count means earlier pickups did not complete.\n *\n * `target` is what the occurrence produced — a worker run, or an extractor job for an email whose inbox extracts. It is null until the dispatch is carried out, and stays null on one that was abandoned.\n *\n * Narrow to one trigger with `trigger_type` and `trigger_id` — the schedule's ID for a schedule, the email's ID for an email, the request's ID for an information request. `trigger_id` requires `trigger_type`.\n * @summary List dispatches\n */\nexport const listDispatches = async (\n params?: ListDispatchesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListDispatchesEnvelope> => {\n return customFetch<ListDispatchesEnvelope>(getListDispatchesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListDispatchesKey = (params?: ListDispatchesParams) =>\n [`/v1/dispatches`, ...(params ? [params] : [])] as const;\n\nexport type ListDispatchesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listDispatches>>\n>;\n\n/**\n * @summary List dispatches\n */\nexport const useListDispatches = <TError = ErrorType<ErrorResponse>>(\n params?: ListDispatchesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listDispatches>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListDispatchesKey(params) : null));\n const swrFn = () => listDispatches(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n DeleteEmailEnvelope,\n ErrorResponse,\n GetEmailEnvelope,\n ListEmailThreadsEnvelope,\n ListEmailThreadsParams,\n ListEmailsEnvelope,\n ListEmailsParams,\n ReplyToEmailBody,\n ReplyToEmailEnvelope,\n SendEmailBody,\n SendEmailEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getGetEmailUrl = (emailId: string) => {\n return `/v1/emails/${emailId}`;\n};\n\n/**\n * Retrieve detailed information about a specific email, including full body content.\n * @summary Get email\n */\nexport const getEmail = async (\n emailId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetEmailEnvelope> => {\n return customFetch<GetEmailEnvelope>(getGetEmailUrl(emailId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetEmailKey = (emailId: string) =>\n [`/v1/emails/${emailId}`] as const;\n\nexport type GetEmailQueryResult = NonNullable<\n Awaited<ReturnType<typeof getEmail>>\n>;\n\n/**\n * @summary Get email\n */\nexport const useGetEmail = <TError = ErrorType<ErrorResponse>>(\n emailId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getEmail>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && emailId !== null && emailId !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetEmailKey(emailId) : null));\n const swrFn = () => getEmail(emailId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteEmailUrl = (emailId: string) => {\n return `/v1/emails/${emailId}`;\n};\n\n/**\n * Soft-delete an email. The message is hidden from all reads (get, list, and thread aggregation) but its content is retained until a separate hard purge.\n * @summary Delete email\n */\nexport const deleteEmail = async (\n emailId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteEmailEnvelope> => {\n return customFetch<DeleteEmailEnvelope>(getDeleteEmailUrl(emailId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteEmailMutationFetcher = (\n emailId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteEmail(emailId, options);\n };\n};\nexport const getDeleteEmailMutationKey = (emailId: string) =>\n [`/v1/emails/${emailId}`] as const;\n\nexport type DeleteEmailMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteEmail>>\n>;\n\n/**\n * @summary Delete email\n */\nexport const useDeleteEmail = <TError = ErrorType<ErrorResponse>>(\n emailId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteEmail>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteEmail>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteEmailMutationKey(emailId);\n const swrFn = getDeleteEmailMutationFetcher(emailId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListEmailsUrl = (params?: ListEmailsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/emails?${stringifiedParams}`\n : `/v1/emails`;\n};\n\n/**\n * List all emails with pagination and filtering.\n *\n * **Filtering:**\n *\n * Filter by email agent, sender, recipient, content search, or case.\n * @summary List emails\n */\nexport const listEmails = async (\n params?: ListEmailsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListEmailsEnvelope> => {\n return customFetch<ListEmailsEnvelope>(getListEmailsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListEmailsKey = (params?: ListEmailsParams) =>\n [`/v1/emails`, ...(params ? [params] : [])] as const;\n\nexport type ListEmailsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listEmails>>\n>;\n\n/**\n * @summary List emails\n */\nexport const useListEmails = <TError = ErrorType<ErrorResponse>>(\n params?: ListEmailsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listEmails>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListEmailsKey(params) : null));\n const swrFn = () => listEmails(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListEmailThreadsUrl = (params?: ListEmailThreadsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/emails/threads?${stringifiedParams}`\n : `/v1/emails/threads`;\n};\n\n/**\n * List email threads with pagination. Each thread includes the subject of the first email, the sender of the first email, and the date of the last email.\n *\n * **Filtering:**\n *\n * Filter by inbox or environment. Without an `environment` filter, live and test threads are returned together.\n * @summary List email threads\n */\nexport const listEmailThreads = async (\n params?: ListEmailThreadsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListEmailThreadsEnvelope> => {\n return customFetch<ListEmailThreadsEnvelope>(getListEmailThreadsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListEmailThreadsKey = (params?: ListEmailThreadsParams) =>\n [`/v1/emails/threads`, ...(params ? [params] : [])] as const;\n\nexport type ListEmailThreadsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listEmailThreads>>\n>;\n\n/**\n * @summary List email threads\n */\nexport const useListEmailThreads = <TError = ErrorType<ErrorResponse>>(\n params?: ListEmailThreadsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listEmailThreads>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListEmailThreadsKey(params) : null));\n const swrFn = () => listEmailThreads(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getReplyToEmailUrl = (emailId: string) => {\n return `/v1/emails/${emailId}/reply`;\n};\n\n/**\n * Reply to an existing email thread via Nylas. The reply is sent to the original sender by default.\n *\n * Optionally include additional recipients via `to` (merged with the original sender), `cc`, and `bcc` arrays.\n *\n * The `body` is HTML by default. Set `is_html` to `false` to provide plain text instead; it is converted to HTML before sending.\n * @summary Reply to email\n */\nexport const replyToEmail = async (\n emailId: string,\n replyToEmailBody?: ReplyToEmailBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ReplyToEmailEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<ReplyToEmailEnvelope>(getReplyToEmailUrl(emailId), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(replyToEmailBody),\n });\n};\n\nexport const getReplyToEmailMutationFetcher = (\n emailId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: ReplyToEmailBody | undefined }) => {\n return replyToEmail(emailId, arg, options);\n };\n};\nexport const getReplyToEmailMutationKey = (emailId: string) =>\n [`/v1/emails/${emailId}/reply`] as const;\n\nexport type ReplyToEmailMutationResult = NonNullable<\n Awaited<ReturnType<typeof replyToEmail>>\n>;\n\n/**\n * @summary Reply to email\n */\nexport const useReplyToEmail = <TError = ErrorType<ErrorResponse>>(\n emailId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof replyToEmail>>,\n TError,\n Key,\n ReplyToEmailBody | undefined,\n Awaited<ReturnType<typeof replyToEmail>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getReplyToEmailMutationKey(emailId);\n const swrFn = getReplyToEmailMutationFetcher(emailId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getSendEmailUrl = () => {\n return `/v1/emails/send`;\n};\n\n/**\n * Send a new email through an inbox. The provider-assigned thread id is returned and persisted on the stored email row, so subsequent inbound replies on that thread are linked to this send.\n *\n * The `body` is HTML by default. Set `is_html` to `false` to provide plain text instead; it is converted to HTML before sending.\n * @summary Send email\n */\nexport const sendEmail = async (\n sendEmailBody?: SendEmailBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<SendEmailEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<SendEmailEnvelope>(getSendEmailUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(sendEmailBody),\n });\n};\n\nexport const getSendEmailMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: SendEmailBody | undefined }) => {\n return sendEmail(arg, options);\n };\n};\nexport const getSendEmailMutationKey = () => [`/v1/emails/send`] as const;\n\nexport type SendEmailMutationResult = NonNullable<\n Awaited<ReturnType<typeof sendEmail>>\n>;\n\n/**\n * @summary Send email\n */\nexport const useSendEmail = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof sendEmail>>,\n TError,\n Key,\n SendEmailBody | undefined,\n Awaited<ReturnType<typeof sendEmail>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getSendEmailMutationKey();\n const swrFn = getSendEmailMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateWorkerEvalFromRunBody,\n CreateWorkerEvalFromRunEnvelope,\n ErrorResponse,\n GetEvalRunEnvelope,\n RunEvalEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateWorkerEvalFromRunUrl = (workerRunId: string) => {\n return `/v1/worker-runs/${workerRunId}/evals`;\n};\n\n/**\n * Snapshot a worker run's trigger and resolved artifacts. Mock responses are returned in call order.\n * @summary Create a worker eval from a run\n */\nexport const createWorkerEvalFromRun = async (\n workerRunId: string,\n createWorkerEvalFromRunBody?: CreateWorkerEvalFromRunBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateWorkerEvalFromRunEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateWorkerEvalFromRunEnvelope>(\n getCreateWorkerEvalFromRunUrl(workerRunId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createWorkerEvalFromRunBody),\n }\n );\n};\n\nexport const getCreateWorkerEvalFromRunMutationFetcher = (\n workerRunId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: CreateWorkerEvalFromRunBody | undefined }\n ) => {\n return createWorkerEvalFromRun(workerRunId, arg, options);\n };\n};\nexport const getCreateWorkerEvalFromRunMutationKey = (workerRunId: string) =>\n [`/v1/worker-runs/${workerRunId}/evals`] as const;\n\nexport type CreateWorkerEvalFromRunMutationResult = NonNullable<\n Awaited<ReturnType<typeof createWorkerEvalFromRun>>\n>;\n\n/**\n * @summary Create a worker eval from a run\n */\nexport const useCreateWorkerEvalFromRun = <TError = ErrorType<ErrorResponse>>(\n workerRunId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createWorkerEvalFromRun>>,\n TError,\n Key,\n CreateWorkerEvalFromRunBody | undefined,\n Awaited<ReturnType<typeof createWorkerEvalFromRun>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateWorkerEvalFromRunMutationKey(workerRunId);\n const swrFn = getCreateWorkerEvalFromRunMutationFetcher(\n workerRunId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRunEvalUrl = (evalId: string) => {\n return `/v1/evals/${evalId}/runs`;\n};\n\n/**\n * Queue the worker's current test version against the eval's immutable artifact snapshot and mocked tools.\n * @summary Run an eval\n */\nexport const runEval = async (\n evalId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<RunEvalEnvelope> => {\n return customFetch<RunEvalEnvelope>(getRunEvalUrl(evalId), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getRunEvalMutationFetcher = (\n evalId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return runEval(evalId, options);\n };\n};\nexport const getRunEvalMutationKey = (evalId: string) =>\n [`/v1/evals/${evalId}/runs`] as const;\n\nexport type RunEvalMutationResult = NonNullable<\n Awaited<ReturnType<typeof runEval>>\n>;\n\n/**\n * @summary Run an eval\n */\nexport const useRunEval = <TError = ErrorType<ErrorResponse>>(\n evalId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof runEval>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof runEval>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRunEvalMutationKey(evalId);\n const swrFn = getRunEvalMutationFetcher(evalId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetEvalRunUrl = (evalRunId: string) => {\n return `/v1/eval-runs/${evalRunId}`;\n};\n\n/**\n * Get the status and prompt-grader result for an eval run.\n * @summary Get an eval run\n */\nexport const getEvalRun = async (\n evalRunId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetEvalRunEnvelope> => {\n return customFetch<GetEvalRunEnvelope>(getGetEvalRunUrl(evalRunId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetEvalRunKey = (evalRunId: string) =>\n [`/v1/eval-runs/${evalRunId}`] as const;\n\nexport type GetEvalRunQueryResult = NonNullable<\n Awaited<ReturnType<typeof getEvalRun>>\n>;\n\n/**\n * @summary Get an eval run\n */\nexport const useGetEvalRun = <TError = ErrorType<ErrorResponse>>(\n evalRunId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getEvalRun>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n evalRunId !== null &&\n evalRunId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetEvalRunKey(evalRunId) : null));\n const swrFn = () => getEvalRun(evalRunId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateExtractorJobBody,\n CreateExtractorJobEnvelope,\n ErrorResponse,\n GetExtractorJobEnvelope,\n ListExtractorJobsEnvelope,\n ListExtractorJobsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListExtractorJobsUrl = (params?: ListExtractorJobsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"scope\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/extractor-jobs?${stringifiedParams}`\n : `/v1/extractor-jobs`;\n};\n\n/**\n * List all extraction jobs with pagination, filtering, and sorting.\n *\n * **Scope Filtering:**\n *\n * Use bracket notation to filter by scope keys:\n * - `scope[call_id]=abc-123`\n * - `scope[email_id]=xyz-456`\n * - `scope[case_id]=case-789`\n *\n * Multiple scope filters can be combined (AND logic).\n * @summary List extractor jobs\n */\nexport const listExtractorJobs = async (\n params?: ListExtractorJobsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListExtractorJobsEnvelope> => {\n return customFetch<ListExtractorJobsEnvelope>(\n getListExtractorJobsUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListExtractorJobsKey = (params?: ListExtractorJobsParams) =>\n [`/v1/extractor-jobs`, ...(params ? [params] : [])] as const;\n\nexport type ListExtractorJobsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listExtractorJobs>>\n>;\n\n/**\n * @summary List extractor jobs\n */\nexport const useListExtractorJobs = <TError = ErrorType<ErrorResponse>>(\n params?: ListExtractorJobsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listExtractorJobs>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListExtractorJobsKey(params) : null));\n const swrFn = () => listExtractorJobs(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateExtractorJobUrl = () => {\n return `/v1/extractor-jobs`;\n};\n\n/**\n * Create a new extraction job for the specified extractor.\n *\n * Provide a non-empty `scope` object to define what the extractor should process (e.g. `{ \"claim_id\": \"abc-123\" }`).\n * @summary Create extractor job\n */\nexport const createExtractorJob = async (\n createExtractorJobBody?: CreateExtractorJobBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateExtractorJobEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateExtractorJobEnvelope>(getCreateExtractorJobUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createExtractorJobBody),\n });\n};\n\nexport const getCreateExtractorJobMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorJobBody | undefined }) => {\n return createExtractorJob(arg, options);\n };\n};\nexport const getCreateExtractorJobMutationKey = () =>\n [`/v1/extractor-jobs`] as const;\n\nexport type CreateExtractorJobMutationResult = NonNullable<\n Awaited<ReturnType<typeof createExtractorJob>>\n>;\n\n/**\n * @summary Create extractor job\n */\nexport const useCreateExtractorJob = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createExtractorJob>>,\n TError,\n Key,\n CreateExtractorJobBody | undefined,\n Awaited<ReturnType<typeof createExtractorJob>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateExtractorJobMutationKey();\n const swrFn = getCreateExtractorJobMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetExtractorJobUrl = (id: string) => {\n return `/v1/extractor-jobs/${id}`;\n};\n\n/**\n * Retrieve detailed information about a specific extractor job, including its status, timing, and result.\n * @summary Get extractor job\n */\nexport const getExtractorJob = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetExtractorJobEnvelope> => {\n return customFetch<GetExtractorJobEnvelope>(getGetExtractorJobUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetExtractorJobKey = (id: string) =>\n [`/v1/extractor-jobs/${id}`] as const;\n\nexport type GetExtractorJobQueryResult = NonNullable<\n Awaited<ReturnType<typeof getExtractorJob>>\n>;\n\n/**\n * @summary Get extractor job\n */\nexport const useGetExtractorJob = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getExtractorJob>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetExtractorJobKey(id) : null));\n const swrFn = () => getExtractorJob(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateExtractorBody,\n CreateExtractorEnvelope,\n DeleteExtractorEnvelope,\n ErrorResponse,\n GetExtractorEnvelope,\n ListExtractorsEnvelope,\n ListExtractorsParams,\n UpdateExtractorBody,\n UpdateExtractorEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateExtractorUrl = () => {\n return `/v1/extractors`;\n};\n\n/**\n * Create a new extractor with a name and JSON schema defining the extraction output format.\n * @summary Create extractor\n */\nexport const createExtractor = async (\n createExtractorBody?: CreateExtractorBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateExtractorEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateExtractorEnvelope>(getCreateExtractorUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createExtractorBody),\n });\n};\n\nexport const getCreateExtractorMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorBody | undefined }) => {\n return createExtractor(arg, options);\n };\n};\nexport const getCreateExtractorMutationKey = () => [`/v1/extractors`] as const;\n\nexport type CreateExtractorMutationResult = NonNullable<\n Awaited<ReturnType<typeof createExtractor>>\n>;\n\n/**\n * @summary Create extractor\n */\nexport const useCreateExtractor = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createExtractor>>,\n TError,\n Key,\n CreateExtractorBody | undefined,\n Awaited<ReturnType<typeof createExtractor>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateExtractorMutationKey();\n const swrFn = getCreateExtractorMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListExtractorsUrl = (params?: ListExtractorsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractors?${stringifiedParams}`\n : `/v1/extractors`;\n};\n\n/**\n * List all extractors with pagination, filtering, and sorting.\n *\n * Filter by name using the `name` query parameter.\n * @summary List extractors\n */\nexport const listExtractors = async (\n params?: ListExtractorsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListExtractorsEnvelope> => {\n return customFetch<ListExtractorsEnvelope>(getListExtractorsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListExtractorsKey = (params?: ListExtractorsParams) =>\n [`/v1/extractors`, ...(params ? [params] : [])] as const;\n\nexport type ListExtractorsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listExtractors>>\n>;\n\n/**\n * @summary List extractors\n */\nexport const useListExtractors = <TError = ErrorType<ErrorResponse>>(\n params?: ListExtractorsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listExtractors>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListExtractorsKey(params) : null));\n const swrFn = () => listExtractors(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\n/**\n * Retrieve a single extractor by ID, including its schema and version.\n * @summary Get extractor\n */\nexport const getExtractor = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetExtractorEnvelope> => {\n return customFetch<GetExtractorEnvelope>(getGetExtractorUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetExtractorKey = (id: string) =>\n [`/v1/extractors/${id}`] as const;\n\nexport type GetExtractorQueryResult = NonNullable<\n Awaited<ReturnType<typeof getExtractor>>\n>;\n\n/**\n * @summary Get extractor\n */\nexport const useGetExtractor = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getExtractor>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetExtractorKey(id) : null));\n const swrFn = () => getExtractor(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\n/**\n * Update an extractor's schema. This creates a new version of the extractor.\n * @summary Update extractor\n */\nexport const updateExtractor = async (\n id: string,\n updateExtractorBody?: UpdateExtractorBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateExtractorEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateExtractorEnvelope>(getUpdateExtractorUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateExtractorBody),\n });\n};\n\nexport const getUpdateExtractorMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateExtractorBody | undefined }) => {\n return updateExtractor(id, arg, options);\n };\n};\nexport const getUpdateExtractorMutationKey = (id: string) =>\n [`/v1/extractors/${id}`] as const;\n\nexport type UpdateExtractorMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateExtractor>>\n>;\n\n/**\n * @summary Update extractor\n */\nexport const useUpdateExtractor = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateExtractor>>,\n TError,\n Key,\n UpdateExtractorBody | undefined,\n Awaited<ReturnType<typeof updateExtractor>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateExtractorMutationKey(id);\n const swrFn = getUpdateExtractorMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\n/**\n * Soft-delete an extractor and all of its versions. Soft-deleted extractors no longer appear in any read.\n * @summary Delete extractor\n */\nexport const deleteExtractor = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteExtractorEnvelope> => {\n return customFetch<DeleteExtractorEnvelope>(getDeleteExtractorUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteExtractorMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteExtractor(id, options);\n };\n};\nexport const getDeleteExtractorMutationKey = (id: string) =>\n [`/v1/extractors/${id}`] as const;\n\nexport type DeleteExtractorMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteExtractor>>\n>;\n\n/**\n * @summary Delete extractor\n */\nexport const useDeleteExtractor = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteExtractor>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteExtractor>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteExtractorMutationKey(id);\n const swrFn = getDeleteExtractorMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n GetExtractCitationsEnvelope,\n GetExtractEnvelope,\n ListExtractsEnvelope,\n ListExtractsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getGetExtractUrl = (id: string) => {\n return `/v1/extracts/${id}`;\n};\n\n/**\n * Retrieve a single extract by ID, including the extraction result data.\n * @summary Get extract\n */\nexport const getExtract = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetExtractEnvelope> => {\n return customFetch<GetExtractEnvelope>(getGetExtractUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetExtractKey = (id: string) => [`/v1/extracts/${id}`] as const;\n\nexport type GetExtractQueryResult = NonNullable<\n Awaited<ReturnType<typeof getExtract>>\n>;\n\n/**\n * @summary Get extract\n */\nexport const useGetExtract = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getExtract>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetExtractKey(id) : null));\n const swrFn = () => getExtract(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetExtractCitationsUrl = (id: string) => {\n return `/v1/extracts/${id}/citations`;\n};\n\n/**\n * Retrieve the citation tree with resolved chunk data for a given extract. Returns 404 if the extract does not exist or has no citations (the citations sub-resource is not available).\n * @summary Get extract citations\n */\nexport const getExtractCitations = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetExtractCitationsEnvelope> => {\n return customFetch<GetExtractCitationsEnvelope>(\n getGetExtractCitationsUrl(id),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetExtractCitationsKey = (id: string) =>\n [`/v1/extracts/${id}/citations`] as const;\n\nexport type GetExtractCitationsQueryResult = NonNullable<\n Awaited<ReturnType<typeof getExtractCitations>>\n>;\n\n/**\n * @summary Get extract citations\n */\nexport const useGetExtractCitations = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getExtractCitations>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetExtractCitationsKey(id) : null));\n const swrFn = () => getExtractCitations(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListExtractsUrl = (params?: ListExtractsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"scope\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/extracts?${stringifiedParams}`\n : `/v1/extracts`;\n};\n\n/**\n * List all extracts with pagination, filtering, and sorting.\n *\n * **Scope Filtering:**\n *\n * Use bracket notation to filter by scope keys:\n * - `scope[claim_id]=abc-123`\n *\n * Multiple scope filters can be combined (AND logic).\n * @summary List extracts\n */\nexport const listExtracts = async (\n params?: ListExtractsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListExtractsEnvelope> => {\n return customFetch<ListExtractsEnvelope>(getListExtractsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListExtractsKey = (params?: ListExtractsParams) =>\n [`/v1/extracts`, ...(params ? [params] : [])] as const;\n\nexport type ListExtractsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listExtracts>>\n>;\n\n/**\n * @summary List extracts\n */\nexport const useListExtracts = <TError = ErrorType<ErrorResponse>>(\n params?: ListExtractsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listExtracts>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListExtractsKey(params) : null));\n const swrFn = () => listExtracts(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CheckInboxAvailabilityEnvelope,\n CheckInboxAvailabilityParams,\n CreateInboxBody,\n CreateInboxEnvelope,\n DeleteInboxEnvelope,\n ErrorResponse,\n ListInboxesEnvelope,\n ListInboxesParams,\n UpdateInboxBody,\n UpdateInboxEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCheckInboxAvailabilityUrl = (\n params: CheckInboxAvailabilityParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/inboxes/availability?${stringifiedParams}`\n : `/v1/inboxes/availability`;\n};\n\n/**\n * Check whether a given email username is available for creating a new inbox.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/email-agents/availability`\n * @summary Check email username availability\n */\nexport const checkInboxAvailability = async (\n params: CheckInboxAvailabilityParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CheckInboxAvailabilityEnvelope> => {\n return customFetch<CheckInboxAvailabilityEnvelope>(\n getCheckInboxAvailabilityUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getCheckInboxAvailabilityKey = (\n params: CheckInboxAvailabilityParams\n) => [`/v1/inboxes/availability`, ...(params ? [params] : [])] as const;\n\nexport type CheckInboxAvailabilityQueryResult = NonNullable<\n Awaited<ReturnType<typeof checkInboxAvailability>>\n>;\n\n/**\n * @summary Check email username availability\n */\nexport const useCheckInboxAvailability = <TError = ErrorType<ErrorResponse>>(\n params: CheckInboxAvailabilityParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof checkInboxAvailability>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getCheckInboxAvailabilityKey(params) : null));\n const swrFn = () => checkInboxAvailability(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateInboxUrl = () => {\n return `/v1/inboxes`;\n};\n\n/**\n * Create a new inbox linked to a processor (extractor or worker).\n *\n * The inbox will receive emails at the assigned address and automatically process attachments using the specified processor.\n *\n * Either `processor_id` or the deprecated `extractor_id` must be provided. When using `extractor_id`, the processor type defaults to `extractor`.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/email-agents`\n * @summary Create inbox\n */\nexport const createInbox = async (\n createInboxBody?: CreateInboxBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateInboxEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateInboxEnvelope>(getCreateInboxUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createInboxBody),\n });\n};\n\nexport const getCreateInboxMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateInboxBody | undefined }) => {\n return createInbox(arg, options);\n };\n};\nexport const getCreateInboxMutationKey = () => [`/v1/inboxes`] as const;\n\nexport type CreateInboxMutationResult = NonNullable<\n Awaited<ReturnType<typeof createInbox>>\n>;\n\n/**\n * @summary Create inbox\n */\nexport const useCreateInbox = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createInbox>>,\n TError,\n Key,\n CreateInboxBody | undefined,\n Awaited<ReturnType<typeof createInbox>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateInboxMutationKey();\n const swrFn = getCreateInboxMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListInboxesUrl = (params?: ListInboxesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/inboxes?${stringifiedParams}`\n : `/v1/inboxes`;\n};\n\n/**\n * List all inboxes with pagination and sorting.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/email-agents`\n * @summary List inboxes\n */\nexport const listInboxes = async (\n params?: ListInboxesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListInboxesEnvelope> => {\n return customFetch<ListInboxesEnvelope>(getListInboxesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListInboxesKey = (params?: ListInboxesParams) =>\n [`/v1/inboxes`, ...(params ? [params] : [])] as const;\n\nexport type ListInboxesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listInboxes>>\n>;\n\n/**\n * @summary List inboxes\n */\nexport const useListInboxes = <TError = ErrorType<ErrorResponse>>(\n params?: ListInboxesParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listInboxes>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListInboxesKey(params) : null));\n const swrFn = () => listInboxes(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateInboxUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}`;\n};\n\n/**\n * Update an inbox's configuration.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `PATCH /v1/email-agents/{id}`\n * @summary Update inbox\n */\nexport const updateInbox = async (\n inboxId: string,\n updateInboxBody?: UpdateInboxBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateInboxEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateInboxEnvelope>(getUpdateInboxUrl(inboxId), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateInboxBody),\n });\n};\n\nexport const getUpdateInboxMutationFetcher = (\n inboxId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateInboxBody | undefined }) => {\n return updateInbox(inboxId, arg, options);\n };\n};\nexport const getUpdateInboxMutationKey = (inboxId: string) =>\n [`/v1/inboxes/${inboxId}`] as const;\n\nexport type UpdateInboxMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateInbox>>\n>;\n\n/**\n * @summary Update inbox\n */\nexport const useUpdateInbox = <TError = ErrorType<ErrorResponse>>(\n inboxId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateInbox>>,\n TError,\n Key,\n UpdateInboxBody | undefined,\n Awaited<ReturnType<typeof updateInbox>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateInboxMutationKey(inboxId);\n const swrFn = getUpdateInboxMutationFetcher(inboxId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteInboxUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}`;\n};\n\n/**\n * Delete an inbox. The inbox stops routing new mail; existing email history is preserved.\n * @summary Delete inbox\n */\nexport const deleteInbox = async (\n inboxId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteInboxEnvelope> => {\n return customFetch<DeleteInboxEnvelope>(getDeleteInboxUrl(inboxId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteInboxMutationFetcher = (\n inboxId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteInbox(inboxId, options);\n };\n};\nexport const getDeleteInboxMutationKey = (inboxId: string) =>\n [`/v1/inboxes/${inboxId}`] as const;\n\nexport type DeleteInboxMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteInbox>>\n>;\n\n/**\n * @summary Delete inbox\n */\nexport const useDeleteInbox = <TError = ErrorType<ErrorResponse>>(\n inboxId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteInbox>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteInbox>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteInboxMutationKey(inboxId);\n const swrFn = getDeleteInboxMutationFetcher(inboxId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateInformationRequestBody,\n CreateInformationRequestEnvelope,\n ErrorResponse,\n GetInformationRequestEnvelope,\n ListInformationRequestsEnvelope,\n ListInformationRequestsParams,\n ResolveInformationRequestBody,\n ResolveInformationRequestEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateInformationRequestUrl = () => {\n return `/v1/information-requests`;\n};\n\n/**\n * Ask a person for a specific fact you cannot establish yourself.\n *\n * Use this when one missing piece of information is blocking you and only a human can supply it — which claim a document belongs to, which of two policies applies, what an ambiguous reference means. Ask one answerable question per request, and write it so it stands on its own: whoever resolves it sees your title and your question and nothing else.\n *\n * Immediately link the request to its case with `addCaseLinks` and `entity_type: \"information_request\"`. That is how it reaches the person working that case; unlinked, it sits in a queue nobody is looking at. Leave it unlinked only when you genuinely cannot tell which case it belongs to.\n *\n * **This does not block or suspend you.** Nobody resolves it while this run is happening. Carry on with what you can still do, or stop, and say in your final report that you asked.\n *\n * Do not use it for progress updates, or for anything you can work out yourself.\n * @summary Ask for information\n */\nexport const createInformationRequest = async (\n createInformationRequestBody?: CreateInformationRequestBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateInformationRequestEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateInformationRequestEnvelope>(\n getCreateInformationRequestUrl(),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createInformationRequestBody),\n }\n );\n};\n\nexport const getCreateInformationRequestMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: CreateInformationRequestBody | undefined }\n ) => {\n return createInformationRequest(arg, options);\n };\n};\nexport const getCreateInformationRequestMutationKey = () =>\n [`/v1/information-requests`] as const;\n\nexport type CreateInformationRequestMutationResult = NonNullable<\n Awaited<ReturnType<typeof createInformationRequest>>\n>;\n\n/**\n * @summary Ask for information\n */\nexport const useCreateInformationRequest = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createInformationRequest>>,\n TError,\n Key,\n CreateInformationRequestBody | undefined,\n Awaited<ReturnType<typeof createInformationRequest>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateInformationRequestMutationKey();\n const swrFn = getCreateInformationRequestMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListInformationRequestsUrl = (\n params?: ListInformationRequestsParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/information-requests?${stringifiedParams}`\n : `/v1/information-requests`;\n};\n\n/**\n * List the organization's information requests, newest first.\n *\n * An information request is a specific question a worker could not settle on its own and needs a person to resolve. It stays open until somebody resolves it; there is no separate status field.\n * @summary List information requests\n */\nexport const listInformationRequests = async (\n params?: ListInformationRequestsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListInformationRequestsEnvelope> => {\n return customFetch<ListInformationRequestsEnvelope>(\n getListInformationRequestsUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListInformationRequestsKey = (\n params?: ListInformationRequestsParams\n) => [`/v1/information-requests`, ...(params ? [params] : [])] as const;\n\nexport type ListInformationRequestsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listInformationRequests>>\n>;\n\n/**\n * @summary List information requests\n */\nexport const useListInformationRequests = <TError = ErrorType<ErrorResponse>>(\n params?: ListInformationRequestsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listInformationRequests>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListInformationRequestsKey(params) : null));\n const swrFn = () => listInformationRequests(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetInformationRequestUrl = (informationRequestId: string) => {\n return `/v1/information-requests/${informationRequestId}`;\n};\n\n/**\n * Retrieve a single information request by its ID.\n * @summary Get information request\n */\nexport const getInformationRequest = async (\n informationRequestId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetInformationRequestEnvelope> => {\n return customFetch<GetInformationRequestEnvelope>(\n getGetInformationRequestUrl(informationRequestId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetInformationRequestKey = (informationRequestId: string) =>\n [`/v1/information-requests/${informationRequestId}`] as const;\n\nexport type GetInformationRequestQueryResult = NonNullable<\n Awaited<ReturnType<typeof getInformationRequest>>\n>;\n\n/**\n * @summary Get information request\n */\nexport const useGetInformationRequest = <TError = ErrorType<ErrorResponse>>(\n informationRequestId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getInformationRequest>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n informationRequestId !== null &&\n informationRequestId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getGetInformationRequestKey(informationRequestId) : null);\n const swrFn = () =>\n getInformationRequest(informationRequestId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getResolveInformationRequestUrl = (\n informationRequestId: string\n) => {\n return `/v1/information-requests/${informationRequestId}/resolve`;\n};\n\n/**\n * Resolve an open information request by providing an answer/resolution.\n * @summary Resolve information request\n */\nexport const resolveInformationRequest = async (\n informationRequestId: string,\n resolveInformationRequestBody?: ResolveInformationRequestBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ResolveInformationRequestEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<ResolveInformationRequestEnvelope>(\n getResolveInformationRequestUrl(informationRequestId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(resolveInformationRequestBody),\n }\n );\n};\n\nexport const getResolveInformationRequestMutationFetcher = (\n informationRequestId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: ResolveInformationRequestBody | undefined }\n ) => {\n return resolveInformationRequest(informationRequestId, arg, options);\n };\n};\nexport const getResolveInformationRequestMutationKey = (\n informationRequestId: string\n) => [`/v1/information-requests/${informationRequestId}/resolve`] as const;\n\nexport type ResolveInformationRequestMutationResult = NonNullable<\n Awaited<ReturnType<typeof resolveInformationRequest>>\n>;\n\n/**\n * @summary Resolve information request\n */\nexport const useResolveInformationRequest = <TError = ErrorType<ErrorResponse>>(\n informationRequestId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof resolveInformationRequest>>,\n TError,\n Key,\n ResolveInformationRequestBody | undefined,\n Awaited<ReturnType<typeof resolveInformationRequest>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ??\n getResolveInformationRequestMutationKey(informationRequestId);\n const swrFn = getResolveInformationRequestMutationFetcher(\n informationRequestId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CancelJobEnvelope,\n ErrorResponse,\n ListJobsEnvelope,\n ListJobsParams,\n ScheduleJobBody,\n ScheduleJobEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getScheduleJobUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/jobs`;\n};\n\n/**\n * Schedule a new outbound call job for a voice agent.\n *\n * The job can be scheduled for a future time or triggered immediately with `trigger_immediately: true`.\n *\n * **Scheduling:**\n *\n * When scheduling for a future time, provide `scheduled_at` (ISO 8601) and optionally `schedule_window_minutes` (minimum 10 minutes).\n *\n * **Environment:**\n *\n * `environment` selects which promoted agent configuration and phone binding the call dispatches against (`live` or `test`). Defaults to `live`. Scheduling fails when the selected environment has no active promotion.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/agents/{id}/jobs`\n * @summary Schedule an outbound job\n */\nexport const scheduleJob = async (\n voiceAgentId: string,\n scheduleJobBody?: ScheduleJobBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ScheduleJobEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<ScheduleJobEnvelope>(getScheduleJobUrl(voiceAgentId), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(scheduleJobBody),\n });\n};\n\nexport const getScheduleJobMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: ScheduleJobBody | undefined }) => {\n return scheduleJob(voiceAgentId, arg, options);\n };\n};\nexport const getScheduleJobMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/jobs`] as const;\n\nexport type ScheduleJobMutationResult = NonNullable<\n Awaited<ReturnType<typeof scheduleJob>>\n>;\n\n/**\n * @summary Schedule an outbound job\n */\nexport const useScheduleJob = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof scheduleJob>>,\n TError,\n Key,\n ScheduleJobBody | undefined,\n Awaited<ReturnType<typeof scheduleJob>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getScheduleJobMutationKey(voiceAgentId);\n const swrFn = getScheduleJobMutationFetcher(voiceAgentId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListJobsUrl = (params: ListJobsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const explodeParameters = [\"status\"];\n\n if (Array.isArray(value) && explodeParameters.includes(key)) {\n value.forEach((v) => {\n normalizedParams.append(key, v === null ? \"null\" : String(v));\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents/jobs?${stringifiedParams}`\n : `/v1/voice-agents/jobs`;\n};\n\n/**\n * List all outbound jobs with pagination and filtering.\n *\n * **Filtering:**\n *\n * - Filter by agent ID, status, or scheduled time range.\n * - Multiple statuses can be comma-separated (e.g. `status=pending,queued`).\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents/jobs`\n * @summary List outbound jobs\n */\nexport const listJobs = async (\n params: ListJobsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListJobsEnvelope> => {\n return customFetch<ListJobsEnvelope>(getListJobsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListJobsKey = (params: ListJobsParams) =>\n [`/v1/voice-agents/jobs`, ...(params ? [params] : [])] as const;\n\nexport type ListJobsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listJobs>>\n>;\n\n/**\n * @summary List outbound jobs\n */\nexport const useListJobs = <TError = ErrorType<ErrorResponse>>(\n params: ListJobsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listJobs>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListJobsKey(params) : null));\n const swrFn = () => listJobs(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCancelJobUrl = (jobId: string) => {\n return `/v1/voice-agents/jobs/${jobId}/cancel`;\n};\n\n/**\n * Cancel a pending or queued outbound job. Jobs that are already in progress or completed cannot be canceled.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/agents/jobs/{id}/cancel`\n * @summary Cancel an outbound job\n */\nexport const cancelJob = async (\n jobId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CancelJobEnvelope> => {\n return customFetch<CancelJobEnvelope>(getCancelJobUrl(jobId), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getCancelJobMutationFetcher = (\n jobId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return cancelJob(jobId, options);\n };\n};\nexport const getCancelJobMutationKey = (jobId: string) =>\n [`/v1/voice-agents/jobs/${jobId}/cancel`] as const;\n\nexport type CancelJobMutationResult = NonNullable<\n Awaited<ReturnType<typeof cancelJob>>\n>;\n\n/**\n * @summary Cancel an outbound job\n */\nexport const useCancelJob = <TError = ErrorType<ErrorResponse>>(\n jobId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof cancelJob>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof cancelJob>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCancelJobMutationKey(jobId);\n const swrFn = getCancelJobMutationFetcher(jobId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n GetNotificationEnvelope,\n ListNotificationsEnvelope,\n ListNotificationsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListNotificationsUrl = (params?: ListNotificationsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/notifications?${stringifiedParams}`\n : `/v1/notifications`;\n};\n\n/**\n * List the organization's notifications, newest first.\n *\n * A notification is a durable record that something happened and that somebody should know about it. Notifications are not yet addressed to individual people, so everyone in the organization sees the same feed.\n *\n * `title` and `body` are the display text — render them as-is rather than deriving your own wording from `type`, so every surface says the same thing. `data` carries the identifiers the notification points at, so a client can link to the thing it is about; which keys are present depends on `type`.\n *\n * `worker_issue_reported` means a worker hit a problem during a run and reported it; its `body` is the worker's own message and its `data` is the reporting `worker_id` and `run_id`. `information_request_created` means a worker paused to ask a person a question; its `data` is the `request_id` to answer through `POST /v1/information-requests/{informationRequestId}/resolve`.\n * @summary List notifications\n */\nexport const listNotifications = async (\n params?: ListNotificationsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListNotificationsEnvelope> => {\n return customFetch<ListNotificationsEnvelope>(\n getListNotificationsUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListNotificationsKey = (params?: ListNotificationsParams) =>\n [`/v1/notifications`, ...(params ? [params] : [])] as const;\n\nexport type ListNotificationsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listNotifications>>\n>;\n\n/**\n * @summary List notifications\n */\nexport const useListNotifications = <TError = ErrorType<ErrorResponse>>(\n params?: ListNotificationsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listNotifications>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListNotificationsKey(params) : null));\n const swrFn = () => listNotifications(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetNotificationUrl = (notificationId: string) => {\n return `/v1/notifications/${notificationId}`;\n};\n\n/**\n * Retrieve a single notification by its ID, the id a `notification.created` webhook delivery carries.\n *\n * `title` and `body` are the display text — render them as-is rather than deriving your own wording from `type`, so every surface says the same thing. `data` carries the identifiers the notification points at, so a client can link to the thing it is about; which keys are present depends on `type`.\n *\n * `worker_issue_reported` means a worker hit a problem during a run and reported it; its `body` is the worker's own message and its `data` is the reporting `worker_id` and `run_id`. `information_request_created` means a worker paused to ask a person a question; its `data` is the `request_id` to answer through `POST /v1/information-requests/{informationRequestId}/resolve`.\n * @summary Get notification\n */\nexport const getNotification = async (\n notificationId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetNotificationEnvelope> => {\n return customFetch<GetNotificationEnvelope>(\n getGetNotificationUrl(notificationId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetNotificationKey = (notificationId: string) =>\n [`/v1/notifications/${notificationId}`] as const;\n\nexport type GetNotificationQueryResult = NonNullable<\n Awaited<ReturnType<typeof getNotification>>\n>;\n\n/**\n * @summary Get notification\n */\nexport const useGetNotification = <TError = ErrorType<ErrorResponse>>(\n notificationId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getNotification>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n notificationId !== null &&\n notificationId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetNotificationKey(notificationId) : null));\n const swrFn = () => getNotification(notificationId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type { ErrorResponse, GetProfileEnvelope } from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getGetProfileUrl = () => {\n return `/v1/profile`;\n};\n\n/**\n * Retrieve the current user's profile information. This endpoint requires a user session and cannot be used with API Keys.\n * @summary Get profile\n */\nexport const getProfile = async (\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetProfileEnvelope> => {\n return customFetch<GetProfileEnvelope>(getGetProfileUrl(), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetProfileKey = () => [`/v1/profile`] as const;\n\nexport type GetProfileQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProfile>>\n>;\n\n/**\n * @summary Get profile\n */\nexport const useGetProfile = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getProfile>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetProfileKey() : null));\n const swrFn = () => getProfile(requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateScheduleBody,\n CreateScheduleEnvelope,\n DeleteScheduleEnvelope,\n ErrorResponse,\n GetScheduleEnvelope,\n ListSchedulesEnvelope,\n ListSchedulesParams,\n UpdateScheduleBody,\n UpdateScheduleEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateScheduleUrl = () => {\n return `/v1/schedules`;\n};\n\n/**\n * Create a schedule that performs an action, either repeatedly or once.\n *\n * `action` describes **what** happens — today only `trigger_worker`, which starts a worker run with the given scope. `rule` describes **when**: `recurring` carries one or more `patterns`, and fires whenever any of them comes round. A pattern fires every hour at `minute`, narrowed by `hours` and `weekdays` — so `hours: [9]` is daily at 09:00, `hours: [12], weekdays: [1]` is Mondays at noon, and `hours: [9, 13, 17], weekdays: [1, 2, 3, 4, 5]` is three times a day on weekdays. Give a second pattern to mix cadences: hourly on weekdays plus 09:00, 11:00 and 18:00 at weekends is two patterns on one schedule. Patterns overlap harmlessly — two that land on the same minute fire once. Every set is read in the schedule's own time zone — an IANA identifier such as `America/Chicago`, resolved across DST transitions. `once` fires a single time at a UTC instant.\n *\n * `environments` says **which worker version** each occurrence runs: `live` resolves the worker at its live version, `test` at its test version. Give both to soak a candidate version on the same cadence and scope as production — every occurrence then fires twice, producing one run per environment. Omit it to fire in `live` only.\n *\n * The response's `next_run_at` is the first occurrence strictly after the moment of creation; a rule that resolves to no such occurrence is rejected. Create with `enabled: false` to stage a recurring schedule without letting it fire. A one-off is always enabled: delete it to cancel it, and its `next_run_at` becomes null once it has fired.\n *\n * Requires the `schedules:write` permission.\n * @summary Create a schedule\n */\nexport const createSchedule = async (\n createScheduleBody?: CreateScheduleBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateScheduleEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateScheduleEnvelope>(getCreateScheduleUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createScheduleBody),\n });\n};\n\nexport const getCreateScheduleMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateScheduleBody | undefined }) => {\n return createSchedule(arg, options);\n };\n};\nexport const getCreateScheduleMutationKey = () => [`/v1/schedules`] as const;\n\nexport type CreateScheduleMutationResult = NonNullable<\n Awaited<ReturnType<typeof createSchedule>>\n>;\n\n/**\n * @summary Create a schedule\n */\nexport const useCreateSchedule = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createSchedule>>,\n TError,\n Key,\n CreateScheduleBody | undefined,\n Awaited<ReturnType<typeof createSchedule>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateScheduleMutationKey();\n const swrFn = getCreateScheduleMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListSchedulesUrl = (params?: ListSchedulesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/schedules?${stringifiedParams}`\n : `/v1/schedules`;\n};\n\n/**\n * List the organization's schedules. Requires the `schedules:read` permission.\n * @summary List schedules\n */\nexport const listSchedules = async (\n params?: ListSchedulesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListSchedulesEnvelope> => {\n return customFetch<ListSchedulesEnvelope>(getListSchedulesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListSchedulesKey = (params?: ListSchedulesParams) =>\n [`/v1/schedules`, ...(params ? [params] : [])] as const;\n\nexport type ListSchedulesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listSchedules>>\n>;\n\n/**\n * @summary List schedules\n */\nexport const useListSchedules = <TError = ErrorType<ErrorResponse>>(\n params?: ListSchedulesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listSchedules>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListSchedulesKey(params) : null));\n const swrFn = () => listSchedules(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetScheduleUrl = (scheduleId: string) => {\n return `/v1/schedules/${scheduleId}`;\n};\n\n/**\n * Retrieve a single schedule. Requires the `schedules:read` permission.\n * @summary Get a schedule\n */\nexport const getSchedule = async (\n scheduleId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetScheduleEnvelope> => {\n return customFetch<GetScheduleEnvelope>(getGetScheduleUrl(scheduleId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetScheduleKey = (scheduleId: string) =>\n [`/v1/schedules/${scheduleId}`] as const;\n\nexport type GetScheduleQueryResult = NonNullable<\n Awaited<ReturnType<typeof getSchedule>>\n>;\n\n/**\n * @summary Get a schedule\n */\nexport const useGetSchedule = <TError = ErrorType<ErrorResponse>>(\n scheduleId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getSchedule>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n scheduleId !== null &&\n scheduleId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetScheduleKey(scheduleId) : null));\n const swrFn = () => getSchedule(scheduleId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateScheduleUrl = (scheduleId: string) => {\n return `/v1/schedules/${scheduleId}`;\n};\n\n/**\n * Update a schedule's rule, environments, name, or enabled state.\n *\n * Changing the rule moves `next_run_at` to the first occurrence after the update; a rule that resolves to no such occurrence is rejected. One-off schedules are always enabled — delete one to cancel it before it fires.\n *\n * `environments` replaces the whole list rather than adding to it. It takes effect from the next occurrence: one already due keeps the environments it was created with.\n * @summary Update a schedule\n */\nexport const updateSchedule = async (\n scheduleId: string,\n updateScheduleBody?: UpdateScheduleBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateScheduleEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateScheduleEnvelope>(getUpdateScheduleUrl(scheduleId), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateScheduleBody),\n });\n};\n\nexport const getUpdateScheduleMutationFetcher = (\n scheduleId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateScheduleBody | undefined }) => {\n return updateSchedule(scheduleId, arg, options);\n };\n};\nexport const getUpdateScheduleMutationKey = (scheduleId: string) =>\n [`/v1/schedules/${scheduleId}`] as const;\n\nexport type UpdateScheduleMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateSchedule>>\n>;\n\n/**\n * @summary Update a schedule\n */\nexport const useUpdateSchedule = <TError = ErrorType<ErrorResponse>>(\n scheduleId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateSchedule>>,\n TError,\n Key,\n UpdateScheduleBody | undefined,\n Awaited<ReturnType<typeof updateSchedule>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateScheduleMutationKey(scheduleId);\n const swrFn = getUpdateScheduleMutationFetcher(scheduleId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteScheduleUrl = (scheduleId: string) => {\n return `/v1/schedules/${scheduleId}`;\n};\n\n/**\n * Delete a schedule so it stops firing.\n * @summary Delete a schedule\n */\nexport const deleteSchedule = async (\n scheduleId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteScheduleEnvelope> => {\n return customFetch<DeleteScheduleEnvelope>(getDeleteScheduleUrl(scheduleId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteScheduleMutationFetcher = (\n scheduleId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteSchedule(scheduleId, options);\n };\n};\nexport const getDeleteScheduleMutationKey = (scheduleId: string) =>\n [`/v1/schedules/${scheduleId}`] as const;\n\nexport type DeleteScheduleMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteSchedule>>\n>;\n\n/**\n * @summary Delete a schedule\n */\nexport const useDeleteSchedule = <TError = ErrorType<ErrorResponse>>(\n scheduleId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteSchedule>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteSchedule>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteScheduleMutationKey(scheduleId);\n const swrFn = getDeleteScheduleMutationFetcher(scheduleId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateSecretBody,\n CreateSecretEnvelope,\n DeleteSecretEnvelope,\n ErrorResponse,\n GetSecretEnvelope,\n ListSecretsEnvelope,\n ListSecretsParams,\n UpdateSecretBody,\n UpdateSecretEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateSecretUrl = () => {\n return `/v1/secrets`;\n};\n\n/**\n * Create an organization-level secret. The value is encrypted at rest and **write-only** — no endpoint ever returns it.\n *\n * Requires the `secrets:write` permission. Env keys used by the worker runtime itself (e.g. `OPENAI_API_KEY`, `AVALLON_*`, `AWS_*`) are reserved and rejected.\n * @summary Create a secret\n */\nexport const createSecret = async (\n createSecretBody?: CreateSecretBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateSecretEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateSecretEnvelope>(getCreateSecretUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createSecretBody),\n });\n};\n\nexport const getCreateSecretMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateSecretBody | undefined }) => {\n return createSecret(arg, options);\n };\n};\nexport const getCreateSecretMutationKey = () => [`/v1/secrets`] as const;\n\nexport type CreateSecretMutationResult = NonNullable<\n Awaited<ReturnType<typeof createSecret>>\n>;\n\n/**\n * @summary Create a secret\n */\nexport const useCreateSecret = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createSecret>>,\n TError,\n Key,\n CreateSecretBody | undefined,\n Awaited<ReturnType<typeof createSecret>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateSecretMutationKey();\n const swrFn = getCreateSecretMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListSecretsUrl = (params?: ListSecretsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/secrets?${stringifiedParams}`\n : `/v1/secrets`;\n};\n\n/**\n * List the organization's secrets with pagination and sorting. Values are never included. Requires the `secrets:read` permission.\n * @summary List secrets\n */\nexport const listSecrets = async (\n params?: ListSecretsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListSecretsEnvelope> => {\n return customFetch<ListSecretsEnvelope>(getListSecretsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListSecretsKey = (params?: ListSecretsParams) =>\n [`/v1/secrets`, ...(params ? [params] : [])] as const;\n\nexport type ListSecretsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listSecrets>>\n>;\n\n/**\n * @summary List secrets\n */\nexport const useListSecrets = <TError = ErrorType<ErrorResponse>>(\n params?: ListSecretsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listSecrets>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListSecretsKey(params) : null));\n const swrFn = () => listSecrets(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetSecretUrl = (secretId: string) => {\n return `/v1/secrets/${secretId}`;\n};\n\n/**\n * Get a secret's metadata. The value is never included. Requires the `secrets:read` permission.\n * @summary Get secret\n */\nexport const getSecret = async (\n secretId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetSecretEnvelope> => {\n return customFetch<GetSecretEnvelope>(getGetSecretUrl(secretId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetSecretKey = (secretId: string) =>\n [`/v1/secrets/${secretId}`] as const;\n\nexport type GetSecretQueryResult = NonNullable<\n Awaited<ReturnType<typeof getSecret>>\n>;\n\n/**\n * @summary Get secret\n */\nexport const useGetSecret = <TError = ErrorType<ErrorResponse>>(\n secretId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getSecret>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n secretId !== null &&\n secretId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetSecretKey(secretId) : null));\n const swrFn = () => getSecret(secretId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateSecretUrl = (secretId: string) => {\n return `/v1/secrets/${secretId}`;\n};\n\n/**\n * Update a secret's display name or description, or rotate its live or test value. Rotation overwrites the stored value — previous values are not retrievable.\n *\n * The `env_key` is immutable: consumers of the secret receive the value under that key, so changing it would silently break them. Create a new secret instead.\n *\n * Requires the `secrets:write` permission.\n * @summary Update secret\n */\nexport const updateSecret = async (\n secretId: string,\n updateSecretBody?: UpdateSecretBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateSecretEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateSecretEnvelope>(getUpdateSecretUrl(secretId), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateSecretBody),\n });\n};\n\nexport const getUpdateSecretMutationFetcher = (\n secretId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateSecretBody | undefined }) => {\n return updateSecret(secretId, arg, options);\n };\n};\nexport const getUpdateSecretMutationKey = (secretId: string) =>\n [`/v1/secrets/${secretId}`] as const;\n\nexport type UpdateSecretMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateSecret>>\n>;\n\n/**\n * @summary Update secret\n */\nexport const useUpdateSecret = <TError = ErrorType<ErrorResponse>>(\n secretId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateSecret>>,\n TError,\n Key,\n UpdateSecretBody | undefined,\n Awaited<ReturnType<typeof updateSecret>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateSecretMutationKey(secretId);\n const swrFn = getUpdateSecretMutationFetcher(secretId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteSecretUrl = (secretId: string) => {\n return `/v1/secrets/${secretId}`;\n};\n\n/**\n * Delete a secret and detach it from all entities. Requires the `secrets:write` permission.\n * @summary Delete secret\n */\nexport const deleteSecret = async (\n secretId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteSecretEnvelope> => {\n return customFetch<DeleteSecretEnvelope>(getDeleteSecretUrl(secretId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteSecretMutationFetcher = (\n secretId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteSecret(secretId, options);\n };\n};\nexport const getDeleteSecretMutationKey = (secretId: string) =>\n [`/v1/secrets/${secretId}`] as const;\n\nexport type DeleteSecretMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteSecret>>\n>;\n\n/**\n * @summary Delete secret\n */\nexport const useDeleteSecret = <TError = ErrorType<ErrorResponse>>(\n secretId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteSecret>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteSecret>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteSecretMutationKey(secretId);\n const swrFn = getDeleteSecretMutationFetcher(secretId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n ErrorResponse,\n InviteTeamMemberBody,\n InviteTeamMemberEnvelope,\n ListTeamInvitationsEnvelope,\n ListTeamMembersEnvelope,\n ResendTeamInvitationEnvelope,\n UpdateMemberRoleBody,\n UpdateMemberRoleEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListTeamMembersUrl = () => {\n return `/v1/team/members`;\n};\n\n/**\n * List all members in the current tenant.\n * @summary List team members\n */\nexport const listTeamMembers = async (\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListTeamMembersEnvelope> => {\n return customFetch<ListTeamMembersEnvelope>(getListTeamMembersUrl(), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListTeamMembersKey = () => [`/v1/team/members`] as const;\n\nexport type ListTeamMembersQueryResult = NonNullable<\n Awaited<ReturnType<typeof listTeamMembers>>\n>;\n\n/**\n * @summary List team members\n */\nexport const useListTeamMembers = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listTeamMembers>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListTeamMembersKey() : null));\n const swrFn = () => listTeamMembers(requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getInviteTeamMemberUrl = () => {\n return `/v1/team/invitations`;\n};\n\n/**\n * Invite an email address to join the current tenant. The invitee receives an email and joins at the `member` role once they accept; promote them afterwards with `PATCH /v1/team/members/{id}`.\n *\n * Requires the `teams:write` permission.\n *\n * Returns `409` if the address already has a pending invitation or is already a member.\n * @summary Invite a team member\n */\nexport const inviteTeamMember = async (\n inviteTeamMemberBody?: InviteTeamMemberBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<InviteTeamMemberEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<InviteTeamMemberEnvelope>(getInviteTeamMemberUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(inviteTeamMemberBody),\n });\n};\n\nexport const getInviteTeamMemberMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: InviteTeamMemberBody | undefined }) => {\n return inviteTeamMember(arg, options);\n };\n};\nexport const getInviteTeamMemberMutationKey = () =>\n [`/v1/team/invitations`] as const;\n\nexport type InviteTeamMemberMutationResult = NonNullable<\n Awaited<ReturnType<typeof inviteTeamMember>>\n>;\n\n/**\n * @summary Invite a team member\n */\nexport const useInviteTeamMember = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof inviteTeamMember>>,\n TError,\n Key,\n InviteTeamMemberBody | undefined,\n Awaited<ReturnType<typeof inviteTeamMember>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getInviteTeamMemberMutationKey();\n const swrFn = getInviteTeamMemberMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListTeamInvitationsUrl = () => {\n return `/v1/team/invitations`;\n};\n\n/**\n * List the invitations for the current tenant that are still awaiting acceptance. Accepted, revoked and expired invitations are not returned.\n *\n * Invitees are not team members yet, so they do not appear in `GET /v1/team/members`. A member-management screen shows both by merging the two lists.\n *\n * Requires the `teams:write` permission.\n * @summary List pending team invitations\n */\nexport const listTeamInvitations = async (\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListTeamInvitationsEnvelope> => {\n return customFetch<ListTeamInvitationsEnvelope>(getListTeamInvitationsUrl(), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListTeamInvitationsKey = () =>\n [`/v1/team/invitations`] as const;\n\nexport type ListTeamInvitationsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listTeamInvitations>>\n>;\n\n/**\n * @summary List pending team invitations\n */\nexport const useListTeamInvitations = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listTeamInvitations>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListTeamInvitationsKey() : null));\n const swrFn = () => listTeamInvitations(requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRevokeTeamInvitationUrl = (invitationId: string) => {\n return `/v1/team/invitations/${invitationId}`;\n};\n\n/**\n * Cancel a pending invitation. The link that was emailed to the invitee stops working, and the address becomes free to invite again.\n *\n * Idempotent: an invitation that was already accepted, revoked or expired also returns `204`.\n *\n * Requires the `teams:write` permission.\n *\n * Returns `404` for an unknown invitation or one that belongs to another tenant.\n * @summary Revoke a team invitation\n */\nexport const revokeTeamInvitation = async (\n invitationId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<void> => {\n return customFetch<void>(getRevokeTeamInvitationUrl(invitationId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getRevokeTeamInvitationMutationFetcher = (\n invitationId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return revokeTeamInvitation(invitationId, options);\n };\n};\nexport const getRevokeTeamInvitationMutationKey = (invitationId: string) =>\n [`/v1/team/invitations/${invitationId}`] as const;\n\nexport type RevokeTeamInvitationMutationResult = NonNullable<\n Awaited<ReturnType<typeof revokeTeamInvitation>>\n>;\n\n/**\n * @summary Revoke a team invitation\n */\nexport const useRevokeTeamInvitation = <TError = ErrorType<ErrorResponse>>(\n invitationId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof revokeTeamInvitation>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof revokeTeamInvitation>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getRevokeTeamInvitationMutationKey(invitationId);\n const swrFn = getRevokeTeamInvitationMutationFetcher(\n invitationId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getResendTeamInvitationUrl = (invitationId: string) => {\n return `/v1/team/invitations/${invitationId}/resend`;\n};\n\n/**\n * Email the invitation to its recipient again, for an invite that never arrived. The invitation keeps its `id` and its original expiry — this re-sends the existing link rather than issuing a new one.\n *\n * To give someone a genuinely fresh 5 days, revoke the invitation and send a new one instead.\n *\n * Requires the `teams:write` permission.\n *\n * Returns `409` if the invitation is no longer pending — it was accepted, revoked or expired underneath the caller — and `404` for an unknown invitation or one that belongs to another tenant.\n * @summary Resend a team invitation\n */\nexport const resendTeamInvitation = async (\n invitationId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ResendTeamInvitationEnvelope> => {\n return customFetch<ResendTeamInvitationEnvelope>(\n getResendTeamInvitationUrl(invitationId),\n {\n ...options,\n method: \"POST\",\n }\n );\n};\n\nexport const getResendTeamInvitationMutationFetcher = (\n invitationId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return resendTeamInvitation(invitationId, options);\n };\n};\nexport const getResendTeamInvitationMutationKey = (invitationId: string) =>\n [`/v1/team/invitations/${invitationId}/resend`] as const;\n\nexport type ResendTeamInvitationMutationResult = NonNullable<\n Awaited<ReturnType<typeof resendTeamInvitation>>\n>;\n\n/**\n * @summary Resend a team invitation\n */\nexport const useResendTeamInvitation = <TError = ErrorType<ErrorResponse>>(\n invitationId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof resendTeamInvitation>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof resendTeamInvitation>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getResendTeamInvitationMutationKey(invitationId);\n const swrFn = getResendTeamInvitationMutationFetcher(\n invitationId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateMemberRoleUrl = (id: string) => {\n return `/v1/team/members/${id}`;\n};\n\n/**\n * Change the role of a team member.\n * @summary Update member role\n */\nexport const updateMemberRole = async (\n id: string,\n updateMemberRoleBody?: UpdateMemberRoleBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateMemberRoleEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateMemberRoleEnvelope>(getUpdateMemberRoleUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateMemberRoleBody),\n });\n};\n\nexport const getUpdateMemberRoleMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateMemberRoleBody | undefined }) => {\n return updateMemberRole(id, arg, options);\n };\n};\nexport const getUpdateMemberRoleMutationKey = (id: string) =>\n [`/v1/team/members/${id}`] as const;\n\nexport type UpdateMemberRoleMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateMemberRole>>\n>;\n\n/**\n * @summary Update member role\n */\nexport const useUpdateMemberRole = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateMemberRole>>,\n TError,\n Key,\n UpdateMemberRoleBody | undefined,\n Awaited<ReturnType<typeof updateMemberRole>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateMemberRoleMutationKey(id);\n const swrFn = getUpdateMemberRoleMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRemoveMemberUrl = (id: string) => {\n return `/v1/team/members/${id}`;\n};\n\n/**\n * Soft-delete a team member, revoking access on the next token refresh.\n * @summary Remove team member\n */\nexport const removeMember = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<void> => {\n return customFetch<void>(getRemoveMemberUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getRemoveMemberMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return removeMember(id, options);\n };\n};\nexport const getRemoveMemberMutationKey = (id: string) =>\n [`/v1/team/members/${id}`] as const;\n\nexport type RemoveMemberMutationResult = NonNullable<\n Awaited<ReturnType<typeof removeMember>>\n>;\n\n/**\n * @summary Remove team member\n */\nexport const useRemoveMember = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof removeMember>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof removeMember>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRemoveMemberMutationKey(id);\n const swrFn = getRemoveMemberMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateToolBody,\n CreateToolEnvelope,\n DeleteToolEnvelope,\n ErrorResponse,\n ExecuteCodeBody,\n ExecuteCodeEnvelope,\n GetToolEnvelope,\n GetToolVersionChangeSummaryEnvelope,\n GetToolVersionEnvelope,\n ListToolVersionsEnvelope,\n ListToolVersionsParams,\n ListToolsEnvelope,\n ListToolsParams,\n PromoteToolVersionBody,\n PromoteToolVersionEnvelope,\n UpdateToolBody,\n UpdateToolEnvelope,\n WorkerExecuteToolBody,\n WorkerExecuteToolEnvelope,\n WorkerGetToolEnvelope,\n WorkerListToolsEnvelope,\n WorkerListToolsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateToolUrl = () => {\n return `/v1/tools`;\n};\n\n/**\n * Create a new code tool that can be attached to agents. Provide the tool's name, code, and description.\n * @summary Create tool\n */\nexport const createTool = async (\n createToolBody?: CreateToolBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateToolEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateToolEnvelope>(getCreateToolUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createToolBody),\n });\n};\n\nexport const getCreateToolMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateToolBody | undefined }) => {\n return createTool(arg, options);\n };\n};\nexport const getCreateToolMutationKey = () => [`/v1/tools`] as const;\n\nexport type CreateToolMutationResult = NonNullable<\n Awaited<ReturnType<typeof createTool>>\n>;\n\n/**\n * @summary Create tool\n */\nexport const useCreateTool = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createTool>>,\n TError,\n Key,\n CreateToolBody | undefined,\n Awaited<ReturnType<typeof createTool>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateToolMutationKey();\n const swrFn = getCreateToolMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListToolsUrl = (params?: ListToolsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/tools?${stringifiedParams}`\n : `/v1/tools`;\n};\n\n/**\n * List all code tools with sorting.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /worker/v1/tools`\n * @summary List tools\n */\nexport const listTools = async (\n params?: ListToolsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListToolsEnvelope> => {\n return customFetch<ListToolsEnvelope>(getListToolsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListToolsKey = (params?: ListToolsParams) =>\n [`/v1/tools`, ...(params ? [params] : [])] as const;\n\nexport type ListToolsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listTools>>\n>;\n\n/**\n * @summary List tools\n */\nexport const useListTools = <TError = ErrorType<ErrorResponse>>(\n params?: ListToolsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listTools>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListToolsKey(params) : null));\n const swrFn = () => listTools(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\n/**\n * Delete a tool. Fails with a conflict when the tool is still attached to a voice agent, worker, or chat agent; detach it first.\n * @summary Delete tool\n */\nexport const deleteTool = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteToolEnvelope> => {\n return customFetch<DeleteToolEnvelope>(getDeleteToolUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteToolMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteTool(id, options);\n };\n};\nexport const getDeleteToolMutationKey = (id: string) =>\n [`/v1/tools/${id}`] as const;\n\nexport type DeleteToolMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteTool>>\n>;\n\n/**\n * @summary Delete tool\n */\nexport const useDeleteTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteTool>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteTool>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteToolMutationKey(id);\n const swrFn = getDeleteToolMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\n/**\n * Retrieve a single tool by ID at its newest config version, including its code, schema, description and attached secrets, plus the versions each environment runs.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /worker/v1/tools/{id}`\n * @summary Get tool\n */\nexport const getTool = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetToolEnvelope> => {\n return customFetch<GetToolEnvelope>(getGetToolUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetToolKey = (id: string) => [`/v1/tools/${id}`] as const;\n\nexport type GetToolQueryResult = NonNullable<\n Awaited<ReturnType<typeof getTool>>\n>;\n\n/**\n * @summary Get tool\n */\nexport const useGetTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getTool>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetToolKey(id) : null));\n const swrFn = () => getTool(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\n/**\n * Update a code tool's name, description, code, or attached secrets. All fields are optional — only provided fields are updated.\n *\n * Changing the code, description or attached secrets creates a new config version; runs keep executing the versions promoted to live and test until that version is promoted. Renaming does not create a version.\n * @summary Update tool\n */\nexport const updateTool = async (\n id: string,\n updateToolBody?: UpdateToolBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateToolEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateToolEnvelope>(getUpdateToolUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateToolBody),\n });\n};\n\nexport const getUpdateToolMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateToolBody | undefined }) => {\n return updateTool(id, arg, options);\n };\n};\nexport const getUpdateToolMutationKey = (id: string) =>\n [`/v1/tools/${id}`] as const;\n\nexport type UpdateToolMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateTool>>\n>;\n\n/**\n * @summary Update tool\n */\nexport const useUpdateTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateTool>>,\n TError,\n Key,\n UpdateToolBody | undefined,\n Awaited<ReturnType<typeof updateTool>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateToolMutationKey(id);\n const swrFn = getUpdateToolMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getExecuteCodeUrl = (id: string) => {\n return `/v1/tools/${id}/execute`;\n};\n\n/**\n * Execute a code tool with the given parameters. Returns the result, any errors, and execution traces.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /worker/v1/tools/{id}/execute`\n * @summary Execute tool\n */\nexport const executeCode = async (\n id: string,\n executeCodeBody?: ExecuteCodeBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ExecuteCodeEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<ExecuteCodeEnvelope>(getExecuteCodeUrl(id), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(executeCodeBody),\n });\n};\n\nexport const getExecuteCodeMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: ExecuteCodeBody | undefined }) => {\n return executeCode(id, arg, options);\n };\n};\nexport const getExecuteCodeMutationKey = (id: string) =>\n [`/v1/tools/${id}/execute`] as const;\n\nexport type ExecuteCodeMutationResult = NonNullable<\n Awaited<ReturnType<typeof executeCode>>\n>;\n\n/**\n * @summary Execute tool\n */\nexport const useExecuteCode = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof executeCode>>,\n TError,\n Key,\n ExecuteCodeBody | undefined,\n Awaited<ReturnType<typeof executeCode>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getExecuteCodeMutationKey(id);\n const swrFn = getExecuteCodeMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListToolVersionsUrl = (\n id: string,\n params?: ListToolVersionsParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/tools/${id}/versions?${stringifiedParams}`\n : `/v1/tools/${id}/versions`;\n};\n\n/**\n * List all config versions for a tool, ordered by version (newest first by default).\n * @summary List tool versions\n */\nexport const listToolVersions = async (\n id: string,\n params?: ListToolVersionsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListToolVersionsEnvelope> => {\n return customFetch<ListToolVersionsEnvelope>(\n getListToolVersionsUrl(id, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListToolVersionsKey = (\n id: string,\n params?: ListToolVersionsParams\n) => [`/v1/tools/${id}/versions`, ...(params ? [params] : [])] as const;\n\nexport type ListToolVersionsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listToolVersions>>\n>;\n\n/**\n * @summary List tool versions\n */\nexport const useListToolVersions = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListToolVersionsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listToolVersions>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListToolVersionsKey(id, params) : null));\n const swrFn = () => listToolVersions(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetToolVersionUrl = (id: string, version: number) => {\n return `/v1/tools/${id}/versions/${version}`;\n};\n\n/**\n * Retrieve a single tool config version: the tool's identity, the code, schema, description and attached secrets at that version, and version metadata.\n * @summary Get tool version\n */\nexport const getToolVersion = async (\n id: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetToolVersionEnvelope> => {\n return customFetch<GetToolVersionEnvelope>(\n getGetToolVersionUrl(id, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetToolVersionKey = (id: string, version: number) =>\n [`/v1/tools/${id}/versions/${version}`] as const;\n\nexport type GetToolVersionQueryResult = NonNullable<\n Awaited<ReturnType<typeof getToolVersion>>\n>;\n\n/**\n * @summary Get tool version\n */\nexport const useGetToolVersion = <TError = ErrorType<ErrorResponse>>(\n id: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getToolVersion>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n id !== null &&\n id !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetToolVersionKey(id, version) : null));\n const swrFn = () => getToolVersion(id, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPromoteToolVersionUrl = (id: string, version: number) => {\n return `/v1/tools/${id}/versions/${version}/promote`;\n};\n\n/**\n * Select a tool config version for the live or test environment. Runs in that environment execute this version's code with this version's schema and attached secrets from then on.\n * @summary Promote tool version\n */\nexport const promoteToolVersion = async (\n id: string,\n version: number,\n promoteToolVersionBody?: PromoteToolVersionBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<PromoteToolVersionEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<PromoteToolVersionEnvelope>(\n getPromoteToolVersionUrl(id, version),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(promoteToolVersionBody),\n }\n );\n};\n\nexport const getPromoteToolVersionMutationFetcher = (\n id: string,\n version: number,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: PromoteToolVersionBody | undefined }) => {\n return promoteToolVersion(id, version, arg, options);\n };\n};\nexport const getPromoteToolVersionMutationKey = (id: string, version: number) =>\n [`/v1/tools/${id}/versions/${version}/promote`] as const;\n\nexport type PromoteToolVersionMutationResult = NonNullable<\n Awaited<ReturnType<typeof promoteToolVersion>>\n>;\n\n/**\n * @summary Promote tool version\n */\nexport const usePromoteToolVersion = <TError = ErrorType<ErrorResponse>>(\n id: string,\n version: number,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof promoteToolVersion>>,\n TError,\n Key,\n PromoteToolVersionBody | undefined,\n Awaited<ReturnType<typeof promoteToolVersion>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getPromoteToolVersionMutationKey(id, version);\n const swrFn = getPromoteToolVersionMutationFetcher(\n id,\n version,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetToolVersionChangeSummaryUrl = (\n id: string,\n version: number\n) => {\n return `/v1/tools/${id}/versions/${version}/change-summary`;\n};\n\n/**\n * Returns an AI-generated summary of what changed between this version and the previous one. Initial version returns an empty string since there is no predecessor.\n * @summary Get tool version change summary\n */\nexport const getToolVersionChangeSummary = async (\n id: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetToolVersionChangeSummaryEnvelope> => {\n return customFetch<GetToolVersionChangeSummaryEnvelope>(\n getGetToolVersionChangeSummaryUrl(id, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetToolVersionChangeSummaryKey = (\n id: string,\n version: number\n) => [`/v1/tools/${id}/versions/${version}/change-summary`] as const;\n\nexport type GetToolVersionChangeSummaryQueryResult = NonNullable<\n Awaited<ReturnType<typeof getToolVersionChangeSummary>>\n>;\n\n/**\n * @summary Get tool version change summary\n */\nexport const useGetToolVersionChangeSummary = <\n TError = ErrorType<ErrorResponse>,\n>(\n id: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getToolVersionChangeSummary>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n id !== null &&\n id !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetToolVersionChangeSummaryKey(id, version) : null));\n const swrFn = () => getToolVersionChangeSummary(id, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getWorkerListToolsUrl = (params?: WorkerListToolsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/worker/v1/tools?${stringifiedParams}`\n : `/worker/v1/tools`;\n};\n\n/**\n * List all code tools with sorting.\n * @deprecated\n * @summary List tools\n */\nexport const workerListTools = async (\n params?: WorkerListToolsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<WorkerListToolsEnvelope> => {\n return customFetch<WorkerListToolsEnvelope>(getWorkerListToolsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getWorkerListToolsKey = (params?: WorkerListToolsParams) =>\n [`/worker/v1/tools`, ...(params ? [params] : [])] as const;\n\nexport type WorkerListToolsQueryResult = NonNullable<\n Awaited<ReturnType<typeof workerListTools>>\n>;\n\n/**\n * @deprecated\n * @summary List tools\n */\nexport const useWorkerListTools = <TError = ErrorType<ErrorResponse>>(\n params?: WorkerListToolsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof workerListTools>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getWorkerListToolsKey(params) : null));\n const swrFn = () => workerListTools(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getWorkerGetToolUrl = (id: string) => {\n return `/worker/v1/tools/${id}`;\n};\n\n/**\n * Retrieve a single tool by ID at its newest config version, including its code, schema, description and attached secrets, plus the versions each environment runs.\n * @deprecated\n * @summary Get tool\n */\nexport const workerGetTool = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<WorkerGetToolEnvelope> => {\n return customFetch<WorkerGetToolEnvelope>(getWorkerGetToolUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getWorkerGetToolKey = (id: string) =>\n [`/worker/v1/tools/${id}`] as const;\n\nexport type WorkerGetToolQueryResult = NonNullable<\n Awaited<ReturnType<typeof workerGetTool>>\n>;\n\n/**\n * @deprecated\n * @summary Get tool\n */\nexport const useWorkerGetTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof workerGetTool>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getWorkerGetToolKey(id) : null));\n const swrFn = () => workerGetTool(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getWorkerExecuteToolUrl = (id: string) => {\n return `/worker/v1/tools/${id}/execute`;\n};\n\n/**\n * Execute a code tool with the given parameters. Returns the result, any errors, and execution traces.\n * @deprecated\n * @summary Execute tool\n */\nexport const workerExecuteTool = async (\n id: string,\n workerExecuteToolBody?: WorkerExecuteToolBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<WorkerExecuteToolEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<WorkerExecuteToolEnvelope>(getWorkerExecuteToolUrl(id), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(workerExecuteToolBody),\n });\n};\n\nexport const getWorkerExecuteToolMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: WorkerExecuteToolBody | undefined }) => {\n return workerExecuteTool(id, arg, options);\n };\n};\nexport const getWorkerExecuteToolMutationKey = (id: string) =>\n [`/worker/v1/tools/${id}/execute`] as const;\n\nexport type WorkerExecuteToolMutationResult = NonNullable<\n Awaited<ReturnType<typeof workerExecuteTool>>\n>;\n\n/**\n * @deprecated\n * @summary Execute tool\n */\nexport const useWorkerExecuteTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof workerExecuteTool>>,\n TError,\n Key,\n WorkerExecuteToolBody | undefined,\n Awaited<ReturnType<typeof workerExecuteTool>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getWorkerExecuteToolMutationKey(id);\n const swrFn = getWorkerExecuteToolMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateVoiceAgentBody,\n CreateVoiceAgentEnvelope,\n DeleteVoiceAgentEnvelope,\n ErrorResponse,\n GetVoiceAgentEnvelope,\n GetVoiceAgentPlaceholdersEnvelope,\n GetVoiceAgentPromptEnvelope,\n GetVoiceAgentPromptParams,\n GetVoiceAgentVersionChangeSummaryEnvelope,\n GetVoiceAgentVersionEnvelope,\n ListVoiceAgentVersionsEnvelope,\n ListVoiceAgentVersionsParams,\n ListVoiceAgentsEnvelope,\n ListVoiceAgentsParams,\n PromoteVoiceAgentVersionBody,\n PromoteVoiceAgentVersionEnvelope,\n UpdateCallControlsBody,\n UpdateCallControlsEnvelope,\n UpdateVoiceAgentBody,\n UpdateVoiceAgentEnvelope,\n UpdateVoiceAgentModelsBody,\n UpdateVoiceAgentModelsEnvelope,\n UpdateVoiceAgentPromptBody,\n UpdateVoiceAgentPromptEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListVoiceAgentsUrl = (params?: ListVoiceAgentsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents?${stringifiedParams}`\n : `/v1/voice-agents`;\n};\n\n/**\n * List all voice agents for your tenant.\n *\n * **Filtering:**\n *\n * Filter voice agents by name using the `agent_name` query parameter (exact match).\n *\n * **Response:**\n *\n * Returns an array of all voice agents with their configurations and a total count.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents`\n * @summary List voice agents\n */\nexport const listVoiceAgents = async (\n params?: ListVoiceAgentsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListVoiceAgentsEnvelope> => {\n return customFetch<ListVoiceAgentsEnvelope>(getListVoiceAgentsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListVoiceAgentsKey = (params?: ListVoiceAgentsParams) =>\n [`/v1/voice-agents`, ...(params ? [params] : [])] as const;\n\nexport type ListVoiceAgentsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listVoiceAgents>>\n>;\n\n/**\n * @summary List voice agents\n */\nexport const useListVoiceAgents = <TError = ErrorType<ErrorResponse>>(\n params?: ListVoiceAgentsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listVoiceAgents>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListVoiceAgentsKey(params) : null));\n const swrFn = () => listVoiceAgents(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateVoiceAgentUrl = () => {\n return `/v1/voice-agents`;\n};\n\n/**\n * Create a new voice agent with the specified configuration.\n *\n * **Required fields:**\n *\n * All fields in the request body are required except `phone_number_id` and `transfer_phone_number`.\n *\n * **Response:**\n *\n * Returns the created voice agent with its ID and configuration.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/agents`\n * @summary Create voice agent\n */\nexport const createVoiceAgent = async (\n createVoiceAgentBody?: CreateVoiceAgentBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateVoiceAgentEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateVoiceAgentEnvelope>(getCreateVoiceAgentUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createVoiceAgentBody),\n });\n};\n\nexport const getCreateVoiceAgentMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateVoiceAgentBody | undefined }) => {\n return createVoiceAgent(arg, options);\n };\n};\nexport const getCreateVoiceAgentMutationKey = () =>\n [`/v1/voice-agents`] as const;\n\nexport type CreateVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof createVoiceAgent>>\n>;\n\n/**\n * @summary Create voice agent\n */\nexport const useCreateVoiceAgent = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createVoiceAgent>>,\n TError,\n Key,\n CreateVoiceAgentBody | undefined,\n Awaited<ReturnType<typeof createVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateVoiceAgentMutationKey();\n const swrFn = getCreateVoiceAgentMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}`;\n};\n\n/**\n * Retrieve a single voice agent by its ID.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents/{id}`\n * @summary Get voice agent\n */\nexport const getVoiceAgent = async (\n voiceAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentEnvelope> => {\n return customFetch<GetVoiceAgentEnvelope>(getGetVoiceAgentUrl(voiceAgentId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetVoiceAgentKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}`] as const;\n\nexport type GetVoiceAgentQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgent>>\n>;\n\n/**\n * @summary Get voice agent\n */\nexport const useGetVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgent>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetVoiceAgentKey(voiceAgentId) : null));\n const swrFn = () => getVoiceAgent(voiceAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}`;\n};\n\n/**\n * Update a voice agent's name, call processor, or call behaviour settings.\n *\n * To change the processor assignment, `call_processor_id` and `call_processor_type` must be provided together. Set `call_processor_id` to `null` to detach (`call_processor_type` is still required).\n *\n * Set `voice_mail_detection` to `true` to have the agent listen for a voicemail beep tone. Detection only runs on `OUTBOUND` agents; enabling it on an `INBOUND` agent is stored but has no effect.\n *\n * Set `noise_cancellation` to choose the noise cancellation mode applied to the caller audio.\n *\n * Set `tool_ids` to replace the agent's attached tool set. This is the supported way to manage tool attachments; the dedicated add and remove endpoints are deprecated.\n *\n * Config changes create a new voice agent config version. The live and test releases keep pointing at their current versions until the new version is promoted.\n * @summary Update voice agent\n */\nexport const updateVoiceAgent = async (\n voiceAgentId: string,\n updateVoiceAgentBody?: UpdateVoiceAgentBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateVoiceAgentEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateVoiceAgentEnvelope>(\n getUpdateVoiceAgentUrl(voiceAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateVoiceAgentBody),\n }\n );\n};\n\nexport const getUpdateVoiceAgentMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateVoiceAgentBody | undefined }) => {\n return updateVoiceAgent(voiceAgentId, arg, options);\n };\n};\nexport const getUpdateVoiceAgentMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}`] as const;\n\nexport type UpdateVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateVoiceAgent>>\n>;\n\n/**\n * @summary Update voice agent\n */\nexport const useUpdateVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateVoiceAgent>>,\n TError,\n Key,\n UpdateVoiceAgentBody | undefined,\n Awaited<ReturnType<typeof updateVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateVoiceAgentMutationKey(voiceAgentId);\n const swrFn = getUpdateVoiceAgentMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}`;\n};\n\n/**\n * Delete a voice agent. The agent is hidden from all reads; its call and job history is preserved.\n * @summary Delete voice agent\n */\nexport const deleteVoiceAgent = async (\n voiceAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteVoiceAgentEnvelope> => {\n return customFetch<DeleteVoiceAgentEnvelope>(\n getDeleteVoiceAgentUrl(voiceAgentId),\n {\n ...options,\n method: \"DELETE\",\n }\n );\n};\n\nexport const getDeleteVoiceAgentMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteVoiceAgent(voiceAgentId, options);\n };\n};\nexport const getDeleteVoiceAgentMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}`] as const;\n\nexport type DeleteVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteVoiceAgent>>\n>;\n\n/**\n * @summary Delete voice agent\n */\nexport const useDeleteVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteVoiceAgent>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getDeleteVoiceAgentMutationKey(voiceAgentId);\n const swrFn = getDeleteVoiceAgentMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListVoiceAgentVersionsUrl = (\n voiceAgentId: string,\n params?: ListVoiceAgentVersionsParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents/${voiceAgentId}/versions?${stringifiedParams}`\n : `/v1/voice-agents/${voiceAgentId}/versions`;\n};\n\n/**\n * List all config versions for a voice agent, ordered by version (newest first by default).\n * @summary List voice agent versions\n */\nexport const listVoiceAgentVersions = async (\n voiceAgentId: string,\n params?: ListVoiceAgentVersionsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListVoiceAgentVersionsEnvelope> => {\n return customFetch<ListVoiceAgentVersionsEnvelope>(\n getListVoiceAgentVersionsUrl(voiceAgentId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListVoiceAgentVersionsKey = (\n voiceAgentId: string,\n params?: ListVoiceAgentVersionsParams\n) =>\n [\n `/v1/voice-agents/${voiceAgentId}/versions`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type ListVoiceAgentVersionsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listVoiceAgentVersions>>\n>;\n\n/**\n * @summary List voice agent versions\n */\nexport const useListVoiceAgentVersions = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n params?: ListVoiceAgentVersionsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listVoiceAgentVersions>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getListVoiceAgentVersionsKey(voiceAgentId, params) : null);\n const swrFn = () =>\n listVoiceAgentVersions(voiceAgentId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentVersionUrl = (\n voiceAgentId: string,\n version: number\n) => {\n return `/v1/voice-agents/${voiceAgentId}/versions/${version}`;\n};\n\n/**\n * Retrieve a single voice agent config version, including the agent's identity, the config snapshot at that version, and version-specific metadata.\n * @summary Get voice agent version\n */\nexport const getVoiceAgentVersion = async (\n voiceAgentId: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentVersionEnvelope> => {\n return customFetch<GetVoiceAgentVersionEnvelope>(\n getGetVoiceAgentVersionUrl(voiceAgentId, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentVersionKey = (\n voiceAgentId: string,\n version: number\n) => [`/v1/voice-agents/${voiceAgentId}/versions/${version}`] as const;\n\nexport type GetVoiceAgentVersionQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgentVersion>>\n>;\n\n/**\n * @summary Get voice agent version\n */\nexport const useGetVoiceAgentVersion = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgentVersion>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getGetVoiceAgentVersionKey(voiceAgentId, version) : null);\n const swrFn = () =>\n getVoiceAgentVersion(voiceAgentId, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPromoteVoiceAgentVersionUrl = (\n voiceAgentId: string,\n version: number\n) => {\n return `/v1/voice-agents/${voiceAgentId}/versions/${version}/promote`;\n};\n\n/**\n * Select a voice agent configuration version for the live or test environment.\n * @summary Promote voice agent version\n */\nexport const promoteVoiceAgentVersion = async (\n voiceAgentId: string,\n version: number,\n promoteVoiceAgentVersionBody?: PromoteVoiceAgentVersionBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<PromoteVoiceAgentVersionEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<PromoteVoiceAgentVersionEnvelope>(\n getPromoteVoiceAgentVersionUrl(voiceAgentId, version),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(promoteVoiceAgentVersionBody),\n }\n );\n};\n\nexport const getPromoteVoiceAgentVersionMutationFetcher = (\n voiceAgentId: string,\n version: number,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: PromoteVoiceAgentVersionBody | undefined }\n ) => {\n return promoteVoiceAgentVersion(voiceAgentId, version, arg, options);\n };\n};\nexport const getPromoteVoiceAgentVersionMutationKey = (\n voiceAgentId: string,\n version: number\n) => [`/v1/voice-agents/${voiceAgentId}/versions/${version}/promote`] as const;\n\nexport type PromoteVoiceAgentVersionMutationResult = NonNullable<\n Awaited<ReturnType<typeof promoteVoiceAgentVersion>>\n>;\n\n/**\n * @summary Promote voice agent version\n */\nexport const usePromoteVoiceAgentVersion = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n version: number,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof promoteVoiceAgentVersion>>,\n TError,\n Key,\n PromoteVoiceAgentVersionBody | undefined,\n Awaited<ReturnType<typeof promoteVoiceAgentVersion>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ??\n getPromoteVoiceAgentVersionMutationKey(voiceAgentId, version);\n const swrFn = getPromoteVoiceAgentVersionMutationFetcher(\n voiceAgentId,\n version,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentVersionChangeSummaryUrl = (\n voiceAgentId: string,\n version: number\n) => {\n return `/v1/voice-agents/${voiceAgentId}/versions/${version}/change-summary`;\n};\n\n/**\n * Returns an AI-generated summary of what changed between this version and the previous one. Initial version returns an empty string since there is no predecessor.\n * @summary Get voice agent version change summary\n */\nexport const getVoiceAgentVersionChangeSummary = async (\n voiceAgentId: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentVersionChangeSummaryEnvelope> => {\n return customFetch<GetVoiceAgentVersionChangeSummaryEnvelope>(\n getGetVoiceAgentVersionChangeSummaryUrl(voiceAgentId, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentVersionChangeSummaryKey = (\n voiceAgentId: string,\n version: number\n) =>\n [\n `/v1/voice-agents/${voiceAgentId}/versions/${version}/change-summary`,\n ] as const;\n\nexport type GetVoiceAgentVersionChangeSummaryQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgentVersionChangeSummary>>\n>;\n\n/**\n * @summary Get voice agent version change summary\n */\nexport const useGetVoiceAgentVersionChangeSummary = <\n TError = ErrorType<ErrorResponse>,\n>(\n voiceAgentId: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgentVersionChangeSummary>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled\n ? getGetVoiceAgentVersionChangeSummaryKey(voiceAgentId, version)\n : null);\n const swrFn = () =>\n getVoiceAgentVersionChangeSummary(voiceAgentId, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentPlaceholdersUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/placeholders`;\n};\n\n/**\n * Retrieve the available placeholder variables defined in a voice agent's prompt.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents/{id}/prompt`\n * @summary Get voice agent placeholders\n */\nexport const getVoiceAgentPlaceholders = async (\n voiceAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentPlaceholdersEnvelope> => {\n return customFetch<GetVoiceAgentPlaceholdersEnvelope>(\n getGetVoiceAgentPlaceholdersUrl(voiceAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentPlaceholdersKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/placeholders`] as const;\n\nexport type GetVoiceAgentPlaceholdersQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgentPlaceholders>>\n>;\n\n/**\n * @summary Get voice agent placeholders\n */\nexport const useGetVoiceAgentPlaceholders = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgentPlaceholders>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetVoiceAgentPlaceholdersKey(voiceAgentId) : null));\n const swrFn = () => getVoiceAgentPlaceholders(voiceAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentPromptUrl = (\n voiceAgentId: string,\n params?: GetVoiceAgentPromptParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents/${voiceAgentId}/prompt?${stringifiedParams}`\n : `/v1/voice-agents/${voiceAgentId}/prompt`;\n};\n\n/**\n * Retrieve the prompt for a voice agent. Pass `version` to fetch the prompt snapshot at a specific config version; omit it to fetch the current prompt. Internal use only.\n * @summary Get voice agent prompt\n */\nexport const getVoiceAgentPrompt = async (\n voiceAgentId: string,\n params?: GetVoiceAgentPromptParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentPromptEnvelope> => {\n return customFetch<GetVoiceAgentPromptEnvelope>(\n getGetVoiceAgentPromptUrl(voiceAgentId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentPromptKey = (\n voiceAgentId: string,\n params?: GetVoiceAgentPromptParams\n) =>\n [\n `/v1/voice-agents/${voiceAgentId}/prompt`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type GetVoiceAgentPromptQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgentPrompt>>\n>;\n\n/**\n * @summary Get voice agent prompt\n */\nexport const useGetVoiceAgentPrompt = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n params?: GetVoiceAgentPromptParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgentPrompt>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getGetVoiceAgentPromptKey(voiceAgentId, params) : null);\n const swrFn = () => getVoiceAgentPrompt(voiceAgentId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateVoiceAgentPromptUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/prompt`;\n};\n\n/**\n * Update the prompt for a voice agent. Internal use only.\n * @summary Update voice agent prompt\n */\nexport const updateVoiceAgentPrompt = async (\n voiceAgentId: string,\n updateVoiceAgentPromptBody?: UpdateVoiceAgentPromptBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateVoiceAgentPromptEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateVoiceAgentPromptEnvelope>(\n getUpdateVoiceAgentPromptUrl(voiceAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateVoiceAgentPromptBody),\n }\n );\n};\n\nexport const getUpdateVoiceAgentPromptMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateVoiceAgentPromptBody | undefined }) => {\n return updateVoiceAgentPrompt(voiceAgentId, arg, options);\n };\n};\nexport const getUpdateVoiceAgentPromptMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/prompt`] as const;\n\nexport type UpdateVoiceAgentPromptMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateVoiceAgentPrompt>>\n>;\n\n/**\n * @summary Update voice agent prompt\n */\nexport const useUpdateVoiceAgentPrompt = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateVoiceAgentPrompt>>,\n TError,\n Key,\n UpdateVoiceAgentPromptBody | undefined,\n Awaited<ReturnType<typeof updateVoiceAgentPrompt>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateVoiceAgentPromptMutationKey(voiceAgentId);\n const swrFn = getUpdateVoiceAgentPromptMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateVoiceAgentModelsUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/models`;\n};\n\n/**\n * Update the LLM, TTS, and STT model configuration for a voice agent.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `PATCH /v1/agents/{id}/models`\n * @summary Update voice agent models\n */\nexport const updateVoiceAgentModels = async (\n voiceAgentId: string,\n updateVoiceAgentModelsBody?: UpdateVoiceAgentModelsBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateVoiceAgentModelsEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateVoiceAgentModelsEnvelope>(\n getUpdateVoiceAgentModelsUrl(voiceAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateVoiceAgentModelsBody),\n }\n );\n};\n\nexport const getUpdateVoiceAgentModelsMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateVoiceAgentModelsBody | undefined }) => {\n return updateVoiceAgentModels(voiceAgentId, arg, options);\n };\n};\nexport const getUpdateVoiceAgentModelsMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/models`] as const;\n\nexport type UpdateVoiceAgentModelsMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateVoiceAgentModels>>\n>;\n\n/**\n * @summary Update voice agent models\n */\nexport const useUpdateVoiceAgentModels = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateVoiceAgentModels>>,\n TError,\n Key,\n UpdateVoiceAgentModelsBody | undefined,\n Awaited<ReturnType<typeof updateVoiceAgentModels>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateVoiceAgentModelsMutationKey(voiceAgentId);\n const swrFn = getUpdateVoiceAgentModelsMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateCallControlsUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/call-controls`;\n};\n\n/**\n * Update call control settings for a voice agent.\n *\n * Configure whether the voice agent supports dial pad input, can end calls, and set a transfer phone number.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `PUT /v1/agents/{id}/call-controls`\n * @summary Update voice agent call controls\n */\nexport const updateCallControls = async (\n voiceAgentId: string,\n updateCallControlsBody?: UpdateCallControlsBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateCallControlsEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateCallControlsEnvelope>(\n getUpdateCallControlsUrl(voiceAgentId),\n {\n ...options,\n method: \"PUT\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateCallControlsBody),\n }\n );\n};\n\nexport const getUpdateCallControlsMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateCallControlsBody | undefined }) => {\n return updateCallControls(voiceAgentId, arg, options);\n };\n};\nexport const getUpdateCallControlsMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/call-controls`] as const;\n\nexport type UpdateCallControlsMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateCallControls>>\n>;\n\n/**\n * @summary Update voice agent call controls\n */\nexport const useUpdateCallControls = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateCallControls>>,\n TError,\n Key,\n UpdateCallControlsBody | undefined,\n Awaited<ReturnType<typeof updateCallControls>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateCallControlsMutationKey(voiceAgentId);\n const swrFn = getUpdateCallControlsMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateAgentWebhookBody,\n CreateAgentWebhookEnvelope,\n CreateExtractorWebhookBody,\n CreateExtractorWebhookEnvelope,\n CreateInboxWebhookBody,\n CreateInboxWebhookEnvelope,\n CreateNotificationWebhookBody,\n CreateNotificationWebhookEnvelope,\n CreateWorkerWebhookBody,\n CreateWorkerWebhookEnvelope,\n DeleteWebhookEnvelope,\n ErrorResponse,\n GetWebhookEnvelope,\n ListAgentWebhooksEnvelope,\n ListAgentWebhooksParams,\n ListInboxWebhooksEnvelope,\n ListInboxWebhooksParams,\n ListNotificationWebhooksEnvelope,\n ListNotificationWebhooksParams,\n ListWebhookDeliveriesEnvelope,\n ListWebhookDeliveriesParams,\n ListWebhooksEnvelope,\n ListWebhooksParams,\n ListWorkerWebhooksEnvelope,\n ListWorkerWebhooksParams,\n TestWebhookBody,\n TestWebhookEnvelope,\n UpdateWebhookBody,\n UpdateWebhookEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateWorkerWebhookUrl = (workerId: string) => {\n return `/v1/workers/${workerId}/webhooks`;\n};\n\n/**\n * Create a webhook that fires when events occur for the specified worker.\n * @summary Create worker webhook\n */\nexport const createWorkerWebhook = async (\n workerId: string,\n createWorkerWebhookBody?: CreateWorkerWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateWorkerWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateWorkerWebhookEnvelope>(\n getCreateWorkerWebhookUrl(workerId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createWorkerWebhookBody),\n }\n );\n};\n\nexport const getCreateWorkerWebhookMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerWebhookBody | undefined }) => {\n return createWorkerWebhook(workerId, arg, options);\n };\n};\nexport const getCreateWorkerWebhookMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}/webhooks`] as const;\n\nexport type CreateWorkerWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createWorkerWebhook>>\n>;\n\n/**\n * @summary Create worker webhook\n */\nexport const useCreateWorkerWebhook = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createWorkerWebhook>>,\n TError,\n Key,\n CreateWorkerWebhookBody | undefined,\n Awaited<ReturnType<typeof createWorkerWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateWorkerWebhookMutationKey(workerId);\n const swrFn = getCreateWorkerWebhookMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkerWebhooksUrl = (\n workerId: string,\n params?: ListWorkerWebhooksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers/${workerId}/webhooks?${stringifiedParams}`\n : `/v1/workers/${workerId}/webhooks`;\n};\n\n/**\n * List all webhooks configured for a specific worker.\n * @summary List worker webhooks\n */\nexport const listWorkerWebhooks = async (\n workerId: string,\n params?: ListWorkerWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerWebhooksEnvelope> => {\n return customFetch<ListWorkerWebhooksEnvelope>(\n getListWorkerWebhooksUrl(workerId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListWorkerWebhooksKey = (\n workerId: string,\n params?: ListWorkerWebhooksParams\n) => [`/v1/workers/${workerId}/webhooks`, ...(params ? [params] : [])] as const;\n\nexport type ListWorkerWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerWebhooks>>\n>;\n\n/**\n * @summary List worker webhooks\n */\nexport const useListWorkerWebhooks = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n params?: ListWorkerWebhooksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerWebhooks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkerWebhooksKey(workerId, params) : null));\n const swrFn = () => listWorkerWebhooks(workerId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateAgentWebhookUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/webhooks`;\n};\n\n/**\n * Create a webhook that fires when events occur for the specified voice agent.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/agents/{id}/webhooks`\n * @summary Create voice agent webhook\n */\nexport const createAgentWebhook = async (\n voiceAgentId: string,\n createAgentWebhookBody?: CreateAgentWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateAgentWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateAgentWebhookEnvelope>(\n getCreateAgentWebhookUrl(voiceAgentId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createAgentWebhookBody),\n }\n );\n};\n\nexport const getCreateAgentWebhookMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateAgentWebhookBody | undefined }) => {\n return createAgentWebhook(voiceAgentId, arg, options);\n };\n};\nexport const getCreateAgentWebhookMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/webhooks`] as const;\n\nexport type CreateAgentWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createAgentWebhook>>\n>;\n\n/**\n * @summary Create voice agent webhook\n */\nexport const useCreateAgentWebhook = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createAgentWebhook>>,\n TError,\n Key,\n CreateAgentWebhookBody | undefined,\n Awaited<ReturnType<typeof createAgentWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateAgentWebhookMutationKey(voiceAgentId);\n const swrFn = getCreateAgentWebhookMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListAgentWebhooksUrl = (\n voiceAgentId: string,\n params?: ListAgentWebhooksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents/${voiceAgentId}/webhooks?${stringifiedParams}`\n : `/v1/voice-agents/${voiceAgentId}/webhooks`;\n};\n\n/**\n * List all webhooks configured for a specific voice agent.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents/{id}/webhooks`\n * @summary List voice agent webhooks\n */\nexport const listAgentWebhooks = async (\n voiceAgentId: string,\n params?: ListAgentWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListAgentWebhooksEnvelope> => {\n return customFetch<ListAgentWebhooksEnvelope>(\n getListAgentWebhooksUrl(voiceAgentId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListAgentWebhooksKey = (\n voiceAgentId: string,\n params?: ListAgentWebhooksParams\n) =>\n [\n `/v1/voice-agents/${voiceAgentId}/webhooks`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type ListAgentWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listAgentWebhooks>>\n>;\n\n/**\n * @summary List voice agent webhooks\n */\nexport const useListAgentWebhooks = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n params?: ListAgentWebhooksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listAgentWebhooks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListAgentWebhooksKey(voiceAgentId, params) : null));\n const swrFn = () => listAgentWebhooks(voiceAgentId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateInboxWebhookUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}/webhooks`;\n};\n\n/**\n * Create a webhook that fires when events occur for the specified inbox.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/email-agents/{id}/webhooks`\n * @summary Create inbox webhook\n */\nexport const createInboxWebhook = async (\n inboxId: string,\n createInboxWebhookBody?: CreateInboxWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateInboxWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateInboxWebhookEnvelope>(\n getCreateInboxWebhookUrl(inboxId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createInboxWebhookBody),\n }\n );\n};\n\nexport const getCreateInboxWebhookMutationFetcher = (\n inboxId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateInboxWebhookBody | undefined }) => {\n return createInboxWebhook(inboxId, arg, options);\n };\n};\nexport const getCreateInboxWebhookMutationKey = (inboxId: string) =>\n [`/v1/inboxes/${inboxId}/webhooks`] as const;\n\nexport type CreateInboxWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createInboxWebhook>>\n>;\n\n/**\n * @summary Create inbox webhook\n */\nexport const useCreateInboxWebhook = <TError = ErrorType<ErrorResponse>>(\n inboxId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createInboxWebhook>>,\n TError,\n Key,\n CreateInboxWebhookBody | undefined,\n Awaited<ReturnType<typeof createInboxWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateInboxWebhookMutationKey(inboxId);\n const swrFn = getCreateInboxWebhookMutationFetcher(inboxId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListInboxWebhooksUrl = (\n inboxId: string,\n params?: ListInboxWebhooksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/inboxes/${inboxId}/webhooks?${stringifiedParams}`\n : `/v1/inboxes/${inboxId}/webhooks`;\n};\n\n/**\n * List all webhooks configured for a specific inbox.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/email-agents/{id}/webhooks`\n * @summary List inbox webhooks\n */\nexport const listInboxWebhooks = async (\n inboxId: string,\n params?: ListInboxWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListInboxWebhooksEnvelope> => {\n return customFetch<ListInboxWebhooksEnvelope>(\n getListInboxWebhooksUrl(inboxId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListInboxWebhooksKey = (\n inboxId: string,\n params?: ListInboxWebhooksParams\n) => [`/v1/inboxes/${inboxId}/webhooks`, ...(params ? [params] : [])] as const;\n\nexport type ListInboxWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listInboxWebhooks>>\n>;\n\n/**\n * @summary List inbox webhooks\n */\nexport const useListInboxWebhooks = <TError = ErrorType<ErrorResponse>>(\n inboxId: string,\n params?: ListInboxWebhooksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listInboxWebhooks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && inboxId !== null && inboxId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListInboxWebhooksKey(inboxId, params) : null));\n const swrFn = () => listInboxWebhooks(inboxId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateExtractorWebhookUrl = (id: string) => {\n return `/v1/extractors/${id}/webhooks`;\n};\n\n/**\n * Create a webhook that fires when extraction events occur for the specified extractor.\n * @summary Create extractor webhook\n */\nexport const createExtractorWebhook = async (\n id: string,\n createExtractorWebhookBody?: CreateExtractorWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateExtractorWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateExtractorWebhookEnvelope>(\n getCreateExtractorWebhookUrl(id),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createExtractorWebhookBody),\n }\n );\n};\n\nexport const getCreateExtractorWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorWebhookBody | undefined }) => {\n return createExtractorWebhook(id, arg, options);\n };\n};\nexport const getCreateExtractorWebhookMutationKey = (id: string) =>\n [`/v1/extractors/${id}/webhooks`] as const;\n\nexport type CreateExtractorWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createExtractorWebhook>>\n>;\n\n/**\n * @summary Create extractor webhook\n */\nexport const useCreateExtractorWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createExtractorWebhook>>,\n TError,\n Key,\n CreateExtractorWebhookBody | undefined,\n Awaited<ReturnType<typeof createExtractorWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateExtractorWebhookMutationKey(id);\n const swrFn = getCreateExtractorWebhookMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWebhooksUrl = (id: string, params?: ListWebhooksParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractors/${id}/webhooks?${stringifiedParams}`\n : `/v1/extractors/${id}/webhooks`;\n};\n\n/**\n * List all webhooks configured for a specific extractor.\n * @summary List extractor webhooks\n */\nexport const listWebhooks = async (\n id: string,\n params?: ListWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWebhooksEnvelope> => {\n return customFetch<ListWebhooksEnvelope>(getListWebhooksUrl(id, params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWebhooksKey = (id: string, params?: ListWebhooksParams) =>\n [`/v1/extractors/${id}/webhooks`, ...(params ? [params] : [])] as const;\n\nexport type ListWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWebhooks>>\n>;\n\n/**\n * @summary List extractor webhooks\n */\nexport const useListWebhooks = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListWebhooksParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listWebhooks>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWebhooksKey(id, params) : null));\n const swrFn = () => listWebhooks(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateNotificationWebhookUrl = () => {\n return `/v1/notifications/webhooks`;\n};\n\n/**\n * Create a webhook that fires whenever a notification is raised for the organization.\n *\n * Notifications belong to the organization rather than to a resource, so this webhook is not attached to anything: its `scope` is `{ \"notifications\": true }` and it receives every notification the organization raises. Each delivery carries the notification's `title` and `body` — the same display text `GET /v1/notifications` returns — alongside the structured `data` it points at.\n *\n * Notifications are not environment-specific, so every delivery is `live`. A webhook that names only `test` receives nothing.\n * @summary Create notification webhook\n */\nexport const createNotificationWebhook = async (\n createNotificationWebhookBody?: CreateNotificationWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateNotificationWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateNotificationWebhookEnvelope>(\n getCreateNotificationWebhookUrl(),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createNotificationWebhookBody),\n }\n );\n};\n\nexport const getCreateNotificationWebhookMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: CreateNotificationWebhookBody | undefined }\n ) => {\n return createNotificationWebhook(arg, options);\n };\n};\nexport const getCreateNotificationWebhookMutationKey = () =>\n [`/v1/notifications/webhooks`] as const;\n\nexport type CreateNotificationWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createNotificationWebhook>>\n>;\n\n/**\n * @summary Create notification webhook\n */\nexport const useCreateNotificationWebhook = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createNotificationWebhook>>,\n TError,\n Key,\n CreateNotificationWebhookBody | undefined,\n Awaited<ReturnType<typeof createNotificationWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateNotificationWebhookMutationKey();\n const swrFn = getCreateNotificationWebhookMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListNotificationWebhooksUrl = (\n params?: ListNotificationWebhooksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/notifications/webhooks?${stringifiedParams}`\n : `/v1/notifications/webhooks`;\n};\n\n/**\n * List the webhooks that receive the organization's notifications.\n * @summary List notification webhooks\n */\nexport const listNotificationWebhooks = async (\n params?: ListNotificationWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListNotificationWebhooksEnvelope> => {\n return customFetch<ListNotificationWebhooksEnvelope>(\n getListNotificationWebhooksUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListNotificationWebhooksKey = (\n params?: ListNotificationWebhooksParams\n) => [`/v1/notifications/webhooks`, ...(params ? [params] : [])] as const;\n\nexport type ListNotificationWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listNotificationWebhooks>>\n>;\n\n/**\n * @summary List notification webhooks\n */\nexport const useListNotificationWebhooks = <TError = ErrorType<ErrorResponse>>(\n params?: ListNotificationWebhooksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listNotificationWebhooks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListNotificationWebhooksKey(params) : null));\n const swrFn = () => listNotificationWebhooks(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\n/**\n * Permanently delete a webhook. This action is irreversible.\n * @summary Delete webhook\n */\nexport const deleteWebhook = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteWebhookEnvelope> => {\n return customFetch<DeleteWebhookEnvelope>(getDeleteWebhookUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteWebhook(id, options);\n };\n};\nexport const getDeleteWebhookMutationKey = (id: string) =>\n [`/v1/webhooks/${id}`] as const;\n\nexport type DeleteWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteWebhook>>\n>;\n\n/**\n * @summary Delete webhook\n */\nexport const useDeleteWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteWebhook>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteWebhookMutationKey(id);\n const swrFn = getDeleteWebhookMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\n/**\n * Retrieve a single webhook by ID. The authentication header value is never exposed — only `has_auth` indicates whether authentication is configured.\n * @summary Get webhook\n */\nexport const getWebhook = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWebhookEnvelope> => {\n return customFetch<GetWebhookEnvelope>(getGetWebhookUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetWebhookKey = (id: string) => [`/v1/webhooks/${id}`] as const;\n\nexport type GetWebhookQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWebhook>>\n>;\n\n/**\n * @summary Get webhook\n */\nexport const useGetWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getWebhook>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetWebhookKey(id) : null));\n const swrFn = () => getWebhook(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\n/**\n * Update a webhook's name, destination, environments, enabled state, or authentication. Omitted fields are left unchanged, and at least one must be provided.\n * @summary Update webhook\n */\nexport const updateWebhook = async (\n id: string,\n updateWebhookBody?: UpdateWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateWebhookEnvelope>(getUpdateWebhookUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateWebhookBody),\n });\n};\n\nexport const getUpdateWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateWebhookBody | undefined }) => {\n return updateWebhook(id, arg, options);\n };\n};\nexport const getUpdateWebhookMutationKey = (id: string) =>\n [`/v1/webhooks/${id}`] as const;\n\nexport type UpdateWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateWebhook>>\n>;\n\n/**\n * @summary Update webhook\n */\nexport const useUpdateWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateWebhook>>,\n TError,\n Key,\n UpdateWebhookBody | undefined,\n Awaited<ReturnType<typeof updateWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateWebhookMutationKey(id);\n const swrFn = getUpdateWebhookMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWebhookDeliveriesUrl = (\n id: string,\n params?: ListWebhookDeliveriesParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/webhooks/${id}/deliveries?${stringifiedParams}`\n : `/v1/webhooks/${id}/deliveries`;\n};\n\n/**\n * List delivery attempts for a specific webhook, with pagination and sorting. Useful for debugging webhook issues.\n * @summary List webhook deliveries\n */\nexport const listWebhookDeliveries = async (\n id: string,\n params?: ListWebhookDeliveriesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWebhookDeliveriesEnvelope> => {\n return customFetch<ListWebhookDeliveriesEnvelope>(\n getListWebhookDeliveriesUrl(id, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListWebhookDeliveriesKey = (\n id: string,\n params?: ListWebhookDeliveriesParams\n) => [`/v1/webhooks/${id}/deliveries`, ...(params ? [params] : [])] as const;\n\nexport type ListWebhookDeliveriesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWebhookDeliveries>>\n>;\n\n/**\n * @summary List webhook deliveries\n */\nexport const useListWebhookDeliveries = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListWebhookDeliveriesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWebhookDeliveries>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWebhookDeliveriesKey(id, params) : null));\n const swrFn = () => listWebhookDeliveries(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getTestWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}/test`;\n};\n\n/**\n * Send a test event to a webhook endpoint. Returns the HTTP status code, response time, and any errors. The request is rejected with a 400 if the webhook does not target the given environment, since a successful ping would say nothing about events it will never receive.\n * @summary Test webhook\n */\nexport const testWebhook = async (\n id: string,\n testWebhookBody?: TestWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<TestWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<TestWebhookEnvelope>(getTestWebhookUrl(id), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(testWebhookBody),\n });\n};\n\nexport const getTestWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: TestWebhookBody | undefined }) => {\n return testWebhook(id, arg, options);\n };\n};\nexport const getTestWebhookMutationKey = (id: string) =>\n [`/v1/webhooks/${id}/test`] as const;\n\nexport type TestWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof testWebhook>>\n>;\n\n/**\n * @summary Test webhook\n */\nexport const useTestWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof testWebhook>>,\n TError,\n Key,\n TestWebhookBody | undefined,\n Awaited<ReturnType<typeof testWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getTestWebhookMutationKey(id);\n const swrFn = getTestWebhookMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CancelWorkerRunEnvelope,\n CreateWorkerRunBody,\n CreateWorkerRunEnvelope,\n ErrorResponse,\n GetWorkerRunEnvelope,\n ListWorkerRunMessagesEnvelope,\n ListWorkerRunMessagesParams,\n ListWorkerRunsEnvelope,\n ListWorkerRunsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListWorkerRunsUrl = (params?: ListWorkerRunsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"scope\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/worker-runs?${stringifiedParams}`\n : `/v1/worker-runs`;\n};\n\n/**\n * List all worker runs with pagination, filtering, and sorting.\n *\n * **Scope Filtering:**\n *\n * Use bracket notation to filter by scope keys:\n * - `scope[call_id]=abc-123`\n * - `scope[email_id]=xyz-456`\n *\n * Multiple scope filters can be combined (AND logic).\n * @summary List worker runs\n */\nexport const listWorkerRuns = async (\n params?: ListWorkerRunsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerRunsEnvelope> => {\n return customFetch<ListWorkerRunsEnvelope>(getListWorkerRunsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWorkerRunsKey = (params?: ListWorkerRunsParams) =>\n [`/v1/worker-runs`, ...(params ? [params] : [])] as const;\n\nexport type ListWorkerRunsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerRuns>>\n>;\n\n/**\n * @summary List worker runs\n */\nexport const useListWorkerRuns = <TError = ErrorType<ErrorResponse>>(\n params?: ListWorkerRunsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerRuns>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkerRunsKey(params) : null));\n const swrFn = () => listWorkerRuns(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateWorkerRunUrl = () => {\n return `/v1/worker-runs`;\n};\n\n/**\n * Create a new worker run for the specified worker.\n *\n * Provide a `scope` object with at least one key to define which artifacts the worker should process (e.g. `{ \"claim_id\": \"abc-123\" }`). The run stays `pending` until those artifacts are ready.\n *\n * Pass `null` to run the worker without any artifacts — the run is queued immediately. An empty object is rejected.\n * @summary Create worker run\n */\nexport const createWorkerRun = async (\n createWorkerRunBody?: CreateWorkerRunBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateWorkerRunEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateWorkerRunEnvelope>(getCreateWorkerRunUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createWorkerRunBody),\n });\n};\n\nexport const getCreateWorkerRunMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerRunBody | undefined }) => {\n return createWorkerRun(arg, options);\n };\n};\nexport const getCreateWorkerRunMutationKey = () => [`/v1/worker-runs`] as const;\n\nexport type CreateWorkerRunMutationResult = NonNullable<\n Awaited<ReturnType<typeof createWorkerRun>>\n>;\n\n/**\n * @summary Create worker run\n */\nexport const useCreateWorkerRun = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createWorkerRun>>,\n TError,\n Key,\n CreateWorkerRunBody | undefined,\n Awaited<ReturnType<typeof createWorkerRun>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateWorkerRunMutationKey();\n const swrFn = getCreateWorkerRunMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerRunUrl = (workerRunId: string) => {\n return `/v1/worker-runs/${workerRunId}`;\n};\n\n/**\n * Retrieve detailed information about a specific worker run, including its status, timing, and errors.\n * @summary Get worker run\n */\nexport const getWorkerRun = async (\n workerRunId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerRunEnvelope> => {\n return customFetch<GetWorkerRunEnvelope>(getGetWorkerRunUrl(workerRunId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetWorkerRunKey = (workerRunId: string) =>\n [`/v1/worker-runs/${workerRunId}`] as const;\n\nexport type GetWorkerRunQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorkerRun>>\n>;\n\n/**\n * @summary Get worker run\n */\nexport const useGetWorkerRun = <TError = ErrorType<ErrorResponse>>(\n workerRunId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getWorkerRun>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerRunId !== null &&\n workerRunId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetWorkerRunKey(workerRunId) : null));\n const swrFn = () => getWorkerRun(workerRunId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkerRunMessagesUrl = (\n workerRunId: string,\n params?: ListWorkerRunMessagesParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/worker-runs/${workerRunId}/messages?${stringifiedParams}`\n : `/v1/worker-runs/${workerRunId}/messages`;\n};\n\n/**\n * Retrieve messages emitted during a worker run, ordered by emission time. Supports cursor-style pagination via `after` and `count`.\n * @summary List worker run messages\n */\nexport const listWorkerRunMessages = async (\n workerRunId: string,\n params?: ListWorkerRunMessagesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerRunMessagesEnvelope> => {\n return customFetch<ListWorkerRunMessagesEnvelope>(\n getListWorkerRunMessagesUrl(workerRunId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListWorkerRunMessagesKey = (\n workerRunId: string,\n params?: ListWorkerRunMessagesParams\n) =>\n [\n `/v1/worker-runs/${workerRunId}/messages`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type ListWorkerRunMessagesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerRunMessages>>\n>;\n\n/**\n * @summary List worker run messages\n */\nexport const useListWorkerRunMessages = <TError = ErrorType<ErrorResponse>>(\n workerRunId: string,\n params?: ListWorkerRunMessagesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerRunMessages>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerRunId !== null &&\n workerRunId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getListWorkerRunMessagesKey(workerRunId, params) : null);\n const swrFn = () =>\n listWorkerRunMessages(workerRunId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCancelWorkerRunUrl = (workerRunId: string) => {\n return `/v1/worker-runs/${workerRunId}/cancel`;\n};\n\n/**\n * Cancel a worker run. For in_progress runs, the underlying E2B sandbox is terminated when possible. Pending and queued runs are simply marked canceled. Runs that are starting are still being handed their context and cannot be interrupted, so they cannot be canceled until they reach in_progress. Runs in terminal states (completed, failed) cannot be canceled. Already-canceled runs are returned without side effects.\n * @summary Cancel a worker run\n */\nexport const cancelWorkerRun = async (\n workerRunId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CancelWorkerRunEnvelope> => {\n return customFetch<CancelWorkerRunEnvelope>(\n getCancelWorkerRunUrl(workerRunId),\n {\n ...options,\n method: \"POST\",\n }\n );\n};\n\nexport const getCancelWorkerRunMutationFetcher = (\n workerRunId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return cancelWorkerRun(workerRunId, options);\n };\n};\nexport const getCancelWorkerRunMutationKey = (workerRunId: string) =>\n [`/v1/worker-runs/${workerRunId}/cancel`] as const;\n\nexport type CancelWorkerRunMutationResult = NonNullable<\n Awaited<ReturnType<typeof cancelWorkerRun>>\n>;\n\n/**\n * @summary Cancel a worker run\n */\nexport const useCancelWorkerRun = <TError = ErrorType<ErrorResponse>>(\n workerRunId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof cancelWorkerRun>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof cancelWorkerRun>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCancelWorkerRunMutationKey(workerRunId);\n const swrFn = getCancelWorkerRunMutationFetcher(workerRunId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport type { Key } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n ErrorResponse,\n NotifyAdminBody,\n NotifyAdminEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getNotifyAdminUrl = () => {\n return `/worker/v1/notifications`;\n};\n\n/**\n * Report a problem to the people who run this organization.\n *\n * Use this for something a human has to resolve — a login that no longer works, a document you cannot read, a system that will not let you in, instructions that contradict what you found. The report goes to the organization's notifications; nobody sees it while the run is happening, so it does not unblock you now. Carry on with what you can still do, or stop, and say in your final report that you raised it.\n *\n * Do not use it for progress updates or for anything you can work around yourself.\n * @summary Notify an admin\n */\nexport const notifyAdmin = async (\n notifyAdminBody?: NotifyAdminBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<NotifyAdminEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<NotifyAdminEnvelope>(getNotifyAdminUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(notifyAdminBody),\n });\n};\n\nexport const getNotifyAdminMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: NotifyAdminBody | undefined }) => {\n return notifyAdmin(arg, options);\n };\n};\nexport const getNotifyAdminMutationKey = () =>\n [`/worker/v1/notifications`] as const;\n\nexport type NotifyAdminMutationResult = NonNullable<\n Awaited<ReturnType<typeof notifyAdmin>>\n>;\n\n/**\n * @summary Notify an admin\n */\nexport const useNotifyAdmin = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof notifyAdmin>>,\n TError,\n Key,\n NotifyAdminBody | undefined,\n Awaited<ReturnType<typeof notifyAdmin>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getNotifyAdminMutationKey();\n const swrFn = getNotifyAdminMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateWorkerBody,\n CreateWorkerEnvelope,\n DeleteWorkerEnvelope,\n ErrorResponse,\n GetWorkerEnvelope,\n GetWorkerPromptEnvelope,\n GetWorkerPromptParams,\n GetWorkerVersionChangeSummaryEnvelope,\n GetWorkerVersionEnvelope,\n ListWorkerModelsEnvelope,\n ListWorkerVersionsEnvelope,\n ListWorkerVersionsParams,\n ListWorkersEnvelope,\n ListWorkersParams,\n PromoteWorkerVersionBody,\n PromoteWorkerVersionEnvelope,\n UpdateWorkerBody,\n UpdateWorkerEnvelope,\n UpdateWorkerMcpsBody,\n UpdateWorkerMcpsEnvelope,\n UpdateWorkerPromptBody,\n UpdateWorkerPromptEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateWorkerUrl = () => {\n return `/v1/workers`;\n};\n\n/**\n * Create a new worker with a name and prompt.\n * @summary Create worker\n */\nexport const createWorker = async (\n createWorkerBody?: CreateWorkerBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateWorkerEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateWorkerEnvelope>(getCreateWorkerUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createWorkerBody),\n });\n};\n\nexport const getCreateWorkerMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerBody | undefined }) => {\n return createWorker(arg, options);\n };\n};\nexport const getCreateWorkerMutationKey = () => [`/v1/workers`] as const;\n\nexport type CreateWorkerMutationResult = NonNullable<\n Awaited<ReturnType<typeof createWorker>>\n>;\n\n/**\n * @summary Create worker\n */\nexport const useCreateWorker = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createWorker>>,\n TError,\n Key,\n CreateWorkerBody | undefined,\n Awaited<ReturnType<typeof createWorker>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateWorkerMutationKey();\n const swrFn = getCreateWorkerMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkersUrl = (params?: ListWorkersParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers?${stringifiedParams}`\n : `/v1/workers`;\n};\n\n/**\n * List all workers with pagination, filtering, and sorting.\n *\n * Filter by name using the `name` query parameter.\n * @summary List workers\n */\nexport const listWorkers = async (\n params?: ListWorkersParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkersEnvelope> => {\n return customFetch<ListWorkersEnvelope>(getListWorkersUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWorkersKey = (params?: ListWorkersParams) =>\n [`/v1/workers`, ...(params ? [params] : [])] as const;\n\nexport type ListWorkersQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkers>>\n>;\n\n/**\n * @summary List workers\n */\nexport const useListWorkers = <TError = ErrorType<ErrorResponse>>(\n params?: ListWorkersParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listWorkers>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkersKey(params) : null));\n const swrFn = () => listWorkers(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerUrl = (workerId: string) => {\n return `/v1/workers/${workerId}`;\n};\n\n/**\n * Retrieve a single worker by ID.\n * @summary Get worker\n */\nexport const getWorker = async (\n workerId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerEnvelope> => {\n return customFetch<GetWorkerEnvelope>(getGetWorkerUrl(workerId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetWorkerKey = (workerId: string) =>\n [`/v1/workers/${workerId}`] as const;\n\nexport type GetWorkerQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorker>>\n>;\n\n/**\n * @summary Get worker\n */\nexport const useGetWorker = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getWorker>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetWorkerKey(workerId) : null));\n const swrFn = () => getWorker(workerId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteWorkerUrl = (workerId: string) => {\n return `/v1/workers/${workerId}`;\n};\n\n/**\n * Delete a worker. The worker is hidden from all reads; its run history is preserved.\n * @summary Delete worker\n */\nexport const deleteWorker = async (\n workerId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteWorkerEnvelope> => {\n return customFetch<DeleteWorkerEnvelope>(getDeleteWorkerUrl(workerId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteWorkerMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteWorker(workerId, options);\n };\n};\nexport const getDeleteWorkerMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}`] as const;\n\nexport type DeleteWorkerMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteWorker>>\n>;\n\n/**\n * @summary Delete worker\n */\nexport const useDeleteWorker = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteWorker>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteWorker>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteWorkerMutationKey(workerId);\n const swrFn = getDeleteWorkerMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateWorkerUrl = (workerId: string) => {\n return `/v1/workers/${workerId}`;\n};\n\n/**\n * Update the configuration of a worker, including the attached tool set.\n * @summary Update worker\n */\nexport const updateWorker = async (\n workerId: string,\n updateWorkerBody?: UpdateWorkerBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateWorkerEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateWorkerEnvelope>(getUpdateWorkerUrl(workerId), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateWorkerBody),\n });\n};\n\nexport const getUpdateWorkerMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateWorkerBody | undefined }) => {\n return updateWorker(workerId, arg, options);\n };\n};\nexport const getUpdateWorkerMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}`] as const;\n\nexport type UpdateWorkerMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateWorker>>\n>;\n\n/**\n * @summary Update worker\n */\nexport const useUpdateWorker = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateWorker>>,\n TError,\n Key,\n UpdateWorkerBody | undefined,\n Awaited<ReturnType<typeof updateWorker>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateWorkerMutationKey(workerId);\n const swrFn = getUpdateWorkerMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerPromptUrl = (\n workerId: string,\n params?: GetWorkerPromptParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers/${workerId}/prompt?${stringifiedParams}`\n : `/v1/workers/${workerId}/prompt`;\n};\n\n/**\n * Retrieve the prompt for a worker. Pass `version` to fetch the prompt snapshot at a specific config version; omit it to fetch the current prompt. Internal use only.\n * @summary Get worker prompt\n */\nexport const getWorkerPrompt = async (\n workerId: string,\n params?: GetWorkerPromptParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerPromptEnvelope> => {\n return customFetch<GetWorkerPromptEnvelope>(\n getGetWorkerPromptUrl(workerId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetWorkerPromptKey = (\n workerId: string,\n params?: GetWorkerPromptParams\n) => [`/v1/workers/${workerId}/prompt`, ...(params ? [params] : [])] as const;\n\nexport type GetWorkerPromptQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorkerPrompt>>\n>;\n\n/**\n * @summary Get worker prompt\n */\nexport const useGetWorkerPrompt = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n params?: GetWorkerPromptParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getWorkerPrompt>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetWorkerPromptKey(workerId, params) : null));\n const swrFn = () => getWorkerPrompt(workerId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateWorkerPromptUrl = (workerId: string) => {\n return `/v1/workers/${workerId}/prompt`;\n};\n\n/**\n * Update the prompt for a worker. Internal use only.\n * @summary Update worker prompt\n */\nexport const updateWorkerPrompt = async (\n workerId: string,\n updateWorkerPromptBody?: UpdateWorkerPromptBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateWorkerPromptEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateWorkerPromptEnvelope>(\n getUpdateWorkerPromptUrl(workerId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateWorkerPromptBody),\n }\n );\n};\n\nexport const getUpdateWorkerPromptMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateWorkerPromptBody | undefined }) => {\n return updateWorkerPrompt(workerId, arg, options);\n };\n};\nexport const getUpdateWorkerPromptMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}/prompt`] as const;\n\nexport type UpdateWorkerPromptMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateWorkerPrompt>>\n>;\n\n/**\n * @summary Update worker prompt\n */\nexport const useUpdateWorkerPrompt = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateWorkerPrompt>>,\n TError,\n Key,\n UpdateWorkerPromptBody | undefined,\n Awaited<ReturnType<typeof updateWorkerPrompt>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateWorkerPromptMutationKey(workerId);\n const swrFn = getUpdateWorkerPromptMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkerModelsUrl = () => {\n return `/v1/worker-models`;\n};\n\n/**\n * List the LLM models that can be assigned to a worker via the `model` field on update.\n * @summary List available worker models\n */\nexport const listWorkerModels = async (\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerModelsEnvelope> => {\n return customFetch<ListWorkerModelsEnvelope>(getListWorkerModelsUrl(), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWorkerModelsKey = () => [`/v1/worker-models`] as const;\n\nexport type ListWorkerModelsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerModels>>\n>;\n\n/**\n * @summary List available worker models\n */\nexport const useListWorkerModels = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerModels>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListWorkerModelsKey() : null));\n const swrFn = () => listWorkerModels(requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateWorkerMcpsUrl = (workerId: string) => {\n return `/v1/workers/${workerId}/mcps`;\n};\n\n/**\n * Replace the set of MCP servers a worker connects to. Pass an empty array to disconnect.\n * @summary Update worker MCP servers\n */\nexport const updateWorkerMcps = async (\n workerId: string,\n updateWorkerMcpsBody?: UpdateWorkerMcpsBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateWorkerMcpsEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateWorkerMcpsEnvelope>(\n getUpdateWorkerMcpsUrl(workerId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateWorkerMcpsBody),\n }\n );\n};\n\nexport const getUpdateWorkerMcpsMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateWorkerMcpsBody | undefined }) => {\n return updateWorkerMcps(workerId, arg, options);\n };\n};\nexport const getUpdateWorkerMcpsMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}/mcps`] as const;\n\nexport type UpdateWorkerMcpsMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateWorkerMcps>>\n>;\n\n/**\n * @summary Update worker MCP servers\n */\nexport const useUpdateWorkerMcps = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateWorkerMcps>>,\n TError,\n Key,\n UpdateWorkerMcpsBody | undefined,\n Awaited<ReturnType<typeof updateWorkerMcps>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateWorkerMcpsMutationKey(workerId);\n const swrFn = getUpdateWorkerMcpsMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkerVersionsUrl = (\n workerId: string,\n params?: ListWorkerVersionsParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers/${workerId}/versions?${stringifiedParams}`\n : `/v1/workers/${workerId}/versions`;\n};\n\n/**\n * List all config versions for a worker, ordered by version (newest first by default).\n * @summary List worker versions\n */\nexport const listWorkerVersions = async (\n workerId: string,\n params?: ListWorkerVersionsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerVersionsEnvelope> => {\n return customFetch<ListWorkerVersionsEnvelope>(\n getListWorkerVersionsUrl(workerId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListWorkerVersionsKey = (\n workerId: string,\n params?: ListWorkerVersionsParams\n) => [`/v1/workers/${workerId}/versions`, ...(params ? [params] : [])] as const;\n\nexport type ListWorkerVersionsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerVersions>>\n>;\n\n/**\n * @summary List worker versions\n */\nexport const useListWorkerVersions = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n params?: ListWorkerVersionsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerVersions>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkerVersionsKey(workerId, params) : null));\n const swrFn = () => listWorkerVersions(workerId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerVersionUrl = (workerId: string, version: number) => {\n return `/v1/workers/${workerId}/versions/${version}`;\n};\n\n/**\n * Retrieve a single worker config version, including the worker's identity, the config snapshot at that version, and version-specific metadata. The prompt is served separately by the worker prompt endpoint.\n * @summary Get worker version\n */\nexport const getWorkerVersion = async (\n workerId: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerVersionEnvelope> => {\n return customFetch<GetWorkerVersionEnvelope>(\n getGetWorkerVersionUrl(workerId, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetWorkerVersionKey = (workerId: string, version: number) =>\n [`/v1/workers/${workerId}/versions/${version}`] as const;\n\nexport type GetWorkerVersionQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorkerVersion>>\n>;\n\n/**\n * @summary Get worker version\n */\nexport const useGetWorkerVersion = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getWorkerVersion>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetWorkerVersionKey(workerId, version) : null));\n const swrFn = () => getWorkerVersion(workerId, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPromoteWorkerVersionUrl = (\n workerId: string,\n version: number\n) => {\n return `/v1/workers/${workerId}/versions/${version}/promote`;\n};\n\n/**\n * Select a worker configuration version for the live or test environment. This freezes the config snapshot only — the E2B template, attached tools and attached secrets are not versioned and always resolve to their current values.\n * @summary Promote worker version\n */\nexport const promoteWorkerVersion = async (\n workerId: string,\n version: number,\n promoteWorkerVersionBody?: PromoteWorkerVersionBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<PromoteWorkerVersionEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<PromoteWorkerVersionEnvelope>(\n getPromoteWorkerVersionUrl(workerId, version),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(promoteWorkerVersionBody),\n }\n );\n};\n\nexport const getPromoteWorkerVersionMutationFetcher = (\n workerId: string,\n version: number,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: PromoteWorkerVersionBody | undefined }) => {\n return promoteWorkerVersion(workerId, version, arg, options);\n };\n};\nexport const getPromoteWorkerVersionMutationKey = (\n workerId: string,\n version: number\n) => [`/v1/workers/${workerId}/versions/${version}/promote`] as const;\n\nexport type PromoteWorkerVersionMutationResult = NonNullable<\n Awaited<ReturnType<typeof promoteWorkerVersion>>\n>;\n\n/**\n * @summary Promote worker version\n */\nexport const usePromoteWorkerVersion = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n version: number,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof promoteWorkerVersion>>,\n TError,\n Key,\n PromoteWorkerVersionBody | undefined,\n Awaited<ReturnType<typeof promoteWorkerVersion>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getPromoteWorkerVersionMutationKey(workerId, version);\n const swrFn = getPromoteWorkerVersionMutationFetcher(\n workerId,\n version,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerVersionChangeSummaryUrl = (\n workerId: string,\n version: number\n) => {\n return `/v1/workers/${workerId}/versions/${version}/change-summary`;\n};\n\n/**\n * Returns an AI-generated summary of what changed between this version and the previous one. Initial version returns an empty string since there is no predecessor.\n * @summary Get worker version change summary\n */\nexport const getWorkerVersionChangeSummary = async (\n workerId: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerVersionChangeSummaryEnvelope> => {\n return customFetch<GetWorkerVersionChangeSummaryEnvelope>(\n getGetWorkerVersionChangeSummaryUrl(workerId, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetWorkerVersionChangeSummaryKey = (\n workerId: string,\n version: number\n) => [`/v1/workers/${workerId}/versions/${version}/change-summary`] as const;\n\nexport type GetWorkerVersionChangeSummaryQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorkerVersionChangeSummary>>\n>;\n\n/**\n * @summary Get worker version change summary\n */\nexport const useGetWorkerVersionChangeSummary = <\n TError = ErrorType<ErrorResponse>,\n>(\n workerId: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getWorkerVersionChangeSummary>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled\n ? getGetWorkerVersionChangeSummaryKey(workerId, version)\n : null);\n const swrFn = () =>\n getWorkerVersionChangeSummary(workerId, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AddCaseLinksBodyEntitiesItemEntityType =\n (typeof AddCaseLinksBodyEntitiesItemEntityType)[keyof typeof AddCaseLinksBodyEntitiesItemEntityType];\n\nexport const AddCaseLinksBodyEntitiesItemEntityType = {\n artifact: \"artifact\",\n call: \"call\",\n chat: \"chat\",\n email: \"email\",\n extract: \"extract\",\n information_request: \"information_request\",\n schedule: \"schedule\",\n worker_run: \"worker_run\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AddCaseLinksEnvironment =\n (typeof AddCaseLinksEnvironment)[keyof typeof AddCaseLinksEnvironment];\n\nexport const AddCaseLinksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AnalyticsTimeSeriesGranularity =\n (typeof AnalyticsTimeSeriesGranularity)[keyof typeof AnalyticsTimeSeriesGranularity];\n\nexport const AnalyticsTimeSeriesGranularity = {\n day: \"day\",\n week: \"week\",\n month: \"month\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AnalyticsTimeSeriesGroupBy =\n | (typeof AnalyticsTimeSeriesGroupBy)[keyof typeof AnalyticsTimeSeriesGroupBy]\n | null;\n\nexport const AnalyticsTimeSeriesGroupBy = {\n worker_id: \"worker_id\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AnalyticsTimeSeriesMetric =\n (typeof AnalyticsTimeSeriesMetric)[keyof typeof AnalyticsTimeSeriesMetric];\n\nexport const AnalyticsTimeSeriesMetric = {\n worker_runs: \"worker_runs\",\n documents: \"documents\",\n pages: \"pages\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Role granted to this API key\n */\nexport type ApiKeyCreatedRole =\n (typeof ApiKeyCreatedRole)[keyof typeof ApiKeyCreatedRole];\n\nexport const ApiKeyCreatedRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Role granted to this API key\n */\nexport type ApiKeyRole = (typeof ApiKeyRole)[keyof typeof ApiKeyRole];\n\nexport const ApiKeyRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ArtifactDetailDataStatus =\n (typeof ArtifactDetailDataStatus)[keyof typeof ArtifactDetailDataStatus];\n\nexport const ArtifactDetailDataStatus = {\n processing: \"processing\",\n parsed: \"parsed\",\n raw: \"raw\",\n missing: \"missing\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ArtifactStatus =\n (typeof ArtifactStatus)[keyof typeof ArtifactStatus];\n\nexport const ArtifactStatus = {\n processing: \"processing\",\n parsed: \"parsed\",\n raw: \"raw\",\n missing: \"missing\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CallDetailDirection =\n (typeof CallDetailDirection)[keyof typeof CallDetailDirection];\n\nexport const CallDetailDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel that handled the call. Test calls hand over to the worker's test version.\n */\nexport type CallDetailEnvironment =\n (typeof CallDetailEnvironment)[keyof typeof CallDetailEnvironment];\n\nexport const CallDetailEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CallDirection = (typeof CallDirection)[keyof typeof CallDirection];\n\nexport const CallDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel that handled the call. Test calls hand over to the worker's test version.\n */\nexport type CallEnvironment =\n (typeof CallEnvironment)[keyof typeof CallEnvironment];\n\nexport const CallEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CaseLinkEntityType =\n (typeof CaseLinkEntityType)[keyof typeof CaseLinkEntityType];\n\nexport const CaseLinkEntityType = {\n artifact: \"artifact\",\n call: \"call\",\n chat: \"chat\",\n email: \"email\",\n extract: \"extract\",\n information_request: \"information_request\",\n schedule: \"schedule\",\n worker_run: \"worker_run\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CaseSummaryEnvironment =\n (typeof CaseSummaryEnvironment)[keyof typeof CaseSummaryEnvironment];\n\nexport const CaseSummaryEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ChatHistoryMessagesItemRole =\n (typeof ChatHistoryMessagesItemRole)[keyof typeof ChatHistoryMessagesItemRole];\n\nexport const ChatHistoryMessagesItemRole = {\n user: \"user\",\n assistant: \"assistant\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ChatMessageRole =\n (typeof ChatMessageRole)[keyof typeof ChatMessageRole];\n\nexport const ChatMessageRole = {\n user: \"user\",\n assistant: \"assistant\",\n tool: \"tool\",\n system: \"system\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateAgentWebhookBodyEnvironmentsItem =\n (typeof CreateAgentWebhookBodyEnvironmentsItem)[keyof typeof CreateAgentWebhookBodyEnvironmentsItem];\n\nexport const CreateAgentWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Target environment for the key\n */\nexport type CreateApiKeyBodyEnvironment =\n (typeof CreateApiKeyBodyEnvironment)[keyof typeof CreateApiKeyBodyEnvironment];\n\nexport const CreateApiKeyBodyEnvironment = {\n test: \"test\",\n live: \"live\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Role granted to this API key (defaults to admin). Caller's role caps the maximum grantable role.\n */\nexport type CreateApiKeyBodyRole =\n (typeof CreateApiKeyBodyRole)[keyof typeof CreateApiKeyBodyRole];\n\nexport const CreateApiKeyBodyRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateCaseBodyEnvironment =\n (typeof CreateCaseBodyEnvironment)[keyof typeof CreateCaseBodyEnvironment];\n\nexport const CreateCaseBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateExtractorWebhookBodyEnvironmentsItem =\n (typeof CreateExtractorWebhookBodyEnvironmentsItem)[keyof typeof CreateExtractorWebhookBodyEnvironmentsItem];\n\nexport const CreateExtractorWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of processor. Defaults to 'extractor' when extractor_id is used.\n */\nexport type CreateInboxBodyProcessorType =\n (typeof CreateInboxBodyProcessorType)[keyof typeof CreateInboxBodyProcessorType];\n\nexport const CreateInboxBodyProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateInboxWebhookBodyEnvironmentsItem =\n (typeof CreateInboxWebhookBodyEnvironmentsItem)[keyof typeof CreateInboxWebhookBodyEnvironmentsItem];\n\nexport const CreateInboxWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateNotificationWebhookBodyEnvironmentsItem =\n (typeof CreateNotificationWebhookBodyEnvironmentsItem)[keyof typeof CreateNotificationWebhookBodyEnvironmentsItem];\n\nexport const CreateNotificationWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateScheduleBodyEnvironmentsItem =\n (typeof CreateScheduleBodyEnvironmentsItem)[keyof typeof CreateScheduleBodyEnvironmentsItem];\n\nexport const CreateScheduleBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of processor: extractor or worker\n */\nexport type CreateVoiceAgentBodyCallProcessorType =\n (typeof CreateVoiceAgentBodyCallProcessorType)[keyof typeof CreateVoiceAgentBodyCallProcessorType];\n\nexport const CreateVoiceAgentBodyCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Call direction the agent handles\n */\nexport type CreateVoiceAgentBodyDirection =\n (typeof CreateVoiceAgentBodyDirection)[keyof typeof CreateVoiceAgentBodyDirection];\n\nexport const CreateVoiceAgentBodyDirection = {\n OUTBOUND: \"OUTBOUND\",\n INBOUND: \"INBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Language for the agent\n */\nexport type CreateVoiceAgentBodyLanguage =\n (typeof CreateVoiceAgentBodyLanguage)[keyof typeof CreateVoiceAgentBodyLanguage];\n\nexport const CreateVoiceAgentBodyLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * LLM model for conversation\n */\nexport type CreateVoiceAgentBodyLlmModel =\n (typeof CreateVoiceAgentBodyLlmModel)[keyof typeof CreateVoiceAgentBodyLlmModel];\n\nexport const CreateVoiceAgentBodyLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Speech-to-text model\n */\nexport type CreateVoiceAgentBodySttModel =\n (typeof CreateVoiceAgentBodySttModel)[keyof typeof CreateVoiceAgentBodySttModel];\n\nexport const CreateVoiceAgentBodySttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Text-to-speech model\n */\nexport type CreateVoiceAgentBodyTtsModel =\n (typeof CreateVoiceAgentBodyTtsModel)[keyof typeof CreateVoiceAgentBodyTtsModel];\n\nexport const CreateVoiceAgentBodyTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Text-to-speech provider\n */\nexport type CreateVoiceAgentBodyTtsProvider =\n (typeof CreateVoiceAgentBodyTtsProvider)[keyof typeof CreateVoiceAgentBodyTtsProvider];\n\nexport const CreateVoiceAgentBodyTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWorkerBodyMcpType =\n | (typeof CreateWorkerBodyMcpType)[keyof typeof CreateWorkerBodyMcpType]\n | null;\n\nexport const CreateWorkerBodyMcpType = {\n ventiv: \"ventiv\",\n klear: \"klear\",\n \"klear-browser\": \"klear-browser\",\n \"demo-browser\": \"demo-browser\",\n \"demo-claims\": \"demo-claims\",\n \"filehandler-browser\": \"filehandler-browser\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWorkerEvalFromRunEnvelopeDataSourceType =\n (typeof CreateWorkerEvalFromRunEnvelopeDataSourceType)[keyof typeof CreateWorkerEvalFromRunEnvelopeDataSourceType];\n\nexport const CreateWorkerEvalFromRunEnvelopeDataSourceType = {\n worker_run: \"worker_run\",\n chat: \"chat\",\n call: \"call\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWorkerEvalFromRunEnvelopeDataTargetType =\n (typeof CreateWorkerEvalFromRunEnvelopeDataTargetType)[keyof typeof CreateWorkerEvalFromRunEnvelopeDataTargetType];\n\nexport const CreateWorkerEvalFromRunEnvelopeDataTargetType = {\n worker: \"worker\",\n chat_agent: \"chat_agent\",\n voice_agent: \"voice_agent\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel to run. `test` runs the worker's test version, `live` the live one. Defaults to `live`.\n */\nexport type CreateWorkerRunBodyEnvironment =\n (typeof CreateWorkerRunBodyEnvironment)[keyof typeof CreateWorkerRunBodyEnvironment];\n\nexport const CreateWorkerRunBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWorkerWebhookBodyEnvironmentsItem =\n (typeof CreateWorkerWebhookBodyEnvironmentsItem)[keyof typeof CreateWorkerWebhookBodyEnvironmentsItem];\n\nexport const CreateWorkerWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DeleteCaseEnvironment =\n (typeof DeleteCaseEnvironment)[keyof typeof DeleteCaseEnvironment];\n\nexport const DeleteCaseEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DispatchEnvironment =\n (typeof DispatchEnvironment)[keyof typeof DispatchEnvironment];\n\nexport const DispatchEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DispatchStatus =\n (typeof DispatchStatus)[keyof typeof DispatchStatus];\n\nexport const DispatchStatus = {\n pending: \"pending\",\n dispatched: \"dispatched\",\n abandoned: \"abandoned\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DispatchTargetType =\n (typeof DispatchTargetType)[keyof typeof DispatchTargetType];\n\nexport const DispatchTargetType = {\n worker_run: \"worker_run\",\n extractor_job: \"extractor_job\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DispatchTriggerType =\n (typeof DispatchTriggerType)[keyof typeof DispatchTriggerType];\n\nexport const DispatchTriggerType = {\n schedule: \"schedule\",\n email: \"email\",\n information_request: \"information_request\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailDetailDirection =\n (typeof EmailDetailDirection)[keyof typeof EmailDetailDirection];\n\nexport const EmailDetailDirection = {\n inbound: \"inbound\",\n outbound: \"outbound\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailDetailEnvironment =\n (typeof EmailDetailEnvironment)[keyof typeof EmailDetailEnvironment];\n\nexport const EmailDetailEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Why the email was stored without processing. Null for emails that were processed normally.\n */\nexport type EmailDetailIgnoredReason =\n | (typeof EmailDetailIgnoredReason)[keyof typeof EmailDetailIgnoredReason]\n | null;\n\nexport const EmailDetailIgnoredReason = {\n sender_domain_not_allowed: \"sender_domain_not_allowed\",\n received_via_cc_or_bcc: \"received_via_cc_or_bcc\",\n sent_from_own_inbox: \"sent_from_own_inbox\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailDirection =\n (typeof EmailDirection)[keyof typeof EmailDirection];\n\nexport const EmailDirection = {\n inbound: \"inbound\",\n outbound: \"outbound\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailEnvironment =\n (typeof EmailEnvironment)[keyof typeof EmailEnvironment];\n\nexport const EmailEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Why the email was stored without processing. Null for emails that were processed normally.\n */\nexport type EmailIgnoredReason =\n | (typeof EmailIgnoredReason)[keyof typeof EmailIgnoredReason]\n | null;\n\nexport const EmailIgnoredReason = {\n sender_domain_not_allowed: \"sender_domain_not_allowed\",\n received_via_cc_or_bcc: \"received_via_cc_or_bcc\",\n sent_from_own_inbox: \"sent_from_own_inbox\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport const EmailReplyResultValue = {\n sent: true,\n} as const;\nexport type EmailReplyResult = typeof EmailReplyResultValue;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel the thread belongs to, taken from its first email.\n */\nexport type EmailThreadEnvironment =\n (typeof EmailThreadEnvironment)[keyof typeof EmailThreadEnvironment];\n\nexport const EmailThreadEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Environment to run the tool in, which selects the secret values it receives. A worker run is pinned to its own environment; other callers default to live.\n */\nexport type ExecuteCodeBodyEnvironment =\n (typeof ExecuteCodeBodyEnvironment)[keyof typeof ExecuteCodeBodyEnvironment];\n\nexport const ExecuteCodeBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetAnalyticsTimeSeriesGranularity =\n (typeof GetAnalyticsTimeSeriesGranularity)[keyof typeof GetAnalyticsTimeSeriesGranularity];\n\nexport const GetAnalyticsTimeSeriesGranularity = {\n day: \"day\",\n week: \"week\",\n month: \"month\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetAnalyticsTimeSeriesGroupBy =\n (typeof GetAnalyticsTimeSeriesGroupBy)[keyof typeof GetAnalyticsTimeSeriesGroupBy];\n\nexport const GetAnalyticsTimeSeriesGroupBy = {\n worker_id: \"worker_id\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetAnalyticsTimeSeriesMetric =\n (typeof GetAnalyticsTimeSeriesMetric)[keyof typeof GetAnalyticsTimeSeriesMetric];\n\nexport const GetAnalyticsTimeSeriesMetric = {\n worker_runs: \"worker_runs\",\n documents: \"documents\",\n pages: \"pages\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetCaseEnvironment =\n (typeof GetCaseEnvironment)[keyof typeof GetCaseEnvironment];\n\nexport const GetCaseEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetEvalRunEnvelopeDataStatus =\n (typeof GetEvalRunEnvelopeDataStatus)[keyof typeof GetEvalRunEnvelopeDataStatus];\n\nexport const GetEvalRunEnvelopeDataStatus = {\n queued: \"queued\",\n running: \"running\",\n passed: \"passed\",\n failed: \"failed\",\n error: \"error\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetOAuthUrlCodeChallengeMethod =\n (typeof GetOAuthUrlCodeChallengeMethod)[keyof typeof GetOAuthUrlCodeChallengeMethod];\n\nexport const GetOAuthUrlCodeChallengeMethod = {\n plain: \"plain\",\n s256: \"s256\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetOAuthUrlProvider =\n (typeof GetOAuthUrlProvider)[keyof typeof GetOAuthUrlProvider];\n\nexport const GetOAuthUrlProvider = {\n google: \"google\",\n sso: \"sso\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type InboxProcessorType =\n (typeof InboxProcessorType)[keyof typeof InboxProcessorType];\n\nexport const InboxProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type InformationRequestEnvironment =\n (typeof InformationRequestEnvironment)[keyof typeof InformationRequestEnvironment];\n\nexport const InformationRequestEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListAgentWebhooksEnvironment =\n (typeof ListAgentWebhooksEnvironment)[keyof typeof ListAgentWebhooksEnvironment];\n\nexport const ListAgentWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListApiKeysIncludeRevoked =\n (typeof ListApiKeysIncludeRevoked)[keyof typeof ListApiKeysIncludeRevoked];\n\nexport const ListApiKeysIncludeRevoked = {\n true: \"true\",\n false: \"false\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListArtifactsEnvironment =\n (typeof ListArtifactsEnvironment)[keyof typeof ListArtifactsEnvironment];\n\nexport const ListArtifactsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListArtifactsSortBy =\n (typeof ListArtifactsSortBy)[keyof typeof ListArtifactsSortBy];\n\nexport const ListArtifactsSortBy = {\n created_at: \"created_at\",\n updated_at: \"updated_at\",\n document_name: \"document_name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListArtifactsSortOrder =\n (typeof ListArtifactsSortOrder)[keyof typeof ListArtifactsSortOrder];\n\nexport const ListArtifactsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListArtifactsStatus =\n (typeof ListArtifactsStatus)[keyof typeof ListArtifactsStatus];\n\nexport const ListArtifactsStatus = {\n processing: \"processing\",\n parsed: \"parsed\",\n raw: \"raw\",\n missing: \"missing\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallFeedbackSortBy =\n (typeof ListCallFeedbackSortBy)[keyof typeof ListCallFeedbackSortBy];\n\nexport const ListCallFeedbackSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallFeedbackSortOrder =\n (typeof ListCallFeedbackSortOrder)[keyof typeof ListCallFeedbackSortOrder];\n\nexport const ListCallFeedbackSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsDirection =\n (typeof ListCallsDirection)[keyof typeof ListCallsDirection];\n\nexport const ListCallsDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsEnvironment =\n (typeof ListCallsEnvironment)[keyof typeof ListCallsEnvironment];\n\nexport const ListCallsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsSortBy =\n (typeof ListCallsSortBy)[keyof typeof ListCallsSortBy];\n\nexport const ListCallsSortBy = {\n started_at: \"started_at\",\n ended_at: \"ended_at\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsSortOrder =\n (typeof ListCallsSortOrder)[keyof typeof ListCallsSortOrder];\n\nexport const ListCallsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsStatus =\n (typeof ListCallsStatus)[keyof typeof ListCallsStatus];\n\nexport const ListCallsStatus = {\n COMPLETED: \"COMPLETED\",\n TRANSFERRED: \"TRANSFERRED\",\n DISCONNECTED: \"DISCONNECTED\",\n UNEXPECTED_SHUTDOWN: \"UNEXPECTED_SHUTDOWN\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCaseLinksEntityType =\n (typeof ListCaseLinksEntityType)[keyof typeof ListCaseLinksEntityType];\n\nexport const ListCaseLinksEntityType = {\n artifact: \"artifact\",\n call: \"call\",\n chat: \"chat\",\n email: \"email\",\n extract: \"extract\",\n information_request: \"information_request\",\n schedule: \"schedule\",\n worker_run: \"worker_run\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCaseLinksEnvironment =\n (typeof ListCaseLinksEnvironment)[keyof typeof ListCaseLinksEnvironment];\n\nexport const ListCaseLinksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCaseLinksSortBy =\n (typeof ListCaseLinksSortBy)[keyof typeof ListCaseLinksSortBy];\n\nexport const ListCaseLinksSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCaseLinksSortOrder =\n (typeof ListCaseLinksSortOrder)[keyof typeof ListCaseLinksSortOrder];\n\nexport const ListCaseLinksSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCasesEnvironment =\n (typeof ListCasesEnvironment)[keyof typeof ListCasesEnvironment];\n\nexport const ListCasesEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCasesSortBy =\n (typeof ListCasesSortBy)[keyof typeof ListCasesSortBy];\n\nexport const ListCasesSortBy = {\n created_at: \"created_at\",\n updated_at: \"updated_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCasesSortOrder =\n (typeof ListCasesSortOrder)[keyof typeof ListCasesSortOrder];\n\nexport const ListCasesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatAgentsSortBy =\n (typeof ListChatAgentsSortBy)[keyof typeof ListChatAgentsSortBy];\n\nexport const ListChatAgentsSortBy = {\n created_at: \"created_at\",\n name: \"name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatAgentsSortOrder =\n (typeof ListChatAgentsSortOrder)[keyof typeof ListChatAgentsSortOrder];\n\nexport const ListChatAgentsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatMessagesSortBy =\n (typeof ListChatMessagesSortBy)[keyof typeof ListChatMessagesSortBy];\n\nexport const ListChatMessagesSortBy = {\n generated_at: \"generated_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatMessagesSortOrder =\n (typeof ListChatMessagesSortOrder)[keyof typeof ListChatMessagesSortOrder];\n\nexport const ListChatMessagesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatsEnvironment =\n (typeof ListChatsEnvironment)[keyof typeof ListChatsEnvironment];\n\nexport const ListChatsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatsSortBy =\n (typeof ListChatsSortBy)[keyof typeof ListChatsSortBy];\n\nexport const ListChatsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatsSortOrder =\n (typeof ListChatsSortOrder)[keyof typeof ListChatsSortOrder];\n\nexport const ListChatsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListDispatchesSortBy =\n (typeof ListDispatchesSortBy)[keyof typeof ListDispatchesSortBy];\n\nexport const ListDispatchesSortBy = {\n due_at: \"due_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListDispatchesSortOrder =\n (typeof ListDispatchesSortOrder)[keyof typeof ListDispatchesSortOrder];\n\nexport const ListDispatchesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListDispatchesTriggerType =\n (typeof ListDispatchesTriggerType)[keyof typeof ListDispatchesTriggerType];\n\nexport const ListDispatchesTriggerType = {\n schedule: \"schedule\",\n email: \"email\",\n information_request: \"information_request\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailsEnvironment =\n (typeof ListEmailsEnvironment)[keyof typeof ListEmailsEnvironment];\n\nexport const ListEmailsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailsSortBy =\n (typeof ListEmailsSortBy)[keyof typeof ListEmailsSortBy];\n\nexport const ListEmailsSortBy = {\n created_at: \"created_at\",\n sent_at: \"sent_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailsSortOrder =\n (typeof ListEmailsSortOrder)[keyof typeof ListEmailsSortOrder];\n\nexport const ListEmailsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailThreadsEnvironment =\n (typeof ListEmailThreadsEnvironment)[keyof typeof ListEmailThreadsEnvironment];\n\nexport const ListEmailThreadsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailThreadsSortBy =\n (typeof ListEmailThreadsSortBy)[keyof typeof ListEmailThreadsSortBy];\n\nexport const ListEmailThreadsSortBy = {\n last_email_at: \"last_email_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailThreadsSortOrder =\n (typeof ListEmailThreadsSortOrder)[keyof typeof ListEmailThreadsSortOrder];\n\nexport const ListEmailThreadsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorJobsSortBy =\n (typeof ListExtractorJobsSortBy)[keyof typeof ListExtractorJobsSortBy];\n\nexport const ListExtractorJobsSortBy = {\n created_at: \"created_at\",\n started_at: \"started_at\",\n completed_at: \"completed_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorJobsSortOrder =\n (typeof ListExtractorJobsSortOrder)[keyof typeof ListExtractorJobsSortOrder];\n\nexport const ListExtractorJobsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorJobsStatus =\n (typeof ListExtractorJobsStatus)[keyof typeof ListExtractorJobsStatus];\n\nexport const ListExtractorJobsStatus = {\n queued: \"queued\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n failed: \"failed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorsSortBy =\n (typeof ListExtractorsSortBy)[keyof typeof ListExtractorsSortBy];\n\nexport const ListExtractorsSortBy = {\n created_at: \"created_at\",\n name: \"name\",\n version: \"version\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorsSortOrder =\n (typeof ListExtractorsSortOrder)[keyof typeof ListExtractorsSortOrder];\n\nexport const ListExtractorsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractsEnvironment =\n (typeof ListExtractsEnvironment)[keyof typeof ListExtractsEnvironment];\n\nexport const ListExtractsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractsSortBy =\n (typeof ListExtractsSortBy)[keyof typeof ListExtractsSortBy];\n\nexport const ListExtractsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractsSortOrder =\n (typeof ListExtractsSortOrder)[keyof typeof ListExtractsSortOrder];\n\nexport const ListExtractsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInboxesSortBy =\n (typeof ListInboxesSortBy)[keyof typeof ListInboxesSortBy];\n\nexport const ListInboxesSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInboxesSortOrder =\n (typeof ListInboxesSortOrder)[keyof typeof ListInboxesSortOrder];\n\nexport const ListInboxesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInboxWebhooksEnvironment =\n (typeof ListInboxWebhooksEnvironment)[keyof typeof ListInboxWebhooksEnvironment];\n\nexport const ListInboxWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInformationRequestsEnvironment =\n (typeof ListInformationRequestsEnvironment)[keyof typeof ListInformationRequestsEnvironment];\n\nexport const ListInformationRequestsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInformationRequestsResolved =\n (typeof ListInformationRequestsResolved)[keyof typeof ListInformationRequestsResolved];\n\nexport const ListInformationRequestsResolved = {\n true: \"true\",\n false: \"false\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInformationRequestsSortBy =\n (typeof ListInformationRequestsSortBy)[keyof typeof ListInformationRequestsSortBy];\n\nexport const ListInformationRequestsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInformationRequestsSortOrder =\n (typeof ListInformationRequestsSortOrder)[keyof typeof ListInformationRequestsSortOrder];\n\nexport const ListInformationRequestsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListJobsStatusItem =\n (typeof ListJobsStatusItem)[keyof typeof ListJobsStatusItem];\n\nexport const ListJobsStatusItem = {\n pending: \"pending\",\n queued: \"queued\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListNotificationsSortBy =\n (typeof ListNotificationsSortBy)[keyof typeof ListNotificationsSortBy];\n\nexport const ListNotificationsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListNotificationsSortOrder =\n (typeof ListNotificationsSortOrder)[keyof typeof ListNotificationsSortOrder];\n\nexport const ListNotificationsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListNotificationWebhooksEnvironment =\n (typeof ListNotificationWebhooksEnvironment)[keyof typeof ListNotificationWebhooksEnvironment];\n\nexport const ListNotificationWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSchedulesEnvironment =\n (typeof ListSchedulesEnvironment)[keyof typeof ListSchedulesEnvironment];\n\nexport const ListSchedulesEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSchedulesRuleType =\n (typeof ListSchedulesRuleType)[keyof typeof ListSchedulesRuleType];\n\nexport const ListSchedulesRuleType = {\n once: \"once\",\n recurring: \"recurring\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSchedulesSortBy =\n (typeof ListSchedulesSortBy)[keyof typeof ListSchedulesSortBy];\n\nexport const ListSchedulesSortBy = {\n created_at: \"created_at\",\n next_run_at: \"next_run_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSchedulesSortOrder =\n (typeof ListSchedulesSortOrder)[keyof typeof ListSchedulesSortOrder];\n\nexport const ListSchedulesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSecretsSortBy =\n (typeof ListSecretsSortBy)[keyof typeof ListSecretsSortBy];\n\nexport const ListSecretsSortBy = {\n name: \"name\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSecretsSortOrder =\n (typeof ListSecretsSortOrder)[keyof typeof ListSecretsSortOrder];\n\nexport const ListSecretsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListToolsSortBy =\n (typeof ListToolsSortBy)[keyof typeof ListToolsSortBy];\n\nexport const ListToolsSortBy = {\n created_at: \"created_at\",\n updated_at: \"updated_at\",\n name: \"name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListToolsSortOrder =\n (typeof ListToolsSortOrder)[keyof typeof ListToolsSortOrder];\n\nexport const ListToolsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListToolVersionsSortBy =\n (typeof ListToolVersionsSortBy)[keyof typeof ListToolVersionsSortBy];\n\nexport const ListToolVersionsSortBy = {\n version: \"version\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListToolVersionsSortOrder =\n (typeof ListToolVersionsSortOrder)[keyof typeof ListToolVersionsSortOrder];\n\nexport const ListToolVersionsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListVoiceAgentVersionsSortBy =\n (typeof ListVoiceAgentVersionsSortBy)[keyof typeof ListVoiceAgentVersionsSortBy];\n\nexport const ListVoiceAgentVersionsSortBy = {\n version: \"version\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListVoiceAgentVersionsSortOrder =\n (typeof ListVoiceAgentVersionsSortOrder)[keyof typeof ListVoiceAgentVersionsSortOrder];\n\nexport const ListVoiceAgentVersionsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWebhookDeliveriesSortOrder =\n (typeof ListWebhookDeliveriesSortOrder)[keyof typeof ListWebhookDeliveriesSortOrder];\n\nexport const ListWebhookDeliveriesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWebhooksEnvironment =\n (typeof ListWebhooksEnvironment)[keyof typeof ListWebhooksEnvironment];\n\nexport const ListWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerRunsEnvironment =\n (typeof ListWorkerRunsEnvironment)[keyof typeof ListWorkerRunsEnvironment];\n\nexport const ListWorkerRunsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerRunsSortBy =\n (typeof ListWorkerRunsSortBy)[keyof typeof ListWorkerRunsSortBy];\n\nexport const ListWorkerRunsSortBy = {\n created_at: \"created_at\",\n started_at: \"started_at\",\n completed_at: \"completed_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerRunsSortOrder =\n (typeof ListWorkerRunsSortOrder)[keyof typeof ListWorkerRunsSortOrder];\n\nexport const ListWorkerRunsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerRunsStatus =\n (typeof ListWorkerRunsStatus)[keyof typeof ListWorkerRunsStatus];\n\nexport const ListWorkerRunsStatus = {\n pending: \"pending\",\n queued: \"queued\",\n starting: \"starting\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n failed: \"failed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkersSortBy =\n (typeof ListWorkersSortBy)[keyof typeof ListWorkersSortBy];\n\nexport const ListWorkersSortBy = {\n created_at: \"created_at\",\n name: \"name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkersSortOrder =\n (typeof ListWorkersSortOrder)[keyof typeof ListWorkersSortOrder];\n\nexport const ListWorkersSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerVersionsSortBy =\n (typeof ListWorkerVersionsSortBy)[keyof typeof ListWorkerVersionsSortBy];\n\nexport const ListWorkerVersionsSortBy = {\n version: \"version\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerVersionsSortOrder =\n (typeof ListWorkerVersionsSortOrder)[keyof typeof ListWorkerVersionsSortOrder];\n\nexport const ListWorkerVersionsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerWebhooksEnvironment =\n (typeof ListWorkerWebhooksEnvironment)[keyof typeof ListWorkerWebhooksEnvironment];\n\nexport const ListWorkerWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Promoted environment the job dispatches against (agent configuration and phone binding). TEST requires an active TEST promotion.\n */\nexport type OutboundJobEnvironment =\n (typeof OutboundJobEnvironment)[keyof typeof OutboundJobEnvironment];\n\nexport const OutboundJobEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type OutboundJobStatus =\n (typeof OutboundJobStatus)[keyof typeof OutboundJobStatus];\n\nexport const OutboundJobStatus = {\n pending: \"pending\",\n queued: \"queued\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ProfilePermissionsItem =\n (typeof ProfilePermissionsItem)[keyof typeof ProfilePermissionsItem];\n\nexport const ProfilePermissionsItem = {\n \"voice-agents:write\": \"voice-agents:write\",\n \"voice-agents:promote\": \"voice-agents:promote\",\n \"tools:write\": \"tools:write\",\n \"tools:execute\": \"tools:execute\",\n \"tools:promote\": \"tools:promote\",\n \"extractors:write\": \"extractors:write\",\n \"inboxes:write\": \"inboxes:write\",\n \"inboxes:send\": \"inboxes:send\",\n \"artifacts:write\": \"artifacts:write\",\n \"api-keys:write\": \"api-keys:write\",\n \"teams:write\": \"teams:write\",\n \"cases:write\": \"cases:write\",\n \"cases:delete\": \"cases:delete\",\n \"information-requests:write\": \"information-requests:write\",\n \"information-requests:resolve\": \"information-requests:resolve\",\n \"feedback:write\": \"feedback:write\",\n \"outbound-jobs:write\": \"outbound-jobs:write\",\n \"outbound-jobs:schedule\": \"outbound-jobs:schedule\",\n \"workers:write\": \"workers:write\",\n \"workers:execute\": \"workers:execute\",\n \"workers:write-mcp\": \"workers:write-mcp\",\n \"workers:run\": \"workers:run\",\n \"workers:promote\": \"workers:promote\",\n \"chat-agents:write\": \"chat-agents:write\",\n \"notifications:write\": \"notifications:write\",\n \"prompts:read\": \"prompts:read\",\n \"prompts:write\": \"prompts:write\",\n \"secrets:read\": \"secrets:read\",\n \"secrets:write\": \"secrets:write\",\n \"schedules:read\": \"schedules:read\",\n \"schedules:write\": \"schedules:write\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ProfileRole = (typeof ProfileRole)[keyof typeof ProfileRole];\n\nexport const ProfileRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PromotedVoiceAgentVersionEnvironment =\n (typeof PromotedVoiceAgentVersionEnvironment)[keyof typeof PromotedVoiceAgentVersionEnvironment];\n\nexport const PromotedVoiceAgentVersionEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PromoteVoiceAgentVersionBodyEnvironment =\n (typeof PromoteVoiceAgentVersionBodyEnvironment)[keyof typeof PromoteVoiceAgentVersionBodyEnvironment];\n\nexport const PromoteVoiceAgentVersionBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RemoveCaseLinkEnvironment =\n (typeof RemoveCaseLinkEnvironment)[keyof typeof RemoveCaseLinkEnvironment];\n\nexport const RemoveCaseLinkEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RunEvalEnvelopeDataStatus =\n (typeof RunEvalEnvelopeDataStatus)[keyof typeof RunEvalEnvelopeDataStatus];\n\nexport const RunEvalEnvelopeDataStatus = {\n queued: \"queued\",\n running: \"running\",\n passed: \"passed\",\n failed: \"failed\",\n error: \"error\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ScheduleEnvironmentsItem =\n (typeof ScheduleEnvironmentsItem)[keyof typeof ScheduleEnvironmentsItem];\n\nexport const ScheduleEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Promoted environment the job dispatches against (agent configuration and phone binding). Defaults to `live`. TEST requires an active TEST promotion.\n */\nexport type ScheduleJobBodyEnvironment =\n (typeof ScheduleJobBodyEnvironment)[keyof typeof ScheduleJobBodyEnvironment];\n\nexport const ScheduleJobBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Inbox address to send from. `test` sends from the inbox's test address, `live` from its live one. Defaults to `live`.\n */\nexport type SendEmailBodyEnvironment =\n (typeof SendEmailBodyEnvironment)[keyof typeof SendEmailBodyEnvironment];\n\nexport const SendEmailBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type TeamInvitationState =\n (typeof TeamInvitationState)[keyof typeof TeamInvitationState];\n\nexport const TeamInvitationState = {\n pending: \"pending\",\n accepted: \"accepted\",\n expired: \"expired\",\n revoked: \"revoked\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type TeamMemberRole =\n (typeof TeamMemberRole)[keyof typeof TeamMemberRole];\n\nexport const TeamMemberRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * The environment to stamp on the test payload.\n */\nexport type TestWebhookBodyEnvironment =\n (typeof TestWebhookBodyEnvironment)[keyof typeof TestWebhookBodyEnvironment];\n\nexport const TestWebhookBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ToolEnvironment =\n (typeof ToolEnvironment)[keyof typeof ToolEnvironment];\n\nexport const ToolEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * New role to grant this API key. Caller's role caps the maximum grantable role.\n */\nexport type UpdateApiKeyBodyRole =\n (typeof UpdateApiKeyBodyRole)[keyof typeof UpdateApiKeyBodyRole];\n\nexport const UpdateApiKeyBodyRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of processor.\n */\nexport type UpdateInboxBodyProcessorType =\n (typeof UpdateInboxBodyProcessorType)[keyof typeof UpdateInboxBodyProcessorType];\n\nexport const UpdateInboxBodyProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateMemberRoleBodyRole =\n (typeof UpdateMemberRoleBodyRole)[keyof typeof UpdateMemberRoleBodyRole];\n\nexport const UpdateMemberRoleBodyRole = {\n admin: \"admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateScheduleBodyEnvironmentsItem =\n (typeof UpdateScheduleBodyEnvironmentsItem)[keyof typeof UpdateScheduleBodyEnvironmentsItem];\n\nexport const UpdateScheduleBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentBodyCallProcessorType =\n (typeof UpdateVoiceAgentBodyCallProcessorType)[keyof typeof UpdateVoiceAgentBodyCallProcessorType];\n\nexport const UpdateVoiceAgentBodyCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Noise cancellation mode applied to the caller audio. Omit to leave unchanged.\n */\nexport type UpdateVoiceAgentBodyNoiseCancellation =\n (typeof UpdateVoiceAgentBodyNoiseCancellation)[keyof typeof UpdateVoiceAgentBodyNoiseCancellation];\n\nexport const UpdateVoiceAgentBodyNoiseCancellation = {\n NONE: \"NONE\",\n NC: \"NC\",\n BVC: \"BVC\",\n BVC_TELEPHONY: \"BVC_TELEPHONY\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyFallbackLlmModel =\n | (typeof UpdateVoiceAgentModelsBodyFallbackLlmModel)[keyof typeof UpdateVoiceAgentModelsBodyFallbackLlmModel]\n | null;\n\nexport const UpdateVoiceAgentModelsBodyFallbackLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyFallbackSttModel =\n | (typeof UpdateVoiceAgentModelsBodyFallbackSttModel)[keyof typeof UpdateVoiceAgentModelsBodyFallbackSttModel]\n | null;\n\nexport const UpdateVoiceAgentModelsBodyFallbackSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyFallbackTtsModel =\n | (typeof UpdateVoiceAgentModelsBodyFallbackTtsModel)[keyof typeof UpdateVoiceAgentModelsBodyFallbackTtsModel]\n | null;\n\nexport const UpdateVoiceAgentModelsBodyFallbackTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyFallbackTtsProvider =\n | (typeof UpdateVoiceAgentModelsBodyFallbackTtsProvider)[keyof typeof UpdateVoiceAgentModelsBodyFallbackTtsProvider]\n | null;\n\nexport const UpdateVoiceAgentModelsBodyFallbackTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyLanguage =\n (typeof UpdateVoiceAgentModelsBodyLanguage)[keyof typeof UpdateVoiceAgentModelsBodyLanguage];\n\nexport const UpdateVoiceAgentModelsBodyLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyLlmModel =\n (typeof UpdateVoiceAgentModelsBodyLlmModel)[keyof typeof UpdateVoiceAgentModelsBodyLlmModel];\n\nexport const UpdateVoiceAgentModelsBodyLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodySttModel =\n (typeof UpdateVoiceAgentModelsBodySttModel)[keyof typeof UpdateVoiceAgentModelsBodySttModel];\n\nexport const UpdateVoiceAgentModelsBodySttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyTtsModel =\n (typeof UpdateVoiceAgentModelsBodyTtsModel)[keyof typeof UpdateVoiceAgentModelsBodyTtsModel];\n\nexport const UpdateVoiceAgentModelsBodyTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyTtsProvider =\n (typeof UpdateVoiceAgentModelsBodyTtsProvider)[keyof typeof UpdateVoiceAgentModelsBodyTtsProvider];\n\nexport const UpdateVoiceAgentModelsBodyTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateWebhookBodyEnvironmentsItem =\n (typeof UpdateWebhookBodyEnvironmentsItem)[keyof typeof UpdateWebhookBodyEnvironmentsItem];\n\nexport const UpdateWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentBackgroundSounds =\n (typeof VoiceAgentBackgroundSounds)[keyof typeof VoiceAgentBackgroundSounds];\n\nexport const VoiceAgentBackgroundSounds = {\n enabled: \"enabled\",\n disabled: \"disabled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentCallProcessorType =\n | (typeof VoiceAgentCallProcessorType)[keyof typeof VoiceAgentCallProcessorType]\n | null;\n\nexport const VoiceAgentCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentDirection =\n (typeof VoiceAgentDirection)[keyof typeof VoiceAgentDirection];\n\nexport const VoiceAgentDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentFallbackLlmModel =\n | (typeof VoiceAgentFallbackLlmModel)[keyof typeof VoiceAgentFallbackLlmModel]\n | null;\n\nexport const VoiceAgentFallbackLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentFallbackSttModel =\n | (typeof VoiceAgentFallbackSttModel)[keyof typeof VoiceAgentFallbackSttModel]\n | null;\n\nexport const VoiceAgentFallbackSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentFallbackTtsModel =\n | (typeof VoiceAgentFallbackTtsModel)[keyof typeof VoiceAgentFallbackTtsModel]\n | null;\n\nexport const VoiceAgentFallbackTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentFallbackTtsProvider =\n | (typeof VoiceAgentFallbackTtsProvider)[keyof typeof VoiceAgentFallbackTtsProvider]\n | null;\n\nexport const VoiceAgentFallbackTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentLanguage =\n (typeof VoiceAgentLanguage)[keyof typeof VoiceAgentLanguage];\n\nexport const VoiceAgentLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentLlmModel =\n (typeof VoiceAgentLlmModel)[keyof typeof VoiceAgentLlmModel];\n\nexport const VoiceAgentLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentNoiseCancellation =\n (typeof VoiceAgentNoiseCancellation)[keyof typeof VoiceAgentNoiseCancellation];\n\nexport const VoiceAgentNoiseCancellation = {\n NONE: \"NONE\",\n NC: \"NC\",\n BVC: \"BVC\",\n BVC_TELEPHONY: \"BVC_TELEPHONY\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentSttModel =\n (typeof VoiceAgentSttModel)[keyof typeof VoiceAgentSttModel];\n\nexport const VoiceAgentSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentTtsModel =\n (typeof VoiceAgentTtsModel)[keyof typeof VoiceAgentTtsModel];\n\nexport const VoiceAgentTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentTtsProvider =\n (typeof VoiceAgentTtsProvider)[keyof typeof VoiceAgentTtsProvider];\n\nexport const VoiceAgentTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionActiveEnvironmentsItem =\n (typeof VoiceAgentVersionActiveEnvironmentsItem)[keyof typeof VoiceAgentVersionActiveEnvironmentsItem];\n\nexport const VoiceAgentVersionActiveEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailActiveEnvironmentsItem =\n (typeof VoiceAgentVersionDetailActiveEnvironmentsItem)[keyof typeof VoiceAgentVersionDetailActiveEnvironmentsItem];\n\nexport const VoiceAgentVersionDetailActiveEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailBackgroundSounds =\n (typeof VoiceAgentVersionDetailBackgroundSounds)[keyof typeof VoiceAgentVersionDetailBackgroundSounds];\n\nexport const VoiceAgentVersionDetailBackgroundSounds = {\n enabled: \"enabled\",\n disabled: \"disabled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailCallProcessorType =\n | (typeof VoiceAgentVersionDetailCallProcessorType)[keyof typeof VoiceAgentVersionDetailCallProcessorType]\n | null;\n\nexport const VoiceAgentVersionDetailCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailDirection =\n (typeof VoiceAgentVersionDetailDirection)[keyof typeof VoiceAgentVersionDetailDirection];\n\nexport const VoiceAgentVersionDetailDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailFallbackLlmModel =\n | (typeof VoiceAgentVersionDetailFallbackLlmModel)[keyof typeof VoiceAgentVersionDetailFallbackLlmModel]\n | null;\n\nexport const VoiceAgentVersionDetailFallbackLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailFallbackSttModel =\n | (typeof VoiceAgentVersionDetailFallbackSttModel)[keyof typeof VoiceAgentVersionDetailFallbackSttModel]\n | null;\n\nexport const VoiceAgentVersionDetailFallbackSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailFallbackTtsModel =\n | (typeof VoiceAgentVersionDetailFallbackTtsModel)[keyof typeof VoiceAgentVersionDetailFallbackTtsModel]\n | null;\n\nexport const VoiceAgentVersionDetailFallbackTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailFallbackTtsProvider =\n | (typeof VoiceAgentVersionDetailFallbackTtsProvider)[keyof typeof VoiceAgentVersionDetailFallbackTtsProvider]\n | null;\n\nexport const VoiceAgentVersionDetailFallbackTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailLanguage =\n (typeof VoiceAgentVersionDetailLanguage)[keyof typeof VoiceAgentVersionDetailLanguage];\n\nexport const VoiceAgentVersionDetailLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailLlmModel =\n (typeof VoiceAgentVersionDetailLlmModel)[keyof typeof VoiceAgentVersionDetailLlmModel];\n\nexport const VoiceAgentVersionDetailLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailNoiseCancellation =\n (typeof VoiceAgentVersionDetailNoiseCancellation)[keyof typeof VoiceAgentVersionDetailNoiseCancellation];\n\nexport const VoiceAgentVersionDetailNoiseCancellation = {\n NONE: \"NONE\",\n NC: \"NC\",\n BVC: \"BVC\",\n BVC_TELEPHONY: \"BVC_TELEPHONY\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailSttModel =\n (typeof VoiceAgentVersionDetailSttModel)[keyof typeof VoiceAgentVersionDetailSttModel];\n\nexport const VoiceAgentVersionDetailSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailTtsModel =\n (typeof VoiceAgentVersionDetailTtsModel)[keyof typeof VoiceAgentVersionDetailTtsModel];\n\nexport const VoiceAgentVersionDetailTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailTtsProvider =\n (typeof VoiceAgentVersionDetailTtsProvider)[keyof typeof VoiceAgentVersionDetailTtsProvider];\n\nexport const VoiceAgentVersionDetailTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberBackgroundSounds =\n (typeof VoiceAgentWithTestPhoneNumberBackgroundSounds)[keyof typeof VoiceAgentWithTestPhoneNumberBackgroundSounds];\n\nexport const VoiceAgentWithTestPhoneNumberBackgroundSounds = {\n enabled: \"enabled\",\n disabled: \"disabled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberCallProcessorType =\n | (typeof VoiceAgentWithTestPhoneNumberCallProcessorType)[keyof typeof VoiceAgentWithTestPhoneNumberCallProcessorType]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberDirection =\n (typeof VoiceAgentWithTestPhoneNumberDirection)[keyof typeof VoiceAgentWithTestPhoneNumberDirection];\n\nexport const VoiceAgentWithTestPhoneNumberDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberFallbackLlmModel =\n | (typeof VoiceAgentWithTestPhoneNumberFallbackLlmModel)[keyof typeof VoiceAgentWithTestPhoneNumberFallbackLlmModel]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberFallbackLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberFallbackSttModel =\n | (typeof VoiceAgentWithTestPhoneNumberFallbackSttModel)[keyof typeof VoiceAgentWithTestPhoneNumberFallbackSttModel]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberFallbackSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberFallbackTtsModel =\n | (typeof VoiceAgentWithTestPhoneNumberFallbackTtsModel)[keyof typeof VoiceAgentWithTestPhoneNumberFallbackTtsModel]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberFallbackTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberFallbackTtsProvider =\n | (typeof VoiceAgentWithTestPhoneNumberFallbackTtsProvider)[keyof typeof VoiceAgentWithTestPhoneNumberFallbackTtsProvider]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberFallbackTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberLanguage =\n (typeof VoiceAgentWithTestPhoneNumberLanguage)[keyof typeof VoiceAgentWithTestPhoneNumberLanguage];\n\nexport const VoiceAgentWithTestPhoneNumberLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberLlmModel =\n (typeof VoiceAgentWithTestPhoneNumberLlmModel)[keyof typeof VoiceAgentWithTestPhoneNumberLlmModel];\n\nexport const VoiceAgentWithTestPhoneNumberLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberNoiseCancellation =\n (typeof VoiceAgentWithTestPhoneNumberNoiseCancellation)[keyof typeof VoiceAgentWithTestPhoneNumberNoiseCancellation];\n\nexport const VoiceAgentWithTestPhoneNumberNoiseCancellation = {\n NONE: \"NONE\",\n NC: \"NC\",\n BVC: \"BVC\",\n BVC_TELEPHONY: \"BVC_TELEPHONY\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberSttModel =\n (typeof VoiceAgentWithTestPhoneNumberSttModel)[keyof typeof VoiceAgentWithTestPhoneNumberSttModel];\n\nexport const VoiceAgentWithTestPhoneNumberSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberTtsModel =\n (typeof VoiceAgentWithTestPhoneNumberTtsModel)[keyof typeof VoiceAgentWithTestPhoneNumberTtsModel];\n\nexport const VoiceAgentWithTestPhoneNumberTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberTtsProvider =\n (typeof VoiceAgentWithTestPhoneNumberTtsProvider)[keyof typeof VoiceAgentWithTestPhoneNumberTtsProvider];\n\nexport const VoiceAgentWithTestPhoneNumberTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WebhookEnvironmentsItem =\n (typeof WebhookEnvironmentsItem)[keyof typeof WebhookEnvironmentsItem];\n\nexport const WebhookEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerEnvironment =\n (typeof WorkerEnvironment)[keyof typeof WorkerEnvironment];\n\nexport const WorkerEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Environment to run the tool in, which selects the secret values it receives. A worker run is pinned to its own environment; other callers default to live.\n */\nexport type WorkerExecuteToolBodyEnvironment =\n (typeof WorkerExecuteToolBodyEnvironment)[keyof typeof WorkerExecuteToolBodyEnvironment];\n\nexport const WorkerExecuteToolBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerListToolsSortBy =\n (typeof WorkerListToolsSortBy)[keyof typeof WorkerListToolsSortBy];\n\nexport const WorkerListToolsSortBy = {\n created_at: \"created_at\",\n updated_at: \"updated_at\",\n name: \"name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerListToolsSortOrder =\n (typeof WorkerListToolsSortOrder)[keyof typeof WorkerListToolsSortOrder];\n\nexport const WorkerListToolsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * MCP server identifier.\n */\nexport type WorkerMcpName = (typeof WorkerMcpName)[keyof typeof WorkerMcpName];\n\nexport const WorkerMcpName = {\n ventiv: \"ventiv\",\n klear: \"klear\",\n \"klear-browser\": \"klear-browser\",\n \"demo-browser\": \"demo-browser\",\n \"demo-claims\": \"demo-claims\",\n \"filehandler-browser\": \"filehandler-browser\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * MCP server identifier.\n */\nexport type WorkerMcpOutputName =\n (typeof WorkerMcpOutputName)[keyof typeof WorkerMcpOutputName];\n\nexport const WorkerMcpOutputName = {\n ventiv: \"ventiv\",\n klear: \"klear\",\n \"klear-browser\": \"klear-browser\",\n \"demo-browser\": \"demo-browser\",\n \"demo-claims\": \"demo-claims\",\n \"filehandler-browser\": \"filehandler-browser\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerPermission =\n (typeof WorkerPermission)[keyof typeof WorkerPermission];\n\nexport const WorkerPermission = {\n \"workers:run\": \"workers:run\",\n \"inboxes:send\": \"inboxes:send\",\n \"artifacts:write\": \"artifacts:write\",\n \"outbound-jobs:schedule\": \"outbound-jobs:schedule\",\n \"cases:write\": \"cases:write\",\n \"schedules:write\": \"schedules:write\",\n \"information-requests:write\": \"information-requests:write\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerRunCreatedEnvironment =\n (typeof WorkerRunCreatedEnvironment)[keyof typeof WorkerRunCreatedEnvironment];\n\nexport const WorkerRunCreatedEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerRunCreatedStatus =\n (typeof WorkerRunCreatedStatus)[keyof typeof WorkerRunCreatedStatus];\n\nexport const WorkerRunCreatedStatus = {\n pending: \"pending\",\n queued: \"queued\",\n starting: \"starting\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n failed: \"failed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel the run was started for. Test calls run the worker's test version; every other trigger runs live.\n */\nexport type WorkerRunEnvironment =\n (typeof WorkerRunEnvironment)[keyof typeof WorkerRunEnvironment];\n\nexport const WorkerRunEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Current run status\n */\nexport type WorkerRunStatus =\n (typeof WorkerRunStatus)[keyof typeof WorkerRunStatus];\n\nexport const WorkerRunStatus = {\n pending: \"pending\",\n queued: \"queued\",\n starting: \"starting\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n failed: \"failed\",\n canceled: \"canceled\",\n} as const;\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/fetcher.ts","../src/auth.ts","../generated/endpoints/analytics/analytics.ts","../generated/endpoints/api-keys/api-keys.ts","../generated/endpoints/artifacts/artifacts.ts","../generated/endpoints/auth/auth.ts","../generated/endpoints/call-feedback/call-feedback.ts","../generated/endpoints/calls/calls.ts","../generated/endpoints/cases/cases.ts","../generated/endpoints/chat-agents/chat-agents.ts","../generated/endpoints/chats/chats.ts","../generated/endpoints/dispatches/dispatches.ts","../generated/endpoints/emails/emails.ts","../generated/endpoints/evals/evals.ts","../generated/endpoints/extraction-jobs/extraction-jobs.ts","../generated/endpoints/extractors/extractors.ts","../generated/endpoints/extracts/extracts.ts","../generated/endpoints/inboxes/inboxes.ts","../generated/endpoints/information-requests/information-requests.ts","../generated/endpoints/jobs/jobs.ts","../generated/endpoints/notifications/notifications.ts","../generated/endpoints/profiles/profiles.ts","../generated/endpoints/schedules/schedules.ts","../generated/endpoints/secrets/secrets.ts","../generated/endpoints/team/team.ts","../generated/endpoints/tools/tools.ts","../generated/endpoints/voice-agents/voice-agents.ts","../generated/endpoints/webhooks/webhooks.ts","../generated/endpoints/worker-runs/worker-runs.ts","../generated/endpoints/worker/worker.ts","../generated/endpoints/workers/workers.ts","../generated/models/addCaseLinksBodyEntitiesItemEntityType.ts","../generated/models/addCaseLinksEnvironment.ts","../generated/models/analyticsTimeSeriesGranularity.ts","../generated/models/analyticsTimeSeriesGroupBy.ts","../generated/models/analyticsTimeSeriesMetric.ts","../generated/models/apiKeyCreatedRole.ts","../generated/models/apiKeyRole.ts","../generated/models/artifactDetailDataStatus.ts","../generated/models/artifactStatus.ts","../generated/models/callDetailDirection.ts","../generated/models/callDetailEnvironment.ts","../generated/models/callDirection.ts","../generated/models/callEnvironment.ts","../generated/models/caseLinkEntityType.ts","../generated/models/caseSummaryEnvironment.ts","../generated/models/chatHistoryMessagesItemRole.ts","../generated/models/chatMessageRole.ts","../generated/models/createAgentWebhookBodyEnvironmentsItem.ts","../generated/models/createApiKeyBodyEnvironment.ts","../generated/models/createApiKeyBodyRole.ts","../generated/models/createCaseBodyEnvironment.ts","../generated/models/createExtractorWebhookBodyEnvironmentsItem.ts","../generated/models/createInboxBodyProcessorType.ts","../generated/models/createInboxWebhookBodyEnvironmentsItem.ts","../generated/models/createNotificationWebhookBodyEnvironmentsItem.ts","../generated/models/createScheduleBodyEnvironmentsItem.ts","../generated/models/createVoiceAgentBodyCallProcessorType.ts","../generated/models/createVoiceAgentBodyDirection.ts","../generated/models/createVoiceAgentBodyLanguage.ts","../generated/models/createVoiceAgentBodyLlmModel.ts","../generated/models/createVoiceAgentBodySttModel.ts","../generated/models/createVoiceAgentBodyTtsModel.ts","../generated/models/createVoiceAgentBodyTtsProvider.ts","../generated/models/createWorkerBodyMcpType.ts","../generated/models/createWorkerEvalFromRunEnvelopeDataSourceType.ts","../generated/models/createWorkerEvalFromRunEnvelopeDataTargetType.ts","../generated/models/createWorkerRunBodyEnvironment.ts","../generated/models/createWorkerWebhookBodyEnvironmentsItem.ts","../generated/models/deleteCaseEnvironment.ts","../generated/models/dispatchEnvironment.ts","../generated/models/dispatchStatus.ts","../generated/models/dispatchTargetType.ts","../generated/models/dispatchTriggerType.ts","../generated/models/emailDetailDirection.ts","../generated/models/emailDetailEnvironment.ts","../generated/models/emailDetailIgnoredReason.ts","../generated/models/emailDirection.ts","../generated/models/emailEnvironment.ts","../generated/models/emailIgnoredReason.ts","../generated/models/emailReplyResult.ts","../generated/models/emailThreadEnvironment.ts","../generated/models/executeCodeBodyEnvironment.ts","../generated/models/getAnalyticsTimeSeriesGranularity.ts","../generated/models/getAnalyticsTimeSeriesGroupBy.ts","../generated/models/getAnalyticsTimeSeriesMetric.ts","../generated/models/getCaseEnvironment.ts","../generated/models/getEvalRunEnvelopeDataStatus.ts","../generated/models/getOAuthUrlCodeChallengeMethod.ts","../generated/models/getOAuthUrlProvider.ts","../generated/models/inboxProcessorType.ts","../generated/models/informationRequestEnvironment.ts","../generated/models/listAgentWebhooksEnvironment.ts","../generated/models/listApiKeysIncludeRevoked.ts","../generated/models/listArtifactsEnvironment.ts","../generated/models/listArtifactsSortBy.ts","../generated/models/listArtifactsSortOrder.ts","../generated/models/listArtifactsStatus.ts","../generated/models/listCallFeedbackSortBy.ts","../generated/models/listCallFeedbackSortOrder.ts","../generated/models/listCallsDirection.ts","../generated/models/listCallsEnvironment.ts","../generated/models/listCallsSortBy.ts","../generated/models/listCallsSortOrder.ts","../generated/models/listCallsStatus.ts","../generated/models/listCaseLinksEntityType.ts","../generated/models/listCaseLinksEnvironment.ts","../generated/models/listCaseLinksSortBy.ts","../generated/models/listCaseLinksSortOrder.ts","../generated/models/listCasesEnvironment.ts","../generated/models/listCasesSortBy.ts","../generated/models/listCasesSortOrder.ts","../generated/models/listChatAgentsSortBy.ts","../generated/models/listChatAgentsSortOrder.ts","../generated/models/listChatMessagesSortBy.ts","../generated/models/listChatMessagesSortOrder.ts","../generated/models/listChatsEnvironment.ts","../generated/models/listChatsSortBy.ts","../generated/models/listChatsSortOrder.ts","../generated/models/listDispatchesSortBy.ts","../generated/models/listDispatchesSortOrder.ts","../generated/models/listDispatchesTriggerType.ts","../generated/models/listEmailsEnvironment.ts","../generated/models/listEmailsSortBy.ts","../generated/models/listEmailsSortOrder.ts","../generated/models/listEmailThreadsEnvironment.ts","../generated/models/listEmailThreadsSortBy.ts","../generated/models/listEmailThreadsSortOrder.ts","../generated/models/listExtractorJobsSortBy.ts","../generated/models/listExtractorJobsSortOrder.ts","../generated/models/listExtractorJobsStatus.ts","../generated/models/listExtractorsSortBy.ts","../generated/models/listExtractorsSortOrder.ts","../generated/models/listExtractsEnvironment.ts","../generated/models/listExtractsSortBy.ts","../generated/models/listExtractsSortOrder.ts","../generated/models/listInboxesSortBy.ts","../generated/models/listInboxesSortOrder.ts","../generated/models/listInboxWebhooksEnvironment.ts","../generated/models/listInformationRequestsEnvironment.ts","../generated/models/listInformationRequestsResolved.ts","../generated/models/listInformationRequestsSortBy.ts","../generated/models/listInformationRequestsSortOrder.ts","../generated/models/listJobsStatusItem.ts","../generated/models/listNotificationsSortBy.ts","../generated/models/listNotificationsSortOrder.ts","../generated/models/listNotificationWebhooksEnvironment.ts","../generated/models/listSchedulesEnvironment.ts","../generated/models/listSchedulesRuleType.ts","../generated/models/listSchedulesSortBy.ts","../generated/models/listSchedulesSortOrder.ts","../generated/models/listSecretsSortBy.ts","../generated/models/listSecretsSortOrder.ts","../generated/models/listToolsSortBy.ts","../generated/models/listToolsSortOrder.ts","../generated/models/listToolVersionsSortBy.ts","../generated/models/listToolVersionsSortOrder.ts","../generated/models/listVoiceAgentVersionsSortBy.ts","../generated/models/listVoiceAgentVersionsSortOrder.ts","../generated/models/listWebhookDeliveriesSortOrder.ts","../generated/models/listWebhooksEnvironment.ts","../generated/models/listWorkerRunsEnvironment.ts","../generated/models/listWorkerRunsSortBy.ts","../generated/models/listWorkerRunsSortOrder.ts","../generated/models/listWorkerRunsStatus.ts","../generated/models/listWorkersSortBy.ts","../generated/models/listWorkersSortOrder.ts","../generated/models/listWorkerVersionsSortBy.ts","../generated/models/listWorkerVersionsSortOrder.ts","../generated/models/listWorkerWebhooksEnvironment.ts","../generated/models/outboundJobEnvironment.ts","../generated/models/outboundJobStatus.ts","../generated/models/profilePermissionsItem.ts","../generated/models/profileRole.ts","../generated/models/promotedVoiceAgentVersionEnvironment.ts","../generated/models/promoteVoiceAgentVersionBodyEnvironment.ts","../generated/models/removeCaseLinkEnvironment.ts","../generated/models/runEvalEnvelopeDataStatus.ts","../generated/models/scheduleEnvironmentsItem.ts","../generated/models/scheduleJobBodyEnvironment.ts","../generated/models/sendEmailBodyEnvironment.ts","../generated/models/teamInvitationState.ts","../generated/models/teamMemberRole.ts","../generated/models/testWebhookBodyEnvironment.ts","../generated/models/toolEnvironment.ts","../generated/models/updateApiKeyBodyRole.ts","../generated/models/updateInboxBodyProcessorType.ts","../generated/models/updateMemberRoleBodyRole.ts","../generated/models/updateScheduleBodyEnvironmentsItem.ts","../generated/models/updateVoiceAgentBodyCallProcessorType.ts","../generated/models/updateVoiceAgentBodyNoiseCancellation.ts","../generated/models/updateVoiceAgentModelsBodyFallbackLlmModel.ts","../generated/models/updateVoiceAgentModelsBodyFallbackSttModel.ts","../generated/models/updateVoiceAgentModelsBodyFallbackTtsModel.ts","../generated/models/updateVoiceAgentModelsBodyFallbackTtsProvider.ts","../generated/models/updateVoiceAgentModelsBodyLanguage.ts","../generated/models/updateVoiceAgentModelsBodyLlmModel.ts","../generated/models/updateVoiceAgentModelsBodySttModel.ts","../generated/models/updateVoiceAgentModelsBodyTtsModel.ts","../generated/models/updateVoiceAgentModelsBodyTtsProvider.ts","../generated/models/updateWebhookBodyEnvironmentsItem.ts","../generated/models/voiceAgentBackgroundSounds.ts","../generated/models/voiceAgentCallProcessorType.ts","../generated/models/voiceAgentDirection.ts","../generated/models/voiceAgentFallbackLlmModel.ts","../generated/models/voiceAgentFallbackSttModel.ts","../generated/models/voiceAgentFallbackTtsModel.ts","../generated/models/voiceAgentFallbackTtsProvider.ts","../generated/models/voiceAgentLanguage.ts","../generated/models/voiceAgentLlmModel.ts","../generated/models/voiceAgentNoiseCancellation.ts","../generated/models/voiceAgentSttModel.ts","../generated/models/voiceAgentTtsModel.ts","../generated/models/voiceAgentTtsProvider.ts","../generated/models/voiceAgentVersionActiveEnvironmentsItem.ts","../generated/models/voiceAgentVersionDetailActiveEnvironmentsItem.ts","../generated/models/voiceAgentVersionDetailBackgroundSounds.ts","../generated/models/voiceAgentVersionDetailCallProcessorType.ts","../generated/models/voiceAgentVersionDetailDirection.ts","../generated/models/voiceAgentVersionDetailFallbackLlmModel.ts","../generated/models/voiceAgentVersionDetailFallbackSttModel.ts","../generated/models/voiceAgentVersionDetailFallbackTtsModel.ts","../generated/models/voiceAgentVersionDetailFallbackTtsProvider.ts","../generated/models/voiceAgentVersionDetailLanguage.ts","../generated/models/voiceAgentVersionDetailLlmModel.ts","../generated/models/voiceAgentVersionDetailNoiseCancellation.ts","../generated/models/voiceAgentVersionDetailSttModel.ts","../generated/models/voiceAgentVersionDetailTtsModel.ts","../generated/models/voiceAgentVersionDetailTtsProvider.ts","../generated/models/voiceAgentWithTestPhoneNumberBackgroundSounds.ts","../generated/models/voiceAgentWithTestPhoneNumberCallProcessorType.ts","../generated/models/voiceAgentWithTestPhoneNumberDirection.ts","../generated/models/voiceAgentWithTestPhoneNumberFallbackLlmModel.ts","../generated/models/voiceAgentWithTestPhoneNumberFallbackSttModel.ts","../generated/models/voiceAgentWithTestPhoneNumberFallbackTtsModel.ts","../generated/models/voiceAgentWithTestPhoneNumberFallbackTtsProvider.ts","../generated/models/voiceAgentWithTestPhoneNumberLanguage.ts","../generated/models/voiceAgentWithTestPhoneNumberLlmModel.ts","../generated/models/voiceAgentWithTestPhoneNumberNoiseCancellation.ts","../generated/models/voiceAgentWithTestPhoneNumberSttModel.ts","../generated/models/voiceAgentWithTestPhoneNumberTtsModel.ts","../generated/models/voiceAgentWithTestPhoneNumberTtsProvider.ts","../generated/models/webhookEnvironmentsItem.ts","../generated/models/workerEnvironment.ts","../generated/models/workerExecuteToolBodyEnvironment.ts","../generated/models/workerListToolsSortBy.ts","../generated/models/workerListToolsSortOrder.ts","../generated/models/workerMcpName.ts","../generated/models/workerMcpOutputName.ts","../generated/models/workerPermission.ts","../generated/models/workerRunCreatedEnvironment.ts","../generated/models/workerRunCreatedStatus.ts","../generated/models/workerRunEnvironment.ts","../generated/models/workerRunStatus.ts"],"names":["useSwr","useSWRMutation"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * Custom fetch wrapper for Orval-generated client.\n * Handles auth (API key or Bearer token) and base URL configuration.\n * Throws AvallonError on non-2xx responses for clean SWR error handling.\n *\n * The API's `{ data, message, meta }` envelope is returned verbatim — the\n * generated types describe the envelope, so callers read `result.data`, and\n * paginated endpoints expose the total via `result.meta.total`.\n */\n\n// --------------------------------------------------------------------------\n// Configuration\n// --------------------------------------------------------------------------\n\nlet config: AvallonConfig = {\n baseUrl: \"https://api.avallon.ai\",\n};\n\nexport type AvallonConfig = {\n baseUrl?: string;\n apiKey?: string;\n /**\n * Token provider - can be sync or async.\n * Async allows the application to check expiry and refresh before returning.\n */\n getAccessToken?: () => string | null | Promise<string | null>;\n};\n\n/** Configure the SDK at runtime */\nexport function configure(newConfig: Partial<AvallonConfig>) {\n config = { ...config, ...newConfig };\n}\n\n/** Get current config */\nexport function getConfig(): AvallonConfig {\n return { ...config };\n}\n\n// --------------------------------------------------------------------------\n// Fetch wrapper\n// --------------------------------------------------------------------------\n\n/** Shared fetch logic */\nasync function doFetch<T>(\n url: string,\n options: RequestInit,\n withAuth: boolean\n): Promise<T> {\n const fullUrl = url.startsWith(\"http\") ? url : `${config.baseUrl}${url}`;\n\n const headers = new Headers(options.headers);\n\n // Only set Content-Type for requests with JSON body\n // (allows file uploads to set their own Content-Type)\n if (options.body && typeof options.body === \"string\") {\n headers.set(\"Content-Type\", \"application/json\");\n }\n\n if (withAuth) {\n const accessToken = await config.getAccessToken?.();\n if (accessToken) {\n headers.set(\"Authorization\", `Bearer ${accessToken}`);\n } else if (config.apiKey) {\n headers.set(\"x-api-key\", config.apiKey);\n }\n }\n\n const response = await fetch(fullUrl, {\n ...options,\n headers,\n });\n\n // Parse response based on content type\n const contentType = response.headers.get(\"Content-Type\") ?? \"\";\n let body: unknown;\n\n if (response.status === 204) {\n // No content\n body = {};\n } else if (contentType.includes(\"application/json\")) {\n body = await response.json().catch(() => ({}));\n } else {\n // Non-JSON response (shouldn't happen with our API, but handle gracefully)\n const text = await response.text().catch(() => \"\");\n body = { message: text };\n }\n\n // Throw on non-2xx - SWR will catch this as `error`\n if (!response.ok) {\n throw new AvallonError(response.status, body as AvallonError[\"body\"]);\n }\n\n return body as T;\n}\n\n/** Authenticated fetch - adds API key or Bearer token */\nexport async function customFetch<T>(\n url: string,\n options: RequestInit\n): Promise<T> {\n return doFetch(url, options, true);\n}\n\n/** Unauthenticated fetch - for auth flow endpoints (sign-in, sign-up, etc.) */\nexport async function customFetchNoAuth<T>(\n url: string,\n options: RequestInit\n): Promise<T> {\n return doFetch(url, options, false);\n}\n\n// --------------------------------------------------------------------------\n// Errors\n// --------------------------------------------------------------------------\n\n/** Orval uses this to type the `error` field in SWR hooks as AvallonError */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport type ErrorType<E> = AvallonError;\n\n/** Typed error class for API errors. Thrown by customFetch on non-2xx responses. */\nexport class AvallonError extends Error {\n constructor(\n public readonly status: number,\n public readonly body: {\n data?: unknown;\n message?: string;\n }\n ) {\n super(body?.message ?? `API error ${status}`);\n this.name = \"AvallonError\";\n }\n\n /** Validation errors (400) have field-level details */\n get errors(): Array<{ field: string; message: string }> | undefined {\n const data = this.body?.data as {\n errors?: Array<{ field: string; message: string }>;\n };\n return data?.errors;\n }\n\n isValidationError(): boolean {\n return this.status === 400;\n }\n\n isUnauthorized(): boolean {\n return this.status === 401;\n }\n\n isNotFound(): boolean {\n return this.status === 404;\n }\n}\n","/**\n * PKCE Utilities\n *\n * Cryptographic helpers for OAuth PKCE flow. Platform-agnostic -\n * works in both Node.js and browsers via Web Crypto API.\n *\n * These utilities can't be generated from OpenAPI - they're\n * client-side crypto that complements the generated auth endpoints.\n *\n * @example\n * ```ts\n * import {\n * generateCodeVerifier,\n * generateCodeChallenge,\n * getV1AuthOauthUrl,\n * postV1AuthOauthExchange,\n * } from \"@avallon-labs/sdk\";\n *\n * // 1. Generate PKCE pair\n * const verifier = generateCodeVerifier();\n * const challenge = await generateCodeChallenge(verifier);\n *\n * // 2. Get OAuth URL (store verifier for after redirect)\n * sessionStorage.setItem(\"oauth_verifier\", verifier);\n * const { data } = await getV1AuthOauthUrl({\n * provider: \"google\",\n * redirect_uri: \"https://app.example.com/callback\",\n * code_challenge: challenge,\n * code_challenge_method: \"s256\",\n * });\n * window.location.href = data.data.url;\n *\n * // 3. After redirect, exchange code for tokens\n * const verifier = sessionStorage.getItem(\"oauth_verifier\");\n * const tokens = await postV1AuthOauthExchange({\n * code: urlParams.get(\"code\"),\n * code_verifier: verifier,\n * });\n * ```\n */\n\n// --------------------------------------------------------------------------\n// PKCE Utilities\n// --------------------------------------------------------------------------\n\n/** Generate a cryptographically random code verifier (43-128 chars) */\nexport function generateCodeVerifier(length = 64): string {\n const charset =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~\";\n const randomValues = crypto.getRandomValues(new Uint8Array(length));\n return Array.from(randomValues)\n .map((v) => charset[v % charset.length])\n .join(\"\");\n}\n\n/** Generate S256 code challenge from verifier */\nexport async function generateCodeChallenge(verifier: string): Promise<string> {\n const encoder = new TextEncoder();\n const data = encoder.encode(verifier);\n const digest = await crypto.subtle.digest(\"SHA-256\", data);\n return base64UrlEncode(digest);\n}\n\nfunction base64UrlEncode(buffer: ArrayBuffer): string {\n const bytes = new Uint8Array(buffer);\n let binary = \"\";\n for (const byte of bytes) {\n binary += String.fromCharCode(byte);\n }\n return btoa(binary)\n .replace(/\\+/g, \"-\")\n .replace(/\\//g, \"_\")\n .replace(/=+$/, \"\");\n}\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n GetAnalyticsTimeSeriesEnvelope,\n GetAnalyticsTimeSeriesParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getGetAnalyticsTimeSeriesUrl = (\n params: GetAnalyticsTimeSeriesParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/analytics/timeseries?${stringifiedParams}`\n : `/v1/analytics/timeseries`;\n};\n\n/**\n * Retrieve a tenant-scoped time series for a single processing-volume metric.\n *\n * Pick a `metric` (worker runs, documents, or pages), a date range, a bucket `granularity` (day/week/month), and optionally a `group_by` dimension (e.g. worker runs grouped by worker). The series is sparse (only buckets with data) over the half-open window `[from, to)`.\n *\n * `data` is an array of per-metric results; today it always contains exactly one entry (the requested metric).\n * @summary Get analytics time series\n */\nexport const getAnalyticsTimeSeries = async (\n params: GetAnalyticsTimeSeriesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetAnalyticsTimeSeriesEnvelope> => {\n return customFetch<GetAnalyticsTimeSeriesEnvelope>(\n getGetAnalyticsTimeSeriesUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetAnalyticsTimeSeriesKey = (\n params: GetAnalyticsTimeSeriesParams\n) => [`/v1/analytics/timeseries`, ...(params ? [params] : [])] as const;\n\nexport type GetAnalyticsTimeSeriesQueryResult = NonNullable<\n Awaited<ReturnType<typeof getAnalyticsTimeSeries>>\n>;\n\n/**\n * @summary Get analytics time series\n */\nexport const useGetAnalyticsTimeSeries = <TError = ErrorType<ErrorResponse>>(\n params: GetAnalyticsTimeSeriesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getAnalyticsTimeSeries>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetAnalyticsTimeSeriesKey(params) : null));\n const swrFn = () => getAnalyticsTimeSeries(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateApiKeyBody,\n CreateApiKeyEnvelope,\n ErrorResponse,\n ListApiKeysEnvelope,\n ListApiKeysParams,\n RevokeApiKeyEnvelope,\n UpdateApiKeyBody,\n UpdateApiKeyEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListApiKeysUrl = (params?: ListApiKeysParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/platform/api-keys?${stringifiedParams}`\n : `/platform/api-keys`;\n};\n\n/**\n * List all API keys for your tenant.\n *\n * By default, revoked keys are excluded. Set `include_revoked=true` to include them.\n *\n * **Note:** The full API key value is never returned — only the key prefix is shown.\n * @summary List API keys\n */\nexport const listApiKeys = async (\n params?: ListApiKeysParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListApiKeysEnvelope> => {\n return customFetch<ListApiKeysEnvelope>(getListApiKeysUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListApiKeysKey = (params?: ListApiKeysParams) =>\n [`/platform/api-keys`, ...(params ? [params] : [])] as const;\n\nexport type ListApiKeysQueryResult = NonNullable<\n Awaited<ReturnType<typeof listApiKeys>>\n>;\n\n/**\n * @summary List API keys\n */\nexport const useListApiKeys = <TError = ErrorType<ErrorResponse>>(\n params?: ListApiKeysParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listApiKeys>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListApiKeysKey(params) : null));\n const swrFn = () => listApiKeys(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateApiKeyUrl = () => {\n return `/platform/api-keys`;\n};\n\n/**\n * Create a new API key for authenticating with the Avallon API.\n *\n * **Important:** The full API key is only returned once in the response. Store it securely — it cannot be retrieved again.\n *\n * Keys are scoped to an environment (`test` or `live`) and optionally accept an expiration date.\n * @summary Create an API key\n */\nexport const createApiKey = async (\n createApiKeyBody?: CreateApiKeyBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateApiKeyEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateApiKeyEnvelope>(getCreateApiKeyUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createApiKeyBody),\n });\n};\n\nexport const getCreateApiKeyMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateApiKeyBody | undefined }) => {\n return createApiKey(arg, options);\n };\n};\nexport const getCreateApiKeyMutationKey = () => [`/platform/api-keys`] as const;\n\nexport type CreateApiKeyMutationResult = NonNullable<\n Awaited<ReturnType<typeof createApiKey>>\n>;\n\n/**\n * @summary Create an API key\n */\nexport const useCreateApiKey = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createApiKey>>,\n TError,\n Key,\n CreateApiKeyBody | undefined,\n Awaited<ReturnType<typeof createApiKey>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateApiKeyMutationKey();\n const swrFn = getCreateApiKeyMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRevokeApiKeyUrl = (id: string) => {\n return `/platform/api-keys/${id}/revoke`;\n};\n\n/**\n * Revoke an existing API key. Once revoked, the key can no longer be used for authentication.\n *\n * This operation is irreversible — revoked keys cannot be re-enabled. Create a new key if needed.\n *\n * Returns 409 if the key is already revoked, 404 if the key does not exist.\n * @summary Revoke an API key\n */\nexport const revokeApiKey = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<RevokeApiKeyEnvelope> => {\n return customFetch<RevokeApiKeyEnvelope>(getRevokeApiKeyUrl(id), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getRevokeApiKeyMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return revokeApiKey(id, options);\n };\n};\nexport const getRevokeApiKeyMutationKey = (id: string) =>\n [`/platform/api-keys/${id}/revoke`] as const;\n\nexport type RevokeApiKeyMutationResult = NonNullable<\n Awaited<ReturnType<typeof revokeApiKey>>\n>;\n\n/**\n * @summary Revoke an API key\n */\nexport const useRevokeApiKey = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof revokeApiKey>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof revokeApiKey>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRevokeApiKeyMutationKey(id);\n const swrFn = getRevokeApiKeyMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateApiKeyUrl = (id: string) => {\n return `/platform/api-keys/${id}`;\n};\n\n/**\n * Update mutable fields of an API key. Currently only `role` can be updated.\n *\n * The caller's role caps the maximum role they can grant — an `admin` cannot promote a key to `avallon_admin`.\n * @summary Update API key\n */\nexport const updateApiKey = async (\n id: string,\n updateApiKeyBody?: UpdateApiKeyBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateApiKeyEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateApiKeyEnvelope>(getUpdateApiKeyUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateApiKeyBody),\n });\n};\n\nexport const getUpdateApiKeyMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateApiKeyBody | undefined }) => {\n return updateApiKey(id, arg, options);\n };\n};\nexport const getUpdateApiKeyMutationKey = (id: string) =>\n [`/platform/api-keys/${id}`] as const;\n\nexport type UpdateApiKeyMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateApiKey>>\n>;\n\n/**\n * @summary Update API key\n */\nexport const useUpdateApiKey = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateApiKey>>,\n TError,\n Key,\n UpdateApiKeyBody | undefined,\n Awaited<ReturnType<typeof updateApiKey>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateApiKeyMutationKey(id);\n const swrFn = getUpdateApiKeyMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateArtifactBody,\n CreateArtifactEnvelope,\n DeleteArtifactEnvelope,\n ErrorResponse,\n GetArtifactEnvelope,\n GetArtifactMetadataKeysEnvelope,\n GetArtifactMetadataKeysParams,\n GetArtifactStatusSummaryEnvelope,\n GetArtifactStatusSummaryParams,\n GetArtifactUploadUrlBody,\n GetArtifactUploadUrlEnvelope,\n ListArtifactsEnvelope,\n ListArtifactsParams,\n UpdateArtifactMetadataBody,\n UpdateArtifactMetadataEnvelope,\n UploadFileBody,\n UploadFileEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateArtifactUrl = () => {\n return `/v1/artifacts`;\n};\n\n/**\n * Upload a document as a base64-encoded artifact for processing.\n *\n * **Limits:**\n *\n * Maximum file size is approximately 6.75MB (base64 encoded). The API Gateway has a 10MB request limit.\n *\n * **Processing options:**\n *\n * - `file_password`: Password for encrypted PDFs\n * - `file_splitting_enabled`: Split multi-page PDFs into separate artifacts\n * @summary Create artifact\n */\nexport const createArtifact = async (\n createArtifactBody?: CreateArtifactBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateArtifactEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateArtifactEnvelope>(getCreateArtifactUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createArtifactBody),\n });\n};\n\nexport const getCreateArtifactMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateArtifactBody | undefined }) => {\n return createArtifact(arg, options);\n };\n};\nexport const getCreateArtifactMutationKey = () => [`/v1/artifacts`] as const;\n\nexport type CreateArtifactMutationResult = NonNullable<\n Awaited<ReturnType<typeof createArtifact>>\n>;\n\n/**\n * @summary Create artifact\n */\nexport const useCreateArtifact = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createArtifact>>,\n TError,\n Key,\n CreateArtifactBody | undefined,\n Awaited<ReturnType<typeof createArtifact>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateArtifactMutationKey();\n const swrFn = getCreateArtifactMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListArtifactsUrl = (params?: ListArtifactsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"metadata\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/artifacts?${stringifiedParams}`\n : `/v1/artifacts`;\n};\n\n/**\n * List all artifacts with pagination, filtering, and sorting.\n *\n * **Case Filtering:**\n *\n * Use `case_id` to return only artifacts linked to a case. This reads the case links\n * created via `POST /v1/cases/{caseId}/links`, and is independent of any\n * `metadata.case_id` an artifact may carry.\n *\n * **Metadata Filtering:**\n *\n * Use bracket notation to filter by metadata keys:\n * - `metadata[claim_id]=abc-123`\n * - `metadata[source]=email`\n *\n * Multiple metadata filters can be combined (AND logic).\n * @summary List artifacts\n */\nexport const listArtifacts = async (\n params?: ListArtifactsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListArtifactsEnvelope> => {\n return customFetch<ListArtifactsEnvelope>(getListArtifactsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListArtifactsKey = (params?: ListArtifactsParams) =>\n [`/v1/artifacts`, ...(params ? [params] : [])] as const;\n\nexport type ListArtifactsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listArtifacts>>\n>;\n\n/**\n * @summary List artifacts\n */\nexport const useListArtifacts = <TError = ErrorType<ErrorResponse>>(\n params?: ListArtifactsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listArtifacts>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListArtifactsKey(params) : null));\n const swrFn = () => listArtifacts(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetArtifactUrl = (id: string) => {\n return `/v1/artifacts/${id}`;\n};\n\n/**\n * Retrieve a single artifact by ID, including its metadata, file URL, extracted content, and chunk-annotated content.\n *\n * The response always includes `content_with_chunkids_md`: the parsed content annotated with `[chunk_id=...]` markers when the artifact has parsed chunks. Chunk IDs are stable citation anchors — cite them to attribute extracted values to their source location.\n * @summary Get artifact\n */\nexport const getArtifact = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetArtifactEnvelope> => {\n return customFetch<GetArtifactEnvelope>(getGetArtifactUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetArtifactKey = (id: string) =>\n [`/v1/artifacts/${id}`] as const;\n\nexport type GetArtifactQueryResult = NonNullable<\n Awaited<ReturnType<typeof getArtifact>>\n>;\n\n/**\n * @summary Get artifact\n */\nexport const useGetArtifact = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getArtifact>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetArtifactKey(id) : null));\n const swrFn = () => getArtifact(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteArtifactUrl = (id: string) => {\n return `/v1/artifacts/${id}`;\n};\n\n/**\n * Soft-delete an artifact. Soft-deleted artifacts and their chunks no longer appear in any read.\n * @summary Delete artifact\n */\nexport const deleteArtifact = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteArtifactEnvelope> => {\n return customFetch<DeleteArtifactEnvelope>(getDeleteArtifactUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteArtifactMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteArtifact(id, options);\n };\n};\nexport const getDeleteArtifactMutationKey = (id: string) =>\n [`/v1/artifacts/${id}`] as const;\n\nexport type DeleteArtifactMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteArtifact>>\n>;\n\n/**\n * @summary Delete artifact\n */\nexport const useDeleteArtifact = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteArtifact>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteArtifact>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteArtifactMutationKey(id);\n const swrFn = getDeleteArtifactMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetArtifactMetadataKeysUrl = (\n params?: GetArtifactMetadataKeysParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/artifacts/metadata/keys?${stringifiedParams}`\n : `/v1/artifacts/metadata/keys`;\n};\n\n/**\n * Retrieve all unique metadata keys and their values across artifacts. Useful for building filter UIs.\n * @summary Get artifact metadata keys\n */\nexport const getArtifactMetadataKeys = async (\n params?: GetArtifactMetadataKeysParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetArtifactMetadataKeysEnvelope> => {\n return customFetch<GetArtifactMetadataKeysEnvelope>(\n getGetArtifactMetadataKeysUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetArtifactMetadataKeysKey = (\n params?: GetArtifactMetadataKeysParams\n) => [`/v1/artifacts/metadata/keys`, ...(params ? [params] : [])] as const;\n\nexport type GetArtifactMetadataKeysQueryResult = NonNullable<\n Awaited<ReturnType<typeof getArtifactMetadataKeys>>\n>;\n\n/**\n * @summary Get artifact metadata keys\n */\nexport const useGetArtifactMetadataKeys = <TError = ErrorType<ErrorResponse>>(\n params?: GetArtifactMetadataKeysParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getArtifactMetadataKeys>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetArtifactMetadataKeysKey(params) : null));\n const swrFn = () => getArtifactMetadataKeys(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetArtifactStatusSummaryUrl = (\n params: GetArtifactStatusSummaryParams\n) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"scope\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/artifacts/status-summary?${stringifiedParams}`\n : `/v1/artifacts/status-summary`;\n};\n\n/**\n * Count the artifacts in a scope, broken down by processing status.\n *\n * Define the scope with bracket notation (e.g. `scope[email_id]=abc-123`). At least one key is required; multiple keys are combined with AND logic.\n * @summary Get artifact status summary\n */\nexport const getArtifactStatusSummary = async (\n params: GetArtifactStatusSummaryParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetArtifactStatusSummaryEnvelope> => {\n return customFetch<GetArtifactStatusSummaryEnvelope>(\n getGetArtifactStatusSummaryUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetArtifactStatusSummaryKey = (\n params: GetArtifactStatusSummaryParams\n) => [`/v1/artifacts/status-summary`, ...(params ? [params] : [])] as const;\n\nexport type GetArtifactStatusSummaryQueryResult = NonNullable<\n Awaited<ReturnType<typeof getArtifactStatusSummary>>\n>;\n\n/**\n * @summary Get artifact status summary\n */\nexport const useGetArtifactStatusSummary = <TError = ErrorType<ErrorResponse>>(\n params: GetArtifactStatusSummaryParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getArtifactStatusSummary>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetArtifactStatusSummaryKey(params) : null));\n const swrFn = () => getArtifactStatusSummary(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetArtifactUploadUrlUrl = () => {\n return `/v1/artifacts/get-upload-url`;\n};\n\n/**\n * Returns a pre-signed PUT URL. Upload the file directly to `upload_url`, then pass `file_url` as `source_url` to POST /v1/upload-file.\n * @summary Request a pre-signed URL for direct large file upload\n */\nexport const getArtifactUploadUrl = async (\n getArtifactUploadUrlBody?: GetArtifactUploadUrlBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetArtifactUploadUrlEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<GetArtifactUploadUrlEnvelope>(\n getGetArtifactUploadUrlUrl(),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(getArtifactUploadUrlBody),\n }\n );\n};\n\nexport const getGetArtifactUploadUrlMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: GetArtifactUploadUrlBody | undefined }) => {\n return getArtifactUploadUrl(arg, options);\n };\n};\nexport const getGetArtifactUploadUrlMutationKey = () =>\n [`/v1/artifacts/get-upload-url`] as const;\n\nexport type GetArtifactUploadUrlMutationResult = NonNullable<\n Awaited<ReturnType<typeof getArtifactUploadUrl>>\n>;\n\n/**\n * @summary Request a pre-signed URL for direct large file upload\n */\nexport const useGetArtifactUploadUrl = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof getArtifactUploadUrl>>,\n TError,\n Key,\n GetArtifactUploadUrlBody | undefined,\n Awaited<ReturnType<typeof getArtifactUploadUrl>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getGetArtifactUploadUrlMutationKey();\n const swrFn = getGetArtifactUploadUrlMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateArtifactMetadataUrl = (id: string) => {\n return `/v1/artifacts/${id}/metadata`;\n};\n\n/**\n * Merge-update metadata on an existing artifact. Provided keys are added or overwritten; other existing keys are preserved.\n * @summary Update artifact metadata\n */\nexport const updateArtifactMetadata = async (\n id: string,\n updateArtifactMetadataBody?: UpdateArtifactMetadataBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateArtifactMetadataEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateArtifactMetadataEnvelope>(\n getUpdateArtifactMetadataUrl(id),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateArtifactMetadataBody),\n }\n );\n};\n\nexport const getUpdateArtifactMetadataMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateArtifactMetadataBody | undefined }) => {\n return updateArtifactMetadata(id, arg, options);\n };\n};\nexport const getUpdateArtifactMetadataMutationKey = (id: string) =>\n [`/v1/artifacts/${id}/metadata`] as const;\n\nexport type UpdateArtifactMetadataMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateArtifactMetadata>>\n>;\n\n/**\n * @summary Update artifact metadata\n */\nexport const useUpdateArtifactMetadata = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateArtifactMetadata>>,\n TError,\n Key,\n UpdateArtifactMetadataBody | undefined,\n Awaited<ReturnType<typeof updateArtifactMetadata>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateArtifactMetadataMutationKey(id);\n const swrFn = getUpdateArtifactMetadataMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUploadFileUrl = () => {\n return `/v1/upload-file`;\n};\n\n/**\n * Upload a file for processing by passing a URL to a file. Use this for uploading larger files.\n *\n * This endpoint returns an upload id that can be used to find the created artifacts using the list artifacts endpoint.\n * @summary Upload a file for processing\n */\nexport const uploadFile = async (\n uploadFileBody?: UploadFileBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UploadFileEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UploadFileEnvelope>(getUploadFileUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(uploadFileBody),\n });\n};\n\nexport const getUploadFileMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UploadFileBody | undefined }) => {\n return uploadFile(arg, options);\n };\n};\nexport const getUploadFileMutationKey = () => [`/v1/upload-file`] as const;\n\nexport type UploadFileMutationResult = NonNullable<\n Awaited<ReturnType<typeof uploadFile>>\n>;\n\n/**\n * @summary Upload a file for processing\n */\nexport const useUploadFile = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof uploadFile>>,\n TError,\n Key,\n UploadFileBody | undefined,\n Awaited<ReturnType<typeof uploadFile>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUploadFileMutationKey();\n const swrFn = getUploadFileMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n ErrorResponse,\n GetOAuthUrlEnvelope,\n GetOAuthUrlParams,\n GetSessionTokenBody,\n GetSessionTokenEnvelope,\n PartnerJwks,\n PartnerLaunchEnvelope,\n PartnerLaunchParams,\n RefreshTokenBody,\n RefreshTokenEnvelope,\n RequestPasswordResetBody,\n RequestPasswordResetEnvelope,\n ResetPasswordBody,\n ResetPasswordEnvelope,\n SignInBody,\n SignInEnvelope,\n SignUpBody,\n SignUpEnvelope,\n} from \"../../models\";\n\nimport { customFetchNoAuth } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getSignUpUrl = () => {\n return `/v1/auth/sign-up`;\n};\n\n/**\n * Create a new user account with email and password. When the response includes a pending_authentication_token, the account requires email verification: complete it via sign-in (type: email_otp) with the emailed one-time password and this token.\n * @summary Sign up\n */\nexport const signUp = async (\n signUpBody?: SignUpBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<SignUpEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<SignUpEnvelope>(getSignUpUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(signUpBody),\n });\n};\n\nexport const getSignUpMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: SignUpBody | undefined }) => {\n return signUp(arg, options);\n };\n};\nexport const getSignUpMutationKey = () => [`/v1/auth/sign-up`] as const;\n\nexport type SignUpMutationResult = NonNullable<\n Awaited<ReturnType<typeof signUp>>\n>;\n\n/**\n * @summary Sign up\n */\nexport const useSignUp = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof signUp>>,\n TError,\n Key,\n SignUpBody | undefined,\n Awaited<ReturnType<typeof signUp>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getSignUpMutationKey();\n const swrFn = getSignUpMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getSignInUrl = () => {\n return `/v1/auth/sign-in`;\n};\n\n/**\n * Authenticate using one of the supported methods:\n *\n * - **Password:** Email and password credentials. If the password is correct but the email is not verified yet, responds 403 with `data.pending_authentication_token` and a fresh verification code is emailed; complete verification via **Email OTP**. Each password attempt invalidates earlier codes and tokens, so always use the most recent pair — repeating the password sign-in is also how a new code is requested.\n * - **OAuth:** Authorization code from OAuth flow (social or enterprise SSO). Pass the `provider` the flow was started with so the code is exchanged against the system that issued it. `verifier` is only required when the flow was started with a `code_challenge` — see **Get OAuth sign-in URL**.\n * - **Email OTP:** One-time password sent to email. Include the `pending_authentication_token` from sign-up, or from the 403 returned by an unverified user's password sign-in, when completing email verification.\n * @summary Sign in\n */\nexport const signIn = async (\n signInBody?: SignInBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<SignInEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<SignInEnvelope>(getSignInUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(signInBody),\n });\n};\n\nexport const getSignInMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: SignInBody | undefined }) => {\n return signIn(arg, options);\n };\n};\nexport const getSignInMutationKey = () => [`/v1/auth/sign-in`] as const;\n\nexport type SignInMutationResult = NonNullable<\n Awaited<ReturnType<typeof signIn>>\n>;\n\n/**\n * @summary Sign in\n */\nexport const useSignIn = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof signIn>>,\n TError,\n Key,\n SignInBody | undefined,\n Awaited<ReturnType<typeof signIn>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getSignInMutationKey();\n const swrFn = getSignInMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRequestPasswordResetUrl = () => {\n return `/v1/auth/request-password-reset`;\n};\n\n/**\n * Start password recovery for an email/password account. When the email belongs to an account, a reset link is emailed to it. The response is 200 regardless, and does not reveal whether an account exists.\n * @summary Request password reset\n */\nexport const requestPasswordReset = async (\n requestPasswordResetBody?: RequestPasswordResetBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<RequestPasswordResetEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<RequestPasswordResetEnvelope>(\n getRequestPasswordResetUrl(),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(requestPasswordResetBody),\n }\n );\n};\n\nexport const getRequestPasswordResetMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: RequestPasswordResetBody | undefined }) => {\n return requestPasswordReset(arg, options);\n };\n};\nexport const getRequestPasswordResetMutationKey = () =>\n [`/v1/auth/request-password-reset`] as const;\n\nexport type RequestPasswordResetMutationResult = NonNullable<\n Awaited<ReturnType<typeof requestPasswordReset>>\n>;\n\n/**\n * @summary Request password reset\n */\nexport const useRequestPasswordReset = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof requestPasswordReset>>,\n TError,\n Key,\n RequestPasswordResetBody | undefined,\n Awaited<ReturnType<typeof requestPasswordReset>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRequestPasswordResetMutationKey();\n const swrFn = getRequestPasswordResetMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getResetPasswordUrl = () => {\n return `/v1/auth/reset-password`;\n};\n\n/**\n * Complete password recovery with the token from the emailed reset link and set a new password. Completing the reset also verifies the account's email address. Afterwards, sign in with the new password.\n * @summary Reset password\n */\nexport const resetPassword = async (\n resetPasswordBody?: ResetPasswordBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<ResetPasswordEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<ResetPasswordEnvelope>(getResetPasswordUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(resetPasswordBody),\n });\n};\n\nexport const getResetPasswordMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: ResetPasswordBody | undefined }) => {\n return resetPassword(arg, options);\n };\n};\nexport const getResetPasswordMutationKey = () =>\n [`/v1/auth/reset-password`] as const;\n\nexport type ResetPasswordMutationResult = NonNullable<\n Awaited<ReturnType<typeof resetPassword>>\n>;\n\n/**\n * @summary Reset password\n */\nexport const useResetPassword = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof resetPassword>>,\n TError,\n Key,\n ResetPasswordBody | undefined,\n Awaited<ReturnType<typeof resetPassword>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getResetPasswordMutationKey();\n const swrFn = getResetPasswordMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRefreshTokenUrl = () => {\n return `/v1/auth/refresh-token`;\n};\n\n/**\n * Exchange a valid access token and refresh token pair for new tokens.\n * @summary Refresh authentication token\n */\nexport const refreshToken = async (\n refreshTokenBody?: RefreshTokenBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<RefreshTokenEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<RefreshTokenEnvelope>(getRefreshTokenUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(refreshTokenBody),\n });\n};\n\nexport const getRefreshTokenMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: RefreshTokenBody | undefined }) => {\n return refreshToken(arg, options);\n };\n};\nexport const getRefreshTokenMutationKey = () =>\n [`/v1/auth/refresh-token`] as const;\n\nexport type RefreshTokenMutationResult = NonNullable<\n Awaited<ReturnType<typeof refreshToken>>\n>;\n\n/**\n * @summary Refresh authentication token\n */\nexport const useRefreshToken = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof refreshToken>>,\n TError,\n Key,\n RefreshTokenBody | undefined,\n Awaited<ReturnType<typeof refreshToken>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRefreshTokenMutationKey();\n const swrFn = getRefreshTokenMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetOAuthUrlUrl = (params: GetOAuthUrlParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/auth/oauth-url?${stringifiedParams}`\n : `/v1/auth/oauth-url`;\n};\n\n/**\n * Generate an OAuth authorization URL for a given provider.\n *\n * PKCE is optional. To use it, generate a random verifier, derive `code_challenge` from it, and pass both `code_challenge` and the matching `code_challenge_method` — then send the verifier to **Sign in** when exchanging the code. Omit both to run the flow without PKCE and exchange the code on its own.\n *\n * For enterprise SSO, pass `provider=sso` together with the user's `email`; the email domain selects the SSO organization. Responds 404 when no SSO organization is configured for the domain.\n * @summary Get OAuth sign-in URL\n */\nexport const getOAuthUrl = async (\n params: GetOAuthUrlParams,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<GetOAuthUrlEnvelope> => {\n return customFetchNoAuth<GetOAuthUrlEnvelope>(getGetOAuthUrlUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetOAuthUrlKey = (params: GetOAuthUrlParams) =>\n [`/v1/auth/oauth-url`, ...(params ? [params] : [])] as const;\n\nexport type GetOAuthUrlQueryResult = NonNullable<\n Awaited<ReturnType<typeof getOAuthUrl>>\n>;\n\n/**\n * @summary Get OAuth sign-in URL\n */\nexport const useGetOAuthUrl = <TError = ErrorType<ErrorResponse>>(\n params: GetOAuthUrlParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getOAuthUrl>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetchNoAuth>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetOAuthUrlKey(params) : null));\n const swrFn = () => getOAuthUrl(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetSessionTokenUrl = () => {\n return `/v1/auth/session`;\n};\n\n/**\n * Exchange an identity token for a tenant-scoped Core Plane access token.\n *\n * - If `tenant_id` is provided, validates the user is a member of that tenant and returns 404 if they are not.\n * - If `tenant_id` is omitted, selects the tenant of the identity token's organization, falling back to the user's default (oldest) tenant.\n * - Call this endpoint again with a different `tenant_id` to switch tenants.\n * @summary Create or switch tenant session\n */\nexport const getSessionToken = async (\n getSessionTokenBody?: GetSessionTokenBody,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<GetSessionTokenEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetchNoAuth<GetSessionTokenEnvelope>(getGetSessionTokenUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(getSessionTokenBody),\n });\n};\n\nexport const getGetSessionTokenMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: GetSessionTokenBody | undefined }) => {\n return getSessionToken(arg, options);\n };\n};\nexport const getGetSessionTokenMutationKey = () =>\n [`/v1/auth/session`] as const;\n\nexport type GetSessionTokenMutationResult = NonNullable<\n Awaited<ReturnType<typeof getSessionToken>>\n>;\n\n/**\n * @summary Create or switch tenant session\n */\nexport const useGetSessionToken = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof getSessionToken>>,\n TError,\n Key,\n GetSessionTokenBody | undefined,\n Awaited<ReturnType<typeof getSessionToken>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getGetSessionTokenMutationKey();\n const swrFn = getGetSessionTokenMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetPartnerJwksUrl = (partner: string) => {\n return `/.well-known/partners/${partner}/jwks.json`;\n};\n\n/**\n * Returns the JSON Web Key Set (RFC 7517) of a partner's public signing keys, used to verify partner-issued launch tokens.\n * @summary Get partner JWKS\n */\nexport const getPartnerJwks = async (\n partner: string,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<PartnerJwks> => {\n return customFetchNoAuth<PartnerJwks>(getGetPartnerJwksUrl(partner), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetPartnerJwksKey = (partner: string) =>\n [`/.well-known/partners/${partner}/jwks.json`] as const;\n\nexport type GetPartnerJwksQueryResult = NonNullable<\n Awaited<ReturnType<typeof getPartnerJwks>>\n>;\n\n/**\n * @summary Get partner JWKS\n */\nexport const useGetPartnerJwks = <TError = ErrorType<ErrorResponse>>(\n partner: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getPartnerJwks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetchNoAuth>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && partner !== null && partner !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetPartnerJwksKey(partner) : null));\n const swrFn = () => getPartnerJwks(partner, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPartnerLaunchUrl = (params?: PartnerLaunchParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/auth/partner-launch?${stringifiedParams}`\n : `/v1/auth/partner-launch`;\n};\n\n/**\n * Verifies a partner-signed launch token, mints an Avallon session, and redirects (302) the user into the app's handoff route, carrying the session token in the URL fragment (no cookie).\n * @summary Partner launch (SSO)\n */\nexport const partnerLaunch = async (\n params?: PartnerLaunchParams,\n options?: Parameters<typeof customFetchNoAuth>[1]\n): Promise<unknown> => {\n return customFetchNoAuth<unknown>(getPartnerLaunchUrl(params), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getPartnerLaunchMutationFetcher = (\n params?: PartnerLaunchParams,\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return partnerLaunch(params, options);\n };\n};\nexport const getPartnerLaunchMutationKey = (params?: PartnerLaunchParams) =>\n [`/v1/auth/partner-launch`, ...(params ? [params] : [])] as const;\n\nexport type PartnerLaunchMutationResult = NonNullable<\n Awaited<ReturnType<typeof partnerLaunch>>\n>;\n\n/**\n * @summary Partner launch (SSO)\n */\nexport const usePartnerLaunch = <\n TError = ErrorType<PartnerLaunchEnvelope | ErrorResponse>,\n>(\n params?: PartnerLaunchParams,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof partnerLaunch>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof partnerLaunch>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetchNoAuth>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getPartnerLaunchMutationKey(params);\n const swrFn = getPartnerLaunchMutationFetcher(params, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateCallFeedbackEnvelope,\n CreateFeedbackRequest,\n DeleteCallFeedbackEnvelope,\n ErrorResponse,\n ListCallFeedbackEnvelope,\n ListCallFeedbackParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateCallFeedbackUrl = (id: string) => {\n return `/v1/calls/${id}/feedback`;\n};\n\n/**\n * Create feedback for a specific message in a call. Requires user (JWT) authentication; the author is derived from the authenticated user's profile and API-key callers are rejected.\n * @summary Create feedback on a call message\n */\nexport const createCallFeedback = async (\n id: string,\n createFeedbackRequest?: CreateFeedbackRequest,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateCallFeedbackEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateCallFeedbackEnvelope>(getCreateCallFeedbackUrl(id), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createFeedbackRequest),\n });\n};\n\nexport const getCreateCallFeedbackMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateFeedbackRequest | undefined }) => {\n return createCallFeedback(id, arg, options);\n };\n};\nexport const getCreateCallFeedbackMutationKey = (id: string) =>\n [`/v1/calls/${id}/feedback`] as const;\n\nexport type CreateCallFeedbackMutationResult = NonNullable<\n Awaited<ReturnType<typeof createCallFeedback>>\n>;\n\n/**\n * @summary Create feedback on a call message\n */\nexport const useCreateCallFeedback = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createCallFeedback>>,\n TError,\n Key,\n CreateFeedbackRequest | undefined,\n Awaited<ReturnType<typeof createCallFeedback>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateCallFeedbackMutationKey(id);\n const swrFn = getCreateCallFeedbackMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListCallFeedbackUrl = (\n id: string,\n params?: ListCallFeedbackParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/calls/${id}/feedback?${stringifiedParams}`\n : `/v1/calls/${id}/feedback`;\n};\n\n/**\n * List all feedback for a call. Paginated.\n * @summary List feedback for a call\n */\nexport const listCallFeedback = async (\n id: string,\n params?: ListCallFeedbackParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListCallFeedbackEnvelope> => {\n return customFetch<ListCallFeedbackEnvelope>(\n getListCallFeedbackUrl(id, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListCallFeedbackKey = (\n id: string,\n params?: ListCallFeedbackParams\n) => [`/v1/calls/${id}/feedback`, ...(params ? [params] : [])] as const;\n\nexport type ListCallFeedbackQueryResult = NonNullable<\n Awaited<ReturnType<typeof listCallFeedback>>\n>;\n\n/**\n * @summary List feedback for a call\n */\nexport const useListCallFeedback = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListCallFeedbackParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listCallFeedback>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListCallFeedbackKey(id, params) : null));\n const swrFn = () => listCallFeedback(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteCallFeedbackUrl = (id: string, feedbackId: string) => {\n return `/v1/calls/${id}/feedback/${feedbackId}`;\n};\n\n/**\n * Delete a single feedback entry.\n * @summary Delete feedback\n */\nexport const deleteCallFeedback = async (\n id: string,\n feedbackId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteCallFeedbackEnvelope> => {\n return customFetch<DeleteCallFeedbackEnvelope>(\n getDeleteCallFeedbackUrl(id, feedbackId),\n {\n ...options,\n method: \"DELETE\",\n }\n );\n};\n\nexport const getDeleteCallFeedbackMutationFetcher = (\n id: string,\n feedbackId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteCallFeedback(id, feedbackId, options);\n };\n};\nexport const getDeleteCallFeedbackMutationKey = (\n id: string,\n feedbackId: string\n) => [`/v1/calls/${id}/feedback/${feedbackId}`] as const;\n\nexport type DeleteCallFeedbackMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteCallFeedback>>\n>;\n\n/**\n * @summary Delete feedback\n */\nexport const useDeleteCallFeedback = <TError = ErrorType<ErrorResponse>>(\n id: string,\n feedbackId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteCallFeedback>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteCallFeedback>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getDeleteCallFeedbackMutationKey(id, feedbackId);\n const swrFn = getDeleteCallFeedbackMutationFetcher(\n id,\n feedbackId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n GetCallAnalyticsEnvelope,\n GetCallAnalyticsParams,\n GetCallEnvelope,\n GetCallEvaluationEnvelope,\n GetCallParams,\n ListCallsEnvelope,\n ListCallsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListCallsUrl = (params?: ListCallsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"metadata\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/calls?${stringifiedParams}`\n : `/v1/calls`;\n};\n\n/**\n * List all calls, with pagination, filtering, and sorting.\n *\n * **Filtering:**\n *\n * Filter by agent, direction, status, time range, phone number, and more. Phone number filter supports both exact E.164 matches and partial search.\n *\n * **Case Filtering:**\n *\n * Use `case_id` to return only calls linked to a case. This reads the case links created\n * via `POST /v1/cases/{caseId}/links`, and is independent of any `metadata.case_id` a\n * call may carry.\n *\n * **Metadata Filtering:**\n *\n * Use bracket notation to filter by metadata keys:\n * - `metadata[claim_id]=abc-123`\n * - `metadata[source]=worker`\n *\n * Multiple metadata filters can be combined (AND logic).\n * @summary List calls\n */\nexport const listCalls = async (\n params?: ListCallsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListCallsEnvelope> => {\n return customFetch<ListCallsEnvelope>(getListCallsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListCallsKey = (params?: ListCallsParams) =>\n [`/v1/calls`, ...(params ? [params] : [])] as const;\n\nexport type ListCallsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listCalls>>\n>;\n\n/**\n * @summary List calls\n */\nexport const useListCalls = <TError = ErrorType<ErrorResponse>>(\n params?: ListCallsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listCalls>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListCallsKey(params) : null));\n const swrFn = () => listCalls(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetCallUrl = (id: string, params?: GetCallParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/calls/${id}?${stringifiedParams}`\n : `/v1/calls/${id}`;\n};\n\n/**\n * Retrieve detailed information about a specific call.\n *\n * Set `include_messages=true` to include the full message transcript.\n * @summary Get call\n */\nexport const getCall = async (\n id: string,\n params?: GetCallParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetCallEnvelope> => {\n return customFetch<GetCallEnvelope>(getGetCallUrl(id, params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetCallKey = (id: string, params?: GetCallParams) =>\n [`/v1/calls/${id}`, ...(params ? [params] : [])] as const;\n\nexport type GetCallQueryResult = NonNullable<\n Awaited<ReturnType<typeof getCall>>\n>;\n\n/**\n * @summary Get call\n */\nexport const useGetCall = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: GetCallParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getCall>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetCallKey(id, params) : null));\n const swrFn = () => getCall(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetCallEvaluationUrl = (id: string) => {\n return `/v1/calls/${id}/evaluation`;\n};\n\n/**\n * Retrieve the evaluation results for a specific call, including overall score, pass status, and per-metric breakdowns.\n * @summary Get call evaluation\n */\nexport const getCallEvaluation = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetCallEvaluationEnvelope> => {\n return customFetch<GetCallEvaluationEnvelope>(getGetCallEvaluationUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetCallEvaluationKey = (id: string) =>\n [`/v1/calls/${id}/evaluation`] as const;\n\nexport type GetCallEvaluationQueryResult = NonNullable<\n Awaited<ReturnType<typeof getCallEvaluation>>\n>;\n\n/**\n * @summary Get call evaluation\n */\nexport const useGetCallEvaluation = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getCallEvaluation>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetCallEvaluationKey(id) : null));\n const swrFn = () => getCallEvaluation(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetCallAnalyticsUrl = (params: GetCallAnalyticsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/calls/analytics?${stringifiedParams}`\n : `/v1/calls/analytics`;\n};\n\n/**\n * Retrieve aggregated call analytics for a time range.\n *\n * Includes summary statistics, call volume over time, evaluation scores, score and duration distributions, and per-metric performance.\n * @summary Get call analytics\n */\nexport const getCallAnalytics = async (\n params: GetCallAnalyticsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetCallAnalyticsEnvelope> => {\n return customFetch<GetCallAnalyticsEnvelope>(getGetCallAnalyticsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetCallAnalyticsKey = (params: GetCallAnalyticsParams) =>\n [`/v1/calls/analytics`, ...(params ? [params] : [])] as const;\n\nexport type GetCallAnalyticsQueryResult = NonNullable<\n Awaited<ReturnType<typeof getCallAnalytics>>\n>;\n\n/**\n * @summary Get call analytics\n */\nexport const useGetCallAnalytics = <TError = ErrorType<ErrorResponse>>(\n params: GetCallAnalyticsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getCallAnalytics>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetCallAnalyticsKey(params) : null));\n const swrFn = () => getCallAnalytics(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n AddCaseLinksBody,\n AddCaseLinksEnvelope,\n AddCaseLinksParams,\n CreateCaseBody,\n CreateCaseEnvelope,\n DeleteCaseEnvelope,\n DeleteCaseParams,\n ErrorResponse,\n GetCaseEnvelope,\n GetCaseParams,\n ListCaseLinksEnvelope,\n ListCaseLinksParams,\n ListCasesEnvelope,\n ListCasesParams,\n RemoveCaseLinkEnvelope,\n RemoveCaseLinkParams,\n SearchCasesEnvelope,\n SearchCasesParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListCasesUrl = (params?: ListCasesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases?${stringifiedParams}`\n : `/v1/cases`;\n};\n\n/**\n * List all cases for the current tenant, paginated, filterable, and sortable.\n * @summary List cases\n */\nexport const listCases = async (\n params?: ListCasesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListCasesEnvelope> => {\n return customFetch<ListCasesEnvelope>(getListCasesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListCasesKey = (params?: ListCasesParams) =>\n [`/v1/cases`, ...(params ? [params] : [])] as const;\n\nexport type ListCasesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listCases>>\n>;\n\n/**\n * @summary List cases\n */\nexport const useListCases = <TError = ErrorType<ErrorResponse>>(\n params?: ListCasesParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listCases>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListCasesKey(params) : null));\n const swrFn = () => listCases(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateCaseUrl = () => {\n return `/v1/cases`;\n};\n\n/**\n * Create a case with a client-supplied id.\n *\n * Case ids are tenant-scoped opaque keys (e.g. \"clm-1\", \"STD-001\") and are normalized server-side (trimmed and lowercased). Creating an id that already exists **in the same environment** returns 409 — the same id can exist once in `live` and once in `test`.\n * @summary Create case\n */\nexport const createCase = async (\n createCaseBody?: CreateCaseBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateCaseEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateCaseEnvelope>(getCreateCaseUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createCaseBody),\n });\n};\n\nexport const getCreateCaseMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateCaseBody | undefined }) => {\n return createCase(arg, options);\n };\n};\nexport const getCreateCaseMutationKey = () => [`/v1/cases`] as const;\n\nexport type CreateCaseMutationResult = NonNullable<\n Awaited<ReturnType<typeof createCase>>\n>;\n\n/**\n * @summary Create case\n */\nexport const useCreateCase = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createCase>>,\n TError,\n Key,\n CreateCaseBody | undefined,\n Awaited<ReturnType<typeof createCase>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateCaseMutationKey();\n const swrFn = getCreateCaseMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getSearchCasesUrl = (params: SearchCasesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/search?${stringifiedParams}`\n : `/v1/cases/search`;\n};\n\n/**\n * Probe for candidate cases. Matches the query as a normalized substring of the case id, and fuzzily (trigram) against subject and reporter. Results are relevance-ranked — id matches first, then best fuzzy match, then most recently updated — so ordering is fixed and not configurable.\n * @summary Search cases\n */\nexport const searchCases = async (\n params: SearchCasesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<SearchCasesEnvelope> => {\n return customFetch<SearchCasesEnvelope>(getSearchCasesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getSearchCasesKey = (params: SearchCasesParams) =>\n [`/v1/cases/search`, ...(params ? [params] : [])] as const;\n\nexport type SearchCasesQueryResult = NonNullable<\n Awaited<ReturnType<typeof searchCases>>\n>;\n\n/**\n * @summary Search cases\n */\nexport const useSearchCases = <TError = ErrorType<ErrorResponse>>(\n params: SearchCasesParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof searchCases>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getSearchCasesKey(params) : null));\n const swrFn = () => searchCases(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetCaseUrl = (id: string, params?: GetCaseParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}?${stringifiedParams}`\n : `/v1/cases/${id}`;\n};\n\n/**\n * Retrieve a case by id.\n *\n * Related entities are not embedded — fetch them via the filtered list endpoints,\n * e.g. `GET /v1/worker-runs?case_id=…` and `GET /v1/artifacts?metadata[case_id]=…`.\n * @summary Get case\n */\nexport const getCase = async (\n id: string,\n params?: GetCaseParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetCaseEnvelope> => {\n return customFetch<GetCaseEnvelope>(getGetCaseUrl(id, params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetCaseKey = (id: string, params?: GetCaseParams) =>\n [`/v1/cases/${id}`, ...(params ? [params] : [])] as const;\n\nexport type GetCaseQueryResult = NonNullable<\n Awaited<ReturnType<typeof getCase>>\n>;\n\n/**\n * @summary Get case\n */\nexport const useGetCase = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: GetCaseParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getCase>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetCaseKey(id, params) : null));\n const swrFn = () => getCase(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteCaseUrl = (id: string, params?: DeleteCaseParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}?${stringifiedParams}`\n : `/v1/cases/${id}`;\n};\n\n/**\n * Delete a case.\n *\n * The case and its links stop being visible; the linked entities themselves are untouched. The id becomes available again — a case created with the same id afterwards is a new, empty case, not the deleted one.\n *\n * Unlike removing a case link, this is **not** idempotent: deleting a case that does not exist, or has already been deleted, returns 404.\n * @summary Delete case\n */\nexport const deleteCase = async (\n id: string,\n params?: DeleteCaseParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteCaseEnvelope> => {\n return customFetch<DeleteCaseEnvelope>(getDeleteCaseUrl(id, params), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteCaseMutationFetcher = (\n id: string,\n params?: DeleteCaseParams,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteCase(id, params, options);\n };\n};\nexport const getDeleteCaseMutationKey = (\n id: string,\n params?: DeleteCaseParams\n) => [`/v1/cases/${id}`, ...(params ? [params] : [])] as const;\n\nexport type DeleteCaseMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteCase>>\n>;\n\n/**\n * @summary Delete case\n */\nexport const useDeleteCase = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: DeleteCaseParams,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteCase>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteCase>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteCaseMutationKey(id, params);\n const swrFn = getDeleteCaseMutationFetcher(id, params, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getAddCaseLinksUrl = (id: string, params?: AddCaseLinksParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}/links?${stringifiedParams}`\n : `/v1/cases/${id}/links`;\n};\n\n/**\n * Link up to 100 entities (artifacts, calls, chats, emails, extracts, information requests, schedules, worker runs) to a case.\n *\n * The case and every entity must already exist in the tenant — unknown ids return 404 and nothing is created. Calls, emails, information requests and worker runs must belong to the case's environment, and a schedule must run in it; artifacts, chats and extracts are not environment-scoped and can be linked to a case in either. A mismatch rejects the whole request. Adding is idempotent: re-linking an already linked entity returns the existing link with its original `created_at`.\n * @summary Add case links\n */\nexport const addCaseLinks = async (\n id: string,\n addCaseLinksBody?: AddCaseLinksBody,\n params?: AddCaseLinksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<AddCaseLinksEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<AddCaseLinksEnvelope>(getAddCaseLinksUrl(id, params), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(addCaseLinksBody),\n });\n};\n\nexport const getAddCaseLinksMutationFetcher = (\n id: string,\n params?: AddCaseLinksParams,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: AddCaseLinksBody | undefined }) => {\n return addCaseLinks(id, arg, params, options);\n };\n};\nexport const getAddCaseLinksMutationKey = (\n id: string,\n params?: AddCaseLinksParams\n) => [`/v1/cases/${id}/links`, ...(params ? [params] : [])] as const;\n\nexport type AddCaseLinksMutationResult = NonNullable<\n Awaited<ReturnType<typeof addCaseLinks>>\n>;\n\n/**\n * @summary Add case links\n */\nexport const useAddCaseLinks = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: AddCaseLinksParams,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof addCaseLinks>>,\n TError,\n Key,\n AddCaseLinksBody | undefined,\n Awaited<ReturnType<typeof addCaseLinks>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getAddCaseLinksMutationKey(id, params);\n const swrFn = getAddCaseLinksMutationFetcher(id, params, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListCaseLinksUrl = (\n id: string,\n params?: ListCaseLinksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}/links?${stringifiedParams}`\n : `/v1/cases/${id}/links`;\n};\n\n/**\n * List the entities linked to a case, paginated and filterable by entity type.\n * @summary List case links\n */\nexport const listCaseLinks = async (\n id: string,\n params?: ListCaseLinksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListCaseLinksEnvelope> => {\n return customFetch<ListCaseLinksEnvelope>(getListCaseLinksUrl(id, params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListCaseLinksKey = (id: string, params?: ListCaseLinksParams) =>\n [`/v1/cases/${id}/links`, ...(params ? [params] : [])] as const;\n\nexport type ListCaseLinksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listCaseLinks>>\n>;\n\n/**\n * @summary List case links\n */\nexport const useListCaseLinks = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListCaseLinksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listCaseLinks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListCaseLinksKey(id, params) : null));\n const swrFn = () => listCaseLinks(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRemoveCaseLinkUrl = (\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/cases/${id}/links/${entityType}/${entityId}?${stringifiedParams}`\n : `/v1/cases/${id}/links/${entityType}/${entityId}`;\n};\n\n/**\n * Remove the link between a case and an entity. Removal is idempotent: removing a link that does not exist succeeds without effect.\n * @summary Remove case link\n */\nexport const removeCaseLink = async (\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<RemoveCaseLinkEnvelope> => {\n return customFetch<RemoveCaseLinkEnvelope>(\n getRemoveCaseLinkUrl(id, entityType, entityId, params),\n {\n ...options,\n method: \"DELETE\",\n }\n );\n};\n\nexport const getRemoveCaseLinkMutationFetcher = (\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return removeCaseLink(id, entityType, entityId, params, options);\n };\n};\nexport const getRemoveCaseLinkMutationKey = (\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams\n) =>\n [\n `/v1/cases/${id}/links/${entityType}/${entityId}`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type RemoveCaseLinkMutationResult = NonNullable<\n Awaited<ReturnType<typeof removeCaseLink>>\n>;\n\n/**\n * @summary Remove case link\n */\nexport const useRemoveCaseLink = <TError = ErrorType<ErrorResponse>>(\n id: string,\n entityType:\n | \"artifact\"\n | \"call\"\n | \"chat\"\n | \"email\"\n | \"extract\"\n | \"information_request\"\n | \"schedule\"\n | \"worker_run\",\n entityId: string,\n params?: RemoveCaseLinkParams,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof removeCaseLink>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof removeCaseLink>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ??\n getRemoveCaseLinkMutationKey(id, entityType, entityId, params);\n const swrFn = getRemoveCaseLinkMutationFetcher(\n id,\n entityType,\n entityId,\n params,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateChatAgentBody,\n CreateChatAgentEnvelope,\n DeleteChatAgentEnvelope,\n ErrorResponse,\n GetChatAgentEnvelope,\n GetChatAgentPromptEnvelope,\n ListChatAgentsEnvelope,\n ListChatAgentsParams,\n UpdateChatAgentEnvelope,\n UpdateChatAgentPromptBody,\n UpdateChatAgentPromptEnvelope,\n UpdateChatAgentRequest,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateChatAgentUrl = () => {\n return `/v1/chat-agents`;\n};\n\n/**\n * Create a new chat agent with a name and prompt.\n * @summary Create chat agent\n */\nexport const createChatAgent = async (\n createChatAgentBody?: CreateChatAgentBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateChatAgentEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateChatAgentEnvelope>(getCreateChatAgentUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createChatAgentBody),\n });\n};\n\nexport const getCreateChatAgentMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateChatAgentBody | undefined }) => {\n return createChatAgent(arg, options);\n };\n};\nexport const getCreateChatAgentMutationKey = () => [`/v1/chat-agents`] as const;\n\nexport type CreateChatAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof createChatAgent>>\n>;\n\n/**\n * @summary Create chat agent\n */\nexport const useCreateChatAgent = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createChatAgent>>,\n TError,\n Key,\n CreateChatAgentBody | undefined,\n Awaited<ReturnType<typeof createChatAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateChatAgentMutationKey();\n const swrFn = getCreateChatAgentMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListChatAgentsUrl = (params?: ListChatAgentsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/chat-agents?${stringifiedParams}`\n : `/v1/chat-agents`;\n};\n\n/**\n * List the tenant's chat agents with pagination and sorting. Prompts are not returned.\n * @summary List chat agents\n */\nexport const listChatAgents = async (\n params?: ListChatAgentsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListChatAgentsEnvelope> => {\n return customFetch<ListChatAgentsEnvelope>(getListChatAgentsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListChatAgentsKey = (params?: ListChatAgentsParams) =>\n [`/v1/chat-agents`, ...(params ? [params] : [])] as const;\n\nexport type ListChatAgentsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listChatAgents>>\n>;\n\n/**\n * @summary List chat agents\n */\nexport const useListChatAgents = <TError = ErrorType<ErrorResponse>>(\n params?: ListChatAgentsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listChatAgents>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListChatAgentsKey(params) : null));\n const swrFn = () => listChatAgents(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetChatAgentUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}`;\n};\n\n/**\n * Retrieve a single chat agent by ID, including the IDs of its attached code tools. The prompt is not returned.\n * @summary Get chat agent\n */\nexport const getChatAgent = async (\n chatAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetChatAgentEnvelope> => {\n return customFetch<GetChatAgentEnvelope>(getGetChatAgentUrl(chatAgentId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetChatAgentKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}`] as const;\n\nexport type GetChatAgentQueryResult = NonNullable<\n Awaited<ReturnType<typeof getChatAgent>>\n>;\n\n/**\n * @summary Get chat agent\n */\nexport const useGetChatAgent = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getChatAgent>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n chatAgentId !== null &&\n chatAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetChatAgentKey(chatAgentId) : null));\n const swrFn = () => getChatAgent(chatAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateChatAgentUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}`;\n};\n\n/**\n * Patch a chat agent's settings. Today only the attached code tool set can be edited; future fields will be added under the same endpoint. The response returns the chat agent's metadata only and does not include the resulting tool list; the agent's `updated_at` is not bumped when only the tool set changes.\n * @summary Update chat agent\n */\nexport const updateChatAgent = async (\n chatAgentId: string,\n updateChatAgentRequest?: UpdateChatAgentRequest,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateChatAgentEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateChatAgentEnvelope>(\n getUpdateChatAgentUrl(chatAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateChatAgentRequest),\n }\n );\n};\n\nexport const getUpdateChatAgentMutationFetcher = (\n chatAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateChatAgentRequest | undefined }) => {\n return updateChatAgent(chatAgentId, arg, options);\n };\n};\nexport const getUpdateChatAgentMutationKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}`] as const;\n\nexport type UpdateChatAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateChatAgent>>\n>;\n\n/**\n * @summary Update chat agent\n */\nexport const useUpdateChatAgent = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateChatAgent>>,\n TError,\n Key,\n UpdateChatAgentRequest | undefined,\n Awaited<ReturnType<typeof updateChatAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateChatAgentMutationKey(chatAgentId);\n const swrFn = getUpdateChatAgentMutationFetcher(chatAgentId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteChatAgentUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}`;\n};\n\n/**\n * Soft-delete a chat agent. The agent no longer appears in any read and stops accepting new chats; existing chats and messages are preserved.\n * @summary Delete chat agent\n */\nexport const deleteChatAgent = async (\n chatAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteChatAgentEnvelope> => {\n return customFetch<DeleteChatAgentEnvelope>(\n getDeleteChatAgentUrl(chatAgentId),\n {\n ...options,\n method: \"DELETE\",\n }\n );\n};\n\nexport const getDeleteChatAgentMutationFetcher = (\n chatAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteChatAgent(chatAgentId, options);\n };\n};\nexport const getDeleteChatAgentMutationKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}`] as const;\n\nexport type DeleteChatAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteChatAgent>>\n>;\n\n/**\n * @summary Delete chat agent\n */\nexport const useDeleteChatAgent = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteChatAgent>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteChatAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getDeleteChatAgentMutationKey(chatAgentId);\n const swrFn = getDeleteChatAgentMutationFetcher(chatAgentId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetChatAgentPromptUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}/prompt`;\n};\n\n/**\n * Retrieve the prompt and greeting for a chat agent. Internal use only.\n * @summary Get chat agent prompt\n */\nexport const getChatAgentPrompt = async (\n chatAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetChatAgentPromptEnvelope> => {\n return customFetch<GetChatAgentPromptEnvelope>(\n getGetChatAgentPromptUrl(chatAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetChatAgentPromptKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}/prompt`] as const;\n\nexport type GetChatAgentPromptQueryResult = NonNullable<\n Awaited<ReturnType<typeof getChatAgentPrompt>>\n>;\n\n/**\n * @summary Get chat agent prompt\n */\nexport const useGetChatAgentPrompt = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getChatAgentPrompt>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n chatAgentId !== null &&\n chatAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetChatAgentPromptKey(chatAgentId) : null));\n const swrFn = () => getChatAgentPrompt(chatAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateChatAgentPromptUrl = (chatAgentId: string) => {\n return `/v1/chat-agents/${chatAgentId}/prompt`;\n};\n\n/**\n * Update the prompt and/or greeting for a chat agent. Internal use only.\n * @summary Update chat agent prompt\n */\nexport const updateChatAgentPrompt = async (\n chatAgentId: string,\n updateChatAgentPromptBody?: UpdateChatAgentPromptBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateChatAgentPromptEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateChatAgentPromptEnvelope>(\n getUpdateChatAgentPromptUrl(chatAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateChatAgentPromptBody),\n }\n );\n};\n\nexport const getUpdateChatAgentPromptMutationFetcher = (\n chatAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateChatAgentPromptBody | undefined }) => {\n return updateChatAgentPrompt(chatAgentId, arg, options);\n };\n};\nexport const getUpdateChatAgentPromptMutationKey = (chatAgentId: string) =>\n [`/v1/chat-agents/${chatAgentId}/prompt`] as const;\n\nexport type UpdateChatAgentPromptMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateChatAgentPrompt>>\n>;\n\n/**\n * @summary Update chat agent prompt\n */\nexport const useUpdateChatAgentPrompt = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateChatAgentPrompt>>,\n TError,\n Key,\n UpdateChatAgentPromptBody | undefined,\n Awaited<ReturnType<typeof updateChatAgentPrompt>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateChatAgentPromptMutationKey(chatAgentId);\n const swrFn = getUpdateChatAgentPromptMutationFetcher(\n chatAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateChatBody,\n CreateChatEnvelope,\n ErrorResponse,\n GetChatEnvelope,\n GetPublicChatAgentEnvelope,\n ListChatMessagesEnvelope,\n ListChatMessagesParams,\n ListChatsEnvelope,\n ListChatsParams,\n PostChatMessageBody,\n PostChatMessageEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateChatUrl = () => {\n return `/public/v1/chats`;\n};\n\n/**\n * Create a new chat against an existing chat agent. The chat agent's tenant becomes the owner of the chat.\n * @summary Create a chat\n */\nexport const createChat = async (\n createChatBody?: CreateChatBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateChatEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateChatEnvelope>(getCreateChatUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createChatBody),\n });\n};\n\nexport const getCreateChatMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateChatBody | undefined }) => {\n return createChat(arg, options);\n };\n};\nexport const getCreateChatMutationKey = () => [`/public/v1/chats`] as const;\n\nexport type CreateChatMutationResult = NonNullable<\n Awaited<ReturnType<typeof createChat>>\n>;\n\n/**\n * @summary Create a chat\n */\nexport const useCreateChat = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createChat>>,\n TError,\n Key,\n CreateChatBody | undefined,\n Awaited<ReturnType<typeof createChat>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateChatMutationKey();\n const swrFn = getCreateChatMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetChatUrl = (chatId: string) => {\n return `/public/v1/chats/${chatId}`;\n};\n\n/**\n * Return a chat and its messages in chronological order. Used to re-render a transcript after a reload. Only `user` and `assistant` messages are included; tool calls and tool results are omitted. Each message's `content` is the concatenation of its text blocks separated by newlines.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /public/v1/chat`\n * @summary Get a chat\n */\nexport const getChat = async (\n chatId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetChatEnvelope> => {\n return customFetch<GetChatEnvelope>(getGetChatUrl(chatId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetChatKey = (chatId: string) =>\n [`/public/v1/chats/${chatId}`] as const;\n\nexport type GetChatQueryResult = NonNullable<\n Awaited<ReturnType<typeof getChat>>\n>;\n\n/**\n * @summary Get a chat\n */\nexport const useGetChat = <TError = ErrorType<ErrorResponse>>(\n chatId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getChat>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && chatId !== null && chatId !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetChatKey(chatId) : null));\n const swrFn = () => getChat(chatId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetPublicChatAgentUrl = (chatAgentId: string) => {\n return `/public/v1/chat-agents/${chatAgentId}`;\n};\n\n/**\n * Return the public-facing fields of a chat agent for use in the chat UI. Sensitive fields such as the agent's prompt and tenant ID are not exposed.\n * @summary Get a chat agent (public)\n */\nexport const getPublicChatAgent = async (\n chatAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetPublicChatAgentEnvelope> => {\n return customFetch<GetPublicChatAgentEnvelope>(\n getGetPublicChatAgentUrl(chatAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetPublicChatAgentKey = (chatAgentId: string) =>\n [`/public/v1/chat-agents/${chatAgentId}`] as const;\n\nexport type GetPublicChatAgentQueryResult = NonNullable<\n Awaited<ReturnType<typeof getPublicChatAgent>>\n>;\n\n/**\n * @summary Get a chat agent (public)\n */\nexport const useGetPublicChatAgent = <TError = ErrorType<ErrorResponse>>(\n chatAgentId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getPublicChatAgent>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n chatAgentId !== null &&\n chatAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetPublicChatAgentKey(chatAgentId) : null));\n const swrFn = () => getPublicChatAgent(chatAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPostChatMessageUrl = (chatId: string) => {\n return `/public/v1/chats/${chatId}/messages`;\n};\n\n/**\n * Post a user message to an existing chat and return the assistant reply. Both messages are persisted.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /public/v1/chat/messages`\n * @summary Post a message to a chat\n */\nexport const postChatMessage = async (\n chatId: string,\n postChatMessageBody?: PostChatMessageBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<PostChatMessageEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<PostChatMessageEnvelope>(getPostChatMessageUrl(chatId), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(postChatMessageBody),\n });\n};\n\nexport const getPostChatMessageMutationFetcher = (\n chatId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: PostChatMessageBody | undefined }) => {\n return postChatMessage(chatId, arg, options);\n };\n};\nexport const getPostChatMessageMutationKey = (chatId: string) =>\n [`/public/v1/chats/${chatId}/messages`] as const;\n\nexport type PostChatMessageMutationResult = NonNullable<\n Awaited<ReturnType<typeof postChatMessage>>\n>;\n\n/**\n * @summary Post a message to a chat\n */\nexport const usePostChatMessage = <TError = ErrorType<ErrorResponse>>(\n chatId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof postChatMessage>>,\n TError,\n Key,\n PostChatMessageBody | undefined,\n Awaited<ReturnType<typeof postChatMessage>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getPostChatMessageMutationKey(chatId);\n const swrFn = getPostChatMessageMutationFetcher(chatId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListChatsUrl = (params?: ListChatsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/chats?${stringifiedParams}`\n : `/v1/chats`;\n};\n\n/**\n * List the tenant's chats with pagination, sorting, and optional filtering by case. Returns chat metadata and message counts; messages are not included.\n * @summary List chats\n */\nexport const listChats = async (\n params?: ListChatsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListChatsEnvelope> => {\n return customFetch<ListChatsEnvelope>(getListChatsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListChatsKey = (params?: ListChatsParams) =>\n [`/v1/chats`, ...(params ? [params] : [])] as const;\n\nexport type ListChatsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listChats>>\n>;\n\n/**\n * @summary List chats\n */\nexport const useListChats = <TError = ErrorType<ErrorResponse>>(\n params?: ListChatsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listChats>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListChatsKey(params) : null));\n const swrFn = () => listChats(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListChatMessagesUrl = (\n chatId: string,\n params?: ListChatMessagesParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/chats/${chatId}/messages?${stringifiedParams}`\n : `/v1/chats/${chatId}/messages`;\n};\n\n/**\n * List messages for a chat owned by the tenant, in chronological order by default.\n * @summary List chat messages\n */\nexport const listChatMessages = async (\n chatId: string,\n params?: ListChatMessagesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListChatMessagesEnvelope> => {\n return customFetch<ListChatMessagesEnvelope>(\n getListChatMessagesUrl(chatId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListChatMessagesKey = (\n chatId: string,\n params?: ListChatMessagesParams\n) => [`/v1/chats/${chatId}/messages`, ...(params ? [params] : [])] as const;\n\nexport type ListChatMessagesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listChatMessages>>\n>;\n\n/**\n * @summary List chat messages\n */\nexport const useListChatMessages = <TError = ErrorType<ErrorResponse>>(\n chatId: string,\n params?: ListChatMessagesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listChatMessages>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && chatId !== null && chatId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListChatMessagesKey(chatId, params) : null));\n const swrFn = () => listChatMessages(chatId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n ListDispatchesEnvelope,\n ListDispatchesParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListDispatchesUrl = (params?: ListDispatchesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/dispatches?${stringifiedParams}`\n : `/v1/dispatches`;\n};\n\n/**\n * List the organization's dispatches, newest occurrence first.\n *\n * A dispatch is one occurrence of a trigger in one environment, carried out on its own: a schedule produces one per environment it runs in every time it fires, an inbound email produces one for the environment its inbox received it in, and a resolved information request produces one that restarts the worker that asked. Listing them shows what a trigger has actually done, including occurrences that never produced anything.\n *\n * - `pending` — not carried out yet: waiting to be picked up, in flight, or waiting on a retry after an earlier pickup did not complete.\n * - `dispatched` — carried out.\n * - `abandoned` — gave up, because the occurrence passed its `expires_at` deadline before it could be carried out.\n *\n * `attempts` counts how many times the occurrence has been picked up, not how many times it failed: a dispatch carried out on the first pickup ends at `attempts: 1`, and a higher count means earlier pickups did not complete.\n *\n * `target` is what the occurrence produced — a worker run, or an extractor job for an email whose inbox extracts. It is null until the dispatch is carried out, and stays null on one that was abandoned.\n *\n * Narrow to one trigger with `trigger_type` and `trigger_id` — the schedule's ID for a schedule, the email's ID for an email, the request's ID for an information request. `trigger_id` requires `trigger_type`.\n * @summary List dispatches\n */\nexport const listDispatches = async (\n params?: ListDispatchesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListDispatchesEnvelope> => {\n return customFetch<ListDispatchesEnvelope>(getListDispatchesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListDispatchesKey = (params?: ListDispatchesParams) =>\n [`/v1/dispatches`, ...(params ? [params] : [])] as const;\n\nexport type ListDispatchesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listDispatches>>\n>;\n\n/**\n * @summary List dispatches\n */\nexport const useListDispatches = <TError = ErrorType<ErrorResponse>>(\n params?: ListDispatchesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listDispatches>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListDispatchesKey(params) : null));\n const swrFn = () => listDispatches(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n DeleteEmailEnvelope,\n ErrorResponse,\n GetEmailEnvelope,\n ListEmailThreadsEnvelope,\n ListEmailThreadsParams,\n ListEmailsEnvelope,\n ListEmailsParams,\n ReplyToEmailBody,\n ReplyToEmailEnvelope,\n SendEmailBody,\n SendEmailEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getGetEmailUrl = (emailId: string) => {\n return `/v1/emails/${emailId}`;\n};\n\n/**\n * Retrieve detailed information about a specific email, including full body content.\n * @summary Get email\n */\nexport const getEmail = async (\n emailId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetEmailEnvelope> => {\n return customFetch<GetEmailEnvelope>(getGetEmailUrl(emailId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetEmailKey = (emailId: string) =>\n [`/v1/emails/${emailId}`] as const;\n\nexport type GetEmailQueryResult = NonNullable<\n Awaited<ReturnType<typeof getEmail>>\n>;\n\n/**\n * @summary Get email\n */\nexport const useGetEmail = <TError = ErrorType<ErrorResponse>>(\n emailId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getEmail>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && emailId !== null && emailId !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetEmailKey(emailId) : null));\n const swrFn = () => getEmail(emailId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteEmailUrl = (emailId: string) => {\n return `/v1/emails/${emailId}`;\n};\n\n/**\n * Soft-delete an email. The message is hidden from all reads (get, list, and thread aggregation) but its content is retained until a separate hard purge.\n * @summary Delete email\n */\nexport const deleteEmail = async (\n emailId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteEmailEnvelope> => {\n return customFetch<DeleteEmailEnvelope>(getDeleteEmailUrl(emailId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteEmailMutationFetcher = (\n emailId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteEmail(emailId, options);\n };\n};\nexport const getDeleteEmailMutationKey = (emailId: string) =>\n [`/v1/emails/${emailId}`] as const;\n\nexport type DeleteEmailMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteEmail>>\n>;\n\n/**\n * @summary Delete email\n */\nexport const useDeleteEmail = <TError = ErrorType<ErrorResponse>>(\n emailId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteEmail>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteEmail>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteEmailMutationKey(emailId);\n const swrFn = getDeleteEmailMutationFetcher(emailId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListEmailsUrl = (params?: ListEmailsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/emails?${stringifiedParams}`\n : `/v1/emails`;\n};\n\n/**\n * List all emails with pagination and filtering.\n *\n * **Filtering:**\n *\n * Filter by email agent, sender, recipient, content search, or case.\n * @summary List emails\n */\nexport const listEmails = async (\n params?: ListEmailsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListEmailsEnvelope> => {\n return customFetch<ListEmailsEnvelope>(getListEmailsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListEmailsKey = (params?: ListEmailsParams) =>\n [`/v1/emails`, ...(params ? [params] : [])] as const;\n\nexport type ListEmailsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listEmails>>\n>;\n\n/**\n * @summary List emails\n */\nexport const useListEmails = <TError = ErrorType<ErrorResponse>>(\n params?: ListEmailsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listEmails>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListEmailsKey(params) : null));\n const swrFn = () => listEmails(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListEmailThreadsUrl = (params?: ListEmailThreadsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/emails/threads?${stringifiedParams}`\n : `/v1/emails/threads`;\n};\n\n/**\n * List email threads with pagination. Each thread includes the subject of the first email, the sender of the first email, and the date of the last email.\n *\n * **Filtering:**\n *\n * Filter by inbox or environment. Without an `environment` filter, live and test threads are returned together.\n * @summary List email threads\n */\nexport const listEmailThreads = async (\n params?: ListEmailThreadsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListEmailThreadsEnvelope> => {\n return customFetch<ListEmailThreadsEnvelope>(getListEmailThreadsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListEmailThreadsKey = (params?: ListEmailThreadsParams) =>\n [`/v1/emails/threads`, ...(params ? [params] : [])] as const;\n\nexport type ListEmailThreadsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listEmailThreads>>\n>;\n\n/**\n * @summary List email threads\n */\nexport const useListEmailThreads = <TError = ErrorType<ErrorResponse>>(\n params?: ListEmailThreadsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listEmailThreads>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListEmailThreadsKey(params) : null));\n const swrFn = () => listEmailThreads(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getReplyToEmailUrl = (emailId: string) => {\n return `/v1/emails/${emailId}/reply`;\n};\n\n/**\n * Reply to an existing email thread via Nylas. The reply is sent to the original sender by default.\n *\n * Optionally include additional recipients via `to` (merged with the original sender), `cc`, and `bcc` arrays.\n *\n * The `body` is HTML by default. Set `is_html` to `false` to provide plain text instead; it is converted to HTML before sending.\n * @summary Reply to email\n */\nexport const replyToEmail = async (\n emailId: string,\n replyToEmailBody?: ReplyToEmailBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ReplyToEmailEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<ReplyToEmailEnvelope>(getReplyToEmailUrl(emailId), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(replyToEmailBody),\n });\n};\n\nexport const getReplyToEmailMutationFetcher = (\n emailId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: ReplyToEmailBody | undefined }) => {\n return replyToEmail(emailId, arg, options);\n };\n};\nexport const getReplyToEmailMutationKey = (emailId: string) =>\n [`/v1/emails/${emailId}/reply`] as const;\n\nexport type ReplyToEmailMutationResult = NonNullable<\n Awaited<ReturnType<typeof replyToEmail>>\n>;\n\n/**\n * @summary Reply to email\n */\nexport const useReplyToEmail = <TError = ErrorType<ErrorResponse>>(\n emailId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof replyToEmail>>,\n TError,\n Key,\n ReplyToEmailBody | undefined,\n Awaited<ReturnType<typeof replyToEmail>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getReplyToEmailMutationKey(emailId);\n const swrFn = getReplyToEmailMutationFetcher(emailId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getSendEmailUrl = () => {\n return `/v1/emails/send`;\n};\n\n/**\n * Send a new email through an inbox. The provider-assigned thread id is returned and persisted on the stored email row, so subsequent inbound replies on that thread are linked to this send.\n *\n * The `body` is HTML by default. Set `is_html` to `false` to provide plain text instead; it is converted to HTML before sending.\n * @summary Send email\n */\nexport const sendEmail = async (\n sendEmailBody?: SendEmailBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<SendEmailEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<SendEmailEnvelope>(getSendEmailUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(sendEmailBody),\n });\n};\n\nexport const getSendEmailMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: SendEmailBody | undefined }) => {\n return sendEmail(arg, options);\n };\n};\nexport const getSendEmailMutationKey = () => [`/v1/emails/send`] as const;\n\nexport type SendEmailMutationResult = NonNullable<\n Awaited<ReturnType<typeof sendEmail>>\n>;\n\n/**\n * @summary Send email\n */\nexport const useSendEmail = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof sendEmail>>,\n TError,\n Key,\n SendEmailBody | undefined,\n Awaited<ReturnType<typeof sendEmail>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getSendEmailMutationKey();\n const swrFn = getSendEmailMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateWorkerEvalFromRunBody,\n CreateWorkerEvalFromRunEnvelope,\n ErrorResponse,\n GetEvalRunEnvelope,\n RunEvalBody,\n RunEvalEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateWorkerEvalFromRunUrl = (workerRunId: string) => {\n return `/v1/worker-runs/${workerRunId}/evals`;\n};\n\n/**\n * Snapshot a worker run's trigger and resolved artifacts, and record its MCP tool responses from telemetry for replay.\n * @summary Create a worker eval from a run\n */\nexport const createWorkerEvalFromRun = async (\n workerRunId: string,\n createWorkerEvalFromRunBody?: CreateWorkerEvalFromRunBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateWorkerEvalFromRunEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateWorkerEvalFromRunEnvelope>(\n getCreateWorkerEvalFromRunUrl(workerRunId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createWorkerEvalFromRunBody),\n }\n );\n};\n\nexport const getCreateWorkerEvalFromRunMutationFetcher = (\n workerRunId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: CreateWorkerEvalFromRunBody | undefined }\n ) => {\n return createWorkerEvalFromRun(workerRunId, arg, options);\n };\n};\nexport const getCreateWorkerEvalFromRunMutationKey = (workerRunId: string) =>\n [`/v1/worker-runs/${workerRunId}/evals`] as const;\n\nexport type CreateWorkerEvalFromRunMutationResult = NonNullable<\n Awaited<ReturnType<typeof createWorkerEvalFromRun>>\n>;\n\n/**\n * @summary Create a worker eval from a run\n */\nexport const useCreateWorkerEvalFromRun = <TError = ErrorType<ErrorResponse>>(\n workerRunId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createWorkerEvalFromRun>>,\n TError,\n Key,\n CreateWorkerEvalFromRunBody | undefined,\n Awaited<ReturnType<typeof createWorkerEvalFromRun>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateWorkerEvalFromRunMutationKey(workerRunId);\n const swrFn = getCreateWorkerEvalFromRunMutationFetcher(\n workerRunId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRunEvalUrl = (evalId: string) => {\n return `/v1/evals/${evalId}/runs`;\n};\n\n/**\n * Queue an explicit worker version against the eval's immutable artifact snapshot and mocked tools.\n * @summary Run an eval\n */\nexport const runEval = async (\n evalId: string,\n runEvalBody?: RunEvalBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<RunEvalEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<RunEvalEnvelope>(getRunEvalUrl(evalId), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(runEvalBody),\n });\n};\n\nexport const getRunEvalMutationFetcher = (\n evalId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: RunEvalBody | undefined }) => {\n return runEval(evalId, arg, options);\n };\n};\nexport const getRunEvalMutationKey = (evalId: string) =>\n [`/v1/evals/${evalId}/runs`] as const;\n\nexport type RunEvalMutationResult = NonNullable<\n Awaited<ReturnType<typeof runEval>>\n>;\n\n/**\n * @summary Run an eval\n */\nexport const useRunEval = <TError = ErrorType<ErrorResponse>>(\n evalId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof runEval>>,\n TError,\n Key,\n RunEvalBody | undefined,\n Awaited<ReturnType<typeof runEval>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRunEvalMutationKey(evalId);\n const swrFn = getRunEvalMutationFetcher(evalId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetEvalRunUrl = (evalRunId: string) => {\n return `/v1/eval-runs/${evalRunId}`;\n};\n\n/**\n * Get the status and prompt-grader result for an eval run.\n * @summary Get an eval run\n */\nexport const getEvalRun = async (\n evalRunId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetEvalRunEnvelope> => {\n return customFetch<GetEvalRunEnvelope>(getGetEvalRunUrl(evalRunId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetEvalRunKey = (evalRunId: string) =>\n [`/v1/eval-runs/${evalRunId}`] as const;\n\nexport type GetEvalRunQueryResult = NonNullable<\n Awaited<ReturnType<typeof getEvalRun>>\n>;\n\n/**\n * @summary Get an eval run\n */\nexport const useGetEvalRun = <TError = ErrorType<ErrorResponse>>(\n evalRunId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getEvalRun>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n evalRunId !== null &&\n evalRunId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetEvalRunKey(evalRunId) : null));\n const swrFn = () => getEvalRun(evalRunId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateExtractorJobBody,\n CreateExtractorJobEnvelope,\n ErrorResponse,\n GetExtractorJobEnvelope,\n ListExtractorJobsEnvelope,\n ListExtractorJobsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListExtractorJobsUrl = (params?: ListExtractorJobsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"scope\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/extractor-jobs?${stringifiedParams}`\n : `/v1/extractor-jobs`;\n};\n\n/**\n * List all extraction jobs with pagination, filtering, and sorting.\n *\n * **Scope Filtering:**\n *\n * Use bracket notation to filter by scope keys:\n * - `scope[call_id]=abc-123`\n * - `scope[email_id]=xyz-456`\n * - `scope[case_id]=case-789`\n *\n * Multiple scope filters can be combined (AND logic).\n * @summary List extractor jobs\n */\nexport const listExtractorJobs = async (\n params?: ListExtractorJobsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListExtractorJobsEnvelope> => {\n return customFetch<ListExtractorJobsEnvelope>(\n getListExtractorJobsUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListExtractorJobsKey = (params?: ListExtractorJobsParams) =>\n [`/v1/extractor-jobs`, ...(params ? [params] : [])] as const;\n\nexport type ListExtractorJobsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listExtractorJobs>>\n>;\n\n/**\n * @summary List extractor jobs\n */\nexport const useListExtractorJobs = <TError = ErrorType<ErrorResponse>>(\n params?: ListExtractorJobsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listExtractorJobs>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListExtractorJobsKey(params) : null));\n const swrFn = () => listExtractorJobs(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateExtractorJobUrl = () => {\n return `/v1/extractor-jobs`;\n};\n\n/**\n * Create a new extraction job for the specified extractor.\n *\n * Provide a non-empty `scope` object to define what the extractor should process (e.g. `{ \"claim_id\": \"abc-123\" }`).\n * @summary Create extractor job\n */\nexport const createExtractorJob = async (\n createExtractorJobBody?: CreateExtractorJobBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateExtractorJobEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateExtractorJobEnvelope>(getCreateExtractorJobUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createExtractorJobBody),\n });\n};\n\nexport const getCreateExtractorJobMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorJobBody | undefined }) => {\n return createExtractorJob(arg, options);\n };\n};\nexport const getCreateExtractorJobMutationKey = () =>\n [`/v1/extractor-jobs`] as const;\n\nexport type CreateExtractorJobMutationResult = NonNullable<\n Awaited<ReturnType<typeof createExtractorJob>>\n>;\n\n/**\n * @summary Create extractor job\n */\nexport const useCreateExtractorJob = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createExtractorJob>>,\n TError,\n Key,\n CreateExtractorJobBody | undefined,\n Awaited<ReturnType<typeof createExtractorJob>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateExtractorJobMutationKey();\n const swrFn = getCreateExtractorJobMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetExtractorJobUrl = (id: string) => {\n return `/v1/extractor-jobs/${id}`;\n};\n\n/**\n * Retrieve detailed information about a specific extractor job, including its status, timing, and result.\n * @summary Get extractor job\n */\nexport const getExtractorJob = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetExtractorJobEnvelope> => {\n return customFetch<GetExtractorJobEnvelope>(getGetExtractorJobUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetExtractorJobKey = (id: string) =>\n [`/v1/extractor-jobs/${id}`] as const;\n\nexport type GetExtractorJobQueryResult = NonNullable<\n Awaited<ReturnType<typeof getExtractorJob>>\n>;\n\n/**\n * @summary Get extractor job\n */\nexport const useGetExtractorJob = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getExtractorJob>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetExtractorJobKey(id) : null));\n const swrFn = () => getExtractorJob(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateExtractorBody,\n CreateExtractorEnvelope,\n DeleteExtractorEnvelope,\n ErrorResponse,\n GetExtractorEnvelope,\n ListExtractorsEnvelope,\n ListExtractorsParams,\n UpdateExtractorBody,\n UpdateExtractorEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateExtractorUrl = () => {\n return `/v1/extractors`;\n};\n\n/**\n * Create a new extractor with a name and JSON schema defining the extraction output format.\n * @summary Create extractor\n */\nexport const createExtractor = async (\n createExtractorBody?: CreateExtractorBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateExtractorEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateExtractorEnvelope>(getCreateExtractorUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createExtractorBody),\n });\n};\n\nexport const getCreateExtractorMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorBody | undefined }) => {\n return createExtractor(arg, options);\n };\n};\nexport const getCreateExtractorMutationKey = () => [`/v1/extractors`] as const;\n\nexport type CreateExtractorMutationResult = NonNullable<\n Awaited<ReturnType<typeof createExtractor>>\n>;\n\n/**\n * @summary Create extractor\n */\nexport const useCreateExtractor = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createExtractor>>,\n TError,\n Key,\n CreateExtractorBody | undefined,\n Awaited<ReturnType<typeof createExtractor>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateExtractorMutationKey();\n const swrFn = getCreateExtractorMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListExtractorsUrl = (params?: ListExtractorsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractors?${stringifiedParams}`\n : `/v1/extractors`;\n};\n\n/**\n * List all extractors with pagination, filtering, and sorting.\n *\n * Filter by name using the `name` query parameter.\n * @summary List extractors\n */\nexport const listExtractors = async (\n params?: ListExtractorsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListExtractorsEnvelope> => {\n return customFetch<ListExtractorsEnvelope>(getListExtractorsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListExtractorsKey = (params?: ListExtractorsParams) =>\n [`/v1/extractors`, ...(params ? [params] : [])] as const;\n\nexport type ListExtractorsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listExtractors>>\n>;\n\n/**\n * @summary List extractors\n */\nexport const useListExtractors = <TError = ErrorType<ErrorResponse>>(\n params?: ListExtractorsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listExtractors>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListExtractorsKey(params) : null));\n const swrFn = () => listExtractors(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\n/**\n * Retrieve a single extractor by ID, including its schema and version.\n * @summary Get extractor\n */\nexport const getExtractor = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetExtractorEnvelope> => {\n return customFetch<GetExtractorEnvelope>(getGetExtractorUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetExtractorKey = (id: string) =>\n [`/v1/extractors/${id}`] as const;\n\nexport type GetExtractorQueryResult = NonNullable<\n Awaited<ReturnType<typeof getExtractor>>\n>;\n\n/**\n * @summary Get extractor\n */\nexport const useGetExtractor = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getExtractor>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetExtractorKey(id) : null));\n const swrFn = () => getExtractor(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\n/**\n * Update an extractor's schema. This creates a new version of the extractor.\n * @summary Update extractor\n */\nexport const updateExtractor = async (\n id: string,\n updateExtractorBody?: UpdateExtractorBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateExtractorEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateExtractorEnvelope>(getUpdateExtractorUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateExtractorBody),\n });\n};\n\nexport const getUpdateExtractorMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateExtractorBody | undefined }) => {\n return updateExtractor(id, arg, options);\n };\n};\nexport const getUpdateExtractorMutationKey = (id: string) =>\n [`/v1/extractors/${id}`] as const;\n\nexport type UpdateExtractorMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateExtractor>>\n>;\n\n/**\n * @summary Update extractor\n */\nexport const useUpdateExtractor = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateExtractor>>,\n TError,\n Key,\n UpdateExtractorBody | undefined,\n Awaited<ReturnType<typeof updateExtractor>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateExtractorMutationKey(id);\n const swrFn = getUpdateExtractorMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\n/**\n * Soft-delete an extractor and all of its versions. Soft-deleted extractors no longer appear in any read.\n * @summary Delete extractor\n */\nexport const deleteExtractor = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteExtractorEnvelope> => {\n return customFetch<DeleteExtractorEnvelope>(getDeleteExtractorUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteExtractorMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteExtractor(id, options);\n };\n};\nexport const getDeleteExtractorMutationKey = (id: string) =>\n [`/v1/extractors/${id}`] as const;\n\nexport type DeleteExtractorMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteExtractor>>\n>;\n\n/**\n * @summary Delete extractor\n */\nexport const useDeleteExtractor = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteExtractor>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteExtractor>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteExtractorMutationKey(id);\n const swrFn = getDeleteExtractorMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n GetExtractCitationsEnvelope,\n GetExtractEnvelope,\n ListExtractsEnvelope,\n ListExtractsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getGetExtractUrl = (id: string) => {\n return `/v1/extracts/${id}`;\n};\n\n/**\n * Retrieve a single extract by ID, including the extraction result data.\n * @summary Get extract\n */\nexport const getExtract = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetExtractEnvelope> => {\n return customFetch<GetExtractEnvelope>(getGetExtractUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetExtractKey = (id: string) => [`/v1/extracts/${id}`] as const;\n\nexport type GetExtractQueryResult = NonNullable<\n Awaited<ReturnType<typeof getExtract>>\n>;\n\n/**\n * @summary Get extract\n */\nexport const useGetExtract = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getExtract>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetExtractKey(id) : null));\n const swrFn = () => getExtract(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetExtractCitationsUrl = (id: string) => {\n return `/v1/extracts/${id}/citations`;\n};\n\n/**\n * Retrieve the citation tree with resolved chunk data for a given extract. Returns 404 if the extract does not exist or has no citations (the citations sub-resource is not available).\n * @summary Get extract citations\n */\nexport const getExtractCitations = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetExtractCitationsEnvelope> => {\n return customFetch<GetExtractCitationsEnvelope>(\n getGetExtractCitationsUrl(id),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetExtractCitationsKey = (id: string) =>\n [`/v1/extracts/${id}/citations`] as const;\n\nexport type GetExtractCitationsQueryResult = NonNullable<\n Awaited<ReturnType<typeof getExtractCitations>>\n>;\n\n/**\n * @summary Get extract citations\n */\nexport const useGetExtractCitations = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getExtractCitations>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetExtractCitationsKey(id) : null));\n const swrFn = () => getExtractCitations(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListExtractsUrl = (params?: ListExtractsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"scope\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/extracts?${stringifiedParams}`\n : `/v1/extracts`;\n};\n\n/**\n * List all extracts with pagination, filtering, and sorting.\n *\n * **Scope Filtering:**\n *\n * Use bracket notation to filter by scope keys:\n * - `scope[claim_id]=abc-123`\n *\n * Multiple scope filters can be combined (AND logic).\n * @summary List extracts\n */\nexport const listExtracts = async (\n params?: ListExtractsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListExtractsEnvelope> => {\n return customFetch<ListExtractsEnvelope>(getListExtractsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListExtractsKey = (params?: ListExtractsParams) =>\n [`/v1/extracts`, ...(params ? [params] : [])] as const;\n\nexport type ListExtractsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listExtracts>>\n>;\n\n/**\n * @summary List extracts\n */\nexport const useListExtracts = <TError = ErrorType<ErrorResponse>>(\n params?: ListExtractsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listExtracts>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListExtractsKey(params) : null));\n const swrFn = () => listExtracts(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CheckInboxAvailabilityEnvelope,\n CheckInboxAvailabilityParams,\n CreateInboxBody,\n CreateInboxEnvelope,\n DeleteInboxEnvelope,\n ErrorResponse,\n ListInboxesEnvelope,\n ListInboxesParams,\n UpdateInboxBody,\n UpdateInboxEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCheckInboxAvailabilityUrl = (\n params: CheckInboxAvailabilityParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/inboxes/availability?${stringifiedParams}`\n : `/v1/inboxes/availability`;\n};\n\n/**\n * Check whether a given email username is available for creating a new inbox.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/email-agents/availability`\n * @summary Check email username availability\n */\nexport const checkInboxAvailability = async (\n params: CheckInboxAvailabilityParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CheckInboxAvailabilityEnvelope> => {\n return customFetch<CheckInboxAvailabilityEnvelope>(\n getCheckInboxAvailabilityUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getCheckInboxAvailabilityKey = (\n params: CheckInboxAvailabilityParams\n) => [`/v1/inboxes/availability`, ...(params ? [params] : [])] as const;\n\nexport type CheckInboxAvailabilityQueryResult = NonNullable<\n Awaited<ReturnType<typeof checkInboxAvailability>>\n>;\n\n/**\n * @summary Check email username availability\n */\nexport const useCheckInboxAvailability = <TError = ErrorType<ErrorResponse>>(\n params: CheckInboxAvailabilityParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof checkInboxAvailability>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getCheckInboxAvailabilityKey(params) : null));\n const swrFn = () => checkInboxAvailability(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateInboxUrl = () => {\n return `/v1/inboxes`;\n};\n\n/**\n * Create a new inbox linked to a processor (extractor or worker).\n *\n * The inbox will receive emails at the assigned address and automatically process attachments using the specified processor.\n *\n * Either `processor_id` or the deprecated `extractor_id` must be provided. When using `extractor_id`, the processor type defaults to `extractor`.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/email-agents`\n * @summary Create inbox\n */\nexport const createInbox = async (\n createInboxBody?: CreateInboxBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateInboxEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateInboxEnvelope>(getCreateInboxUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createInboxBody),\n });\n};\n\nexport const getCreateInboxMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateInboxBody | undefined }) => {\n return createInbox(arg, options);\n };\n};\nexport const getCreateInboxMutationKey = () => [`/v1/inboxes`] as const;\n\nexport type CreateInboxMutationResult = NonNullable<\n Awaited<ReturnType<typeof createInbox>>\n>;\n\n/**\n * @summary Create inbox\n */\nexport const useCreateInbox = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createInbox>>,\n TError,\n Key,\n CreateInboxBody | undefined,\n Awaited<ReturnType<typeof createInbox>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateInboxMutationKey();\n const swrFn = getCreateInboxMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListInboxesUrl = (params?: ListInboxesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/inboxes?${stringifiedParams}`\n : `/v1/inboxes`;\n};\n\n/**\n * List all inboxes with pagination and sorting.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/email-agents`\n * @summary List inboxes\n */\nexport const listInboxes = async (\n params?: ListInboxesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListInboxesEnvelope> => {\n return customFetch<ListInboxesEnvelope>(getListInboxesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListInboxesKey = (params?: ListInboxesParams) =>\n [`/v1/inboxes`, ...(params ? [params] : [])] as const;\n\nexport type ListInboxesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listInboxes>>\n>;\n\n/**\n * @summary List inboxes\n */\nexport const useListInboxes = <TError = ErrorType<ErrorResponse>>(\n params?: ListInboxesParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listInboxes>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListInboxesKey(params) : null));\n const swrFn = () => listInboxes(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateInboxUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}`;\n};\n\n/**\n * Update an inbox's configuration.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `PATCH /v1/email-agents/{id}`\n * @summary Update inbox\n */\nexport const updateInbox = async (\n inboxId: string,\n updateInboxBody?: UpdateInboxBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateInboxEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateInboxEnvelope>(getUpdateInboxUrl(inboxId), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateInboxBody),\n });\n};\n\nexport const getUpdateInboxMutationFetcher = (\n inboxId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateInboxBody | undefined }) => {\n return updateInbox(inboxId, arg, options);\n };\n};\nexport const getUpdateInboxMutationKey = (inboxId: string) =>\n [`/v1/inboxes/${inboxId}`] as const;\n\nexport type UpdateInboxMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateInbox>>\n>;\n\n/**\n * @summary Update inbox\n */\nexport const useUpdateInbox = <TError = ErrorType<ErrorResponse>>(\n inboxId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateInbox>>,\n TError,\n Key,\n UpdateInboxBody | undefined,\n Awaited<ReturnType<typeof updateInbox>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateInboxMutationKey(inboxId);\n const swrFn = getUpdateInboxMutationFetcher(inboxId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteInboxUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}`;\n};\n\n/**\n * Delete an inbox. The inbox stops routing new mail; existing email history is preserved.\n * @summary Delete inbox\n */\nexport const deleteInbox = async (\n inboxId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteInboxEnvelope> => {\n return customFetch<DeleteInboxEnvelope>(getDeleteInboxUrl(inboxId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteInboxMutationFetcher = (\n inboxId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteInbox(inboxId, options);\n };\n};\nexport const getDeleteInboxMutationKey = (inboxId: string) =>\n [`/v1/inboxes/${inboxId}`] as const;\n\nexport type DeleteInboxMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteInbox>>\n>;\n\n/**\n * @summary Delete inbox\n */\nexport const useDeleteInbox = <TError = ErrorType<ErrorResponse>>(\n inboxId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteInbox>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteInbox>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteInboxMutationKey(inboxId);\n const swrFn = getDeleteInboxMutationFetcher(inboxId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateInformationRequestBody,\n CreateInformationRequestEnvelope,\n ErrorResponse,\n GetInformationRequestEnvelope,\n ListInformationRequestsEnvelope,\n ListInformationRequestsParams,\n ResolveInformationRequestBody,\n ResolveInformationRequestEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateInformationRequestUrl = () => {\n return `/v1/information-requests`;\n};\n\n/**\n * Ask a person for a specific fact you cannot establish yourself.\n *\n * Use this when one missing piece of information is blocking you and only a human can supply it — which claim a document belongs to, which of two policies applies, what an ambiguous reference means. Ask one answerable question per request, and write it so it stands on its own: whoever resolves it sees your title and your question and nothing else.\n *\n * Immediately link the request to its case with `addCaseLinks` and `entity_type: \"information_request\"`. That is how it reaches the person working that case; unlinked, it sits in a queue nobody is looking at. Leave it unlinked only when you genuinely cannot tell which case it belongs to.\n *\n * **This does not block or suspend you.** Nobody resolves it while this run is happening. Carry on with what you can still do, or stop, and say in your final report that you asked.\n *\n * Do not use it for progress updates, or for anything you can work out yourself.\n * @summary Ask for information\n */\nexport const createInformationRequest = async (\n createInformationRequestBody?: CreateInformationRequestBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateInformationRequestEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateInformationRequestEnvelope>(\n getCreateInformationRequestUrl(),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createInformationRequestBody),\n }\n );\n};\n\nexport const getCreateInformationRequestMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: CreateInformationRequestBody | undefined }\n ) => {\n return createInformationRequest(arg, options);\n };\n};\nexport const getCreateInformationRequestMutationKey = () =>\n [`/v1/information-requests`] as const;\n\nexport type CreateInformationRequestMutationResult = NonNullable<\n Awaited<ReturnType<typeof createInformationRequest>>\n>;\n\n/**\n * @summary Ask for information\n */\nexport const useCreateInformationRequest = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createInformationRequest>>,\n TError,\n Key,\n CreateInformationRequestBody | undefined,\n Awaited<ReturnType<typeof createInformationRequest>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateInformationRequestMutationKey();\n const swrFn = getCreateInformationRequestMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListInformationRequestsUrl = (\n params?: ListInformationRequestsParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/information-requests?${stringifiedParams}`\n : `/v1/information-requests`;\n};\n\n/**\n * List the organization's information requests, newest first.\n *\n * An information request is a specific question a worker could not settle on its own and needs a person to resolve. It stays open until somebody resolves it; there is no separate status field.\n * @summary List information requests\n */\nexport const listInformationRequests = async (\n params?: ListInformationRequestsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListInformationRequestsEnvelope> => {\n return customFetch<ListInformationRequestsEnvelope>(\n getListInformationRequestsUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListInformationRequestsKey = (\n params?: ListInformationRequestsParams\n) => [`/v1/information-requests`, ...(params ? [params] : [])] as const;\n\nexport type ListInformationRequestsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listInformationRequests>>\n>;\n\n/**\n * @summary List information requests\n */\nexport const useListInformationRequests = <TError = ErrorType<ErrorResponse>>(\n params?: ListInformationRequestsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listInformationRequests>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListInformationRequestsKey(params) : null));\n const swrFn = () => listInformationRequests(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetInformationRequestUrl = (informationRequestId: string) => {\n return `/v1/information-requests/${informationRequestId}`;\n};\n\n/**\n * Retrieve a single information request by its ID.\n * @summary Get information request\n */\nexport const getInformationRequest = async (\n informationRequestId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetInformationRequestEnvelope> => {\n return customFetch<GetInformationRequestEnvelope>(\n getGetInformationRequestUrl(informationRequestId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetInformationRequestKey = (informationRequestId: string) =>\n [`/v1/information-requests/${informationRequestId}`] as const;\n\nexport type GetInformationRequestQueryResult = NonNullable<\n Awaited<ReturnType<typeof getInformationRequest>>\n>;\n\n/**\n * @summary Get information request\n */\nexport const useGetInformationRequest = <TError = ErrorType<ErrorResponse>>(\n informationRequestId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getInformationRequest>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n informationRequestId !== null &&\n informationRequestId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getGetInformationRequestKey(informationRequestId) : null);\n const swrFn = () =>\n getInformationRequest(informationRequestId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getResolveInformationRequestUrl = (\n informationRequestId: string\n) => {\n return `/v1/information-requests/${informationRequestId}/resolve`;\n};\n\n/**\n * Resolve an open information request by providing an answer/resolution.\n * @summary Resolve information request\n */\nexport const resolveInformationRequest = async (\n informationRequestId: string,\n resolveInformationRequestBody?: ResolveInformationRequestBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ResolveInformationRequestEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<ResolveInformationRequestEnvelope>(\n getResolveInformationRequestUrl(informationRequestId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(resolveInformationRequestBody),\n }\n );\n};\n\nexport const getResolveInformationRequestMutationFetcher = (\n informationRequestId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: ResolveInformationRequestBody | undefined }\n ) => {\n return resolveInformationRequest(informationRequestId, arg, options);\n };\n};\nexport const getResolveInformationRequestMutationKey = (\n informationRequestId: string\n) => [`/v1/information-requests/${informationRequestId}/resolve`] as const;\n\nexport type ResolveInformationRequestMutationResult = NonNullable<\n Awaited<ReturnType<typeof resolveInformationRequest>>\n>;\n\n/**\n * @summary Resolve information request\n */\nexport const useResolveInformationRequest = <TError = ErrorType<ErrorResponse>>(\n informationRequestId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof resolveInformationRequest>>,\n TError,\n Key,\n ResolveInformationRequestBody | undefined,\n Awaited<ReturnType<typeof resolveInformationRequest>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ??\n getResolveInformationRequestMutationKey(informationRequestId);\n const swrFn = getResolveInformationRequestMutationFetcher(\n informationRequestId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CancelJobEnvelope,\n ErrorResponse,\n ListJobsEnvelope,\n ListJobsParams,\n ScheduleJobBody,\n ScheduleJobEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getScheduleJobUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/jobs`;\n};\n\n/**\n * Schedule a new outbound call job for a voice agent.\n *\n * The job can be scheduled for a future time or triggered immediately with `trigger_immediately: true`.\n *\n * **Scheduling:**\n *\n * When scheduling for a future time, provide `scheduled_at` (ISO 8601) and optionally `schedule_window_minutes` (minimum 10 minutes).\n *\n * **Environment:**\n *\n * `environment` selects which promoted agent configuration and phone binding the call dispatches against (`live` or `test`). Defaults to `live`. Scheduling fails when the selected environment has no active promotion.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/agents/{id}/jobs`\n * @summary Schedule an outbound job\n */\nexport const scheduleJob = async (\n voiceAgentId: string,\n scheduleJobBody?: ScheduleJobBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ScheduleJobEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<ScheduleJobEnvelope>(getScheduleJobUrl(voiceAgentId), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(scheduleJobBody),\n });\n};\n\nexport const getScheduleJobMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: ScheduleJobBody | undefined }) => {\n return scheduleJob(voiceAgentId, arg, options);\n };\n};\nexport const getScheduleJobMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/jobs`] as const;\n\nexport type ScheduleJobMutationResult = NonNullable<\n Awaited<ReturnType<typeof scheduleJob>>\n>;\n\n/**\n * @summary Schedule an outbound job\n */\nexport const useScheduleJob = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof scheduleJob>>,\n TError,\n Key,\n ScheduleJobBody | undefined,\n Awaited<ReturnType<typeof scheduleJob>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getScheduleJobMutationKey(voiceAgentId);\n const swrFn = getScheduleJobMutationFetcher(voiceAgentId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListJobsUrl = (params: ListJobsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const explodeParameters = [\"status\"];\n\n if (Array.isArray(value) && explodeParameters.includes(key)) {\n value.forEach((v) => {\n normalizedParams.append(key, v === null ? \"null\" : String(v));\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents/jobs?${stringifiedParams}`\n : `/v1/voice-agents/jobs`;\n};\n\n/**\n * List all outbound jobs with pagination and filtering.\n *\n * **Filtering:**\n *\n * - Filter by agent ID, status, or scheduled time range.\n * - Multiple statuses can be comma-separated (e.g. `status=pending,queued`).\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents/jobs`\n * @summary List outbound jobs\n */\nexport const listJobs = async (\n params: ListJobsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListJobsEnvelope> => {\n return customFetch<ListJobsEnvelope>(getListJobsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListJobsKey = (params: ListJobsParams) =>\n [`/v1/voice-agents/jobs`, ...(params ? [params] : [])] as const;\n\nexport type ListJobsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listJobs>>\n>;\n\n/**\n * @summary List outbound jobs\n */\nexport const useListJobs = <TError = ErrorType<ErrorResponse>>(\n params: ListJobsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listJobs>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListJobsKey(params) : null));\n const swrFn = () => listJobs(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCancelJobUrl = (jobId: string) => {\n return `/v1/voice-agents/jobs/${jobId}/cancel`;\n};\n\n/**\n * Cancel a pending or queued outbound job. Jobs that are already in progress or completed cannot be canceled.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/agents/jobs/{id}/cancel`\n * @summary Cancel an outbound job\n */\nexport const cancelJob = async (\n jobId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CancelJobEnvelope> => {\n return customFetch<CancelJobEnvelope>(getCancelJobUrl(jobId), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getCancelJobMutationFetcher = (\n jobId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return cancelJob(jobId, options);\n };\n};\nexport const getCancelJobMutationKey = (jobId: string) =>\n [`/v1/voice-agents/jobs/${jobId}/cancel`] as const;\n\nexport type CancelJobMutationResult = NonNullable<\n Awaited<ReturnType<typeof cancelJob>>\n>;\n\n/**\n * @summary Cancel an outbound job\n */\nexport const useCancelJob = <TError = ErrorType<ErrorResponse>>(\n jobId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof cancelJob>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof cancelJob>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCancelJobMutationKey(jobId);\n const swrFn = getCancelJobMutationFetcher(jobId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type {\n ErrorResponse,\n GetNotificationEnvelope,\n ListNotificationsEnvelope,\n ListNotificationsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListNotificationsUrl = (params?: ListNotificationsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/notifications?${stringifiedParams}`\n : `/v1/notifications`;\n};\n\n/**\n * List the organization's notifications, newest first.\n *\n * A notification is a durable record that something happened and that somebody should know about it. Notifications are not yet addressed to individual people, so everyone in the organization sees the same feed.\n *\n * `title` and `body` are the display text — render them as-is rather than deriving your own wording from `type`, so every surface says the same thing. `data` carries the identifiers the notification points at, so a client can link to the thing it is about; which keys are present depends on `type`.\n *\n * `worker_issue_reported` means a worker hit a problem during a run and reported it; its `body` is the worker's own message and its `data` is the reporting `worker_id` and `run_id`. `information_request_created` means a worker paused to ask a person a question; its `data` is the `request_id` to answer through `POST /v1/information-requests/{informationRequestId}/resolve`.\n * @summary List notifications\n */\nexport const listNotifications = async (\n params?: ListNotificationsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListNotificationsEnvelope> => {\n return customFetch<ListNotificationsEnvelope>(\n getListNotificationsUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListNotificationsKey = (params?: ListNotificationsParams) =>\n [`/v1/notifications`, ...(params ? [params] : [])] as const;\n\nexport type ListNotificationsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listNotifications>>\n>;\n\n/**\n * @summary List notifications\n */\nexport const useListNotifications = <TError = ErrorType<ErrorResponse>>(\n params?: ListNotificationsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listNotifications>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListNotificationsKey(params) : null));\n const swrFn = () => listNotifications(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetNotificationUrl = (notificationId: string) => {\n return `/v1/notifications/${notificationId}`;\n};\n\n/**\n * Retrieve a single notification by its ID, the id a `notification.created` webhook delivery carries.\n *\n * `title` and `body` are the display text — render them as-is rather than deriving your own wording from `type`, so every surface says the same thing. `data` carries the identifiers the notification points at, so a client can link to the thing it is about; which keys are present depends on `type`.\n *\n * `worker_issue_reported` means a worker hit a problem during a run and reported it; its `body` is the worker's own message and its `data` is the reporting `worker_id` and `run_id`. `information_request_created` means a worker paused to ask a person a question; its `data` is the `request_id` to answer through `POST /v1/information-requests/{informationRequestId}/resolve`.\n * @summary Get notification\n */\nexport const getNotification = async (\n notificationId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetNotificationEnvelope> => {\n return customFetch<GetNotificationEnvelope>(\n getGetNotificationUrl(notificationId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetNotificationKey = (notificationId: string) =>\n [`/v1/notifications/${notificationId}`] as const;\n\nexport type GetNotificationQueryResult = NonNullable<\n Awaited<ReturnType<typeof getNotification>>\n>;\n\n/**\n * @summary Get notification\n */\nexport const useGetNotification = <TError = ErrorType<ErrorResponse>>(\n notificationId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getNotification>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n notificationId !== null &&\n notificationId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetNotificationKey(notificationId) : null));\n const swrFn = () => getNotification(notificationId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Key, SWRConfiguration } from \"swr\";\n\nimport type { ErrorResponse, GetProfileEnvelope } from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getGetProfileUrl = () => {\n return `/v1/profile`;\n};\n\n/**\n * Retrieve the current user's profile information. This endpoint requires a user session and cannot be used with API Keys.\n * @summary Get profile\n */\nexport const getProfile = async (\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetProfileEnvelope> => {\n return customFetch<GetProfileEnvelope>(getGetProfileUrl(), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetProfileKey = () => [`/v1/profile`] as const;\n\nexport type GetProfileQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProfile>>\n>;\n\n/**\n * @summary Get profile\n */\nexport const useGetProfile = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getProfile>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetProfileKey() : null));\n const swrFn = () => getProfile(requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateScheduleBody,\n CreateScheduleEnvelope,\n DeleteScheduleEnvelope,\n ErrorResponse,\n GetScheduleEnvelope,\n ListSchedulesEnvelope,\n ListSchedulesParams,\n UpdateScheduleBody,\n UpdateScheduleEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateScheduleUrl = () => {\n return `/v1/schedules`;\n};\n\n/**\n * Create a schedule that performs an action, either repeatedly or once.\n *\n * `action` describes **what** happens — today only `trigger_worker`, which starts a worker run with the given scope. `rule` describes **when**: `recurring` carries one or more `patterns`, and fires whenever any of them comes round. A pattern fires every hour at `minute`, narrowed by `hours` and `weekdays` — so `hours: [9]` is daily at 09:00, `hours: [12], weekdays: [1]` is Mondays at noon, and `hours: [9, 13, 17], weekdays: [1, 2, 3, 4, 5]` is three times a day on weekdays. Give a second pattern to mix cadences: hourly on weekdays plus 09:00, 11:00 and 18:00 at weekends is two patterns on one schedule. Patterns overlap harmlessly — two that land on the same minute fire once. Every set is read in the schedule's own time zone — an IANA identifier such as `America/Chicago`, resolved across DST transitions. `once` fires a single time at a UTC instant.\n *\n * `environments` says **which worker version** each occurrence runs: `live` resolves the worker at its live version, `test` at its test version. Give both to soak a candidate version on the same cadence and scope as production — every occurrence then fires twice, producing one run per environment. Omit it to fire in `live` only.\n *\n * The response's `next_run_at` is the first occurrence strictly after the moment of creation; a rule that resolves to no such occurrence is rejected. Create with `enabled: false` to stage a recurring schedule without letting it fire. A one-off is always enabled: delete it to cancel it, and its `next_run_at` becomes null once it has fired.\n *\n * Requires the `schedules:write` permission.\n * @summary Create a schedule\n */\nexport const createSchedule = async (\n createScheduleBody?: CreateScheduleBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateScheduleEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateScheduleEnvelope>(getCreateScheduleUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createScheduleBody),\n });\n};\n\nexport const getCreateScheduleMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateScheduleBody | undefined }) => {\n return createSchedule(arg, options);\n };\n};\nexport const getCreateScheduleMutationKey = () => [`/v1/schedules`] as const;\n\nexport type CreateScheduleMutationResult = NonNullable<\n Awaited<ReturnType<typeof createSchedule>>\n>;\n\n/**\n * @summary Create a schedule\n */\nexport const useCreateSchedule = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createSchedule>>,\n TError,\n Key,\n CreateScheduleBody | undefined,\n Awaited<ReturnType<typeof createSchedule>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateScheduleMutationKey();\n const swrFn = getCreateScheduleMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListSchedulesUrl = (params?: ListSchedulesParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/schedules?${stringifiedParams}`\n : `/v1/schedules`;\n};\n\n/**\n * List the organization's schedules. Requires the `schedules:read` permission.\n * @summary List schedules\n */\nexport const listSchedules = async (\n params?: ListSchedulesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListSchedulesEnvelope> => {\n return customFetch<ListSchedulesEnvelope>(getListSchedulesUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListSchedulesKey = (params?: ListSchedulesParams) =>\n [`/v1/schedules`, ...(params ? [params] : [])] as const;\n\nexport type ListSchedulesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listSchedules>>\n>;\n\n/**\n * @summary List schedules\n */\nexport const useListSchedules = <TError = ErrorType<ErrorResponse>>(\n params?: ListSchedulesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listSchedules>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListSchedulesKey(params) : null));\n const swrFn = () => listSchedules(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetScheduleUrl = (scheduleId: string) => {\n return `/v1/schedules/${scheduleId}`;\n};\n\n/**\n * Retrieve a single schedule. Requires the `schedules:read` permission.\n * @summary Get a schedule\n */\nexport const getSchedule = async (\n scheduleId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetScheduleEnvelope> => {\n return customFetch<GetScheduleEnvelope>(getGetScheduleUrl(scheduleId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetScheduleKey = (scheduleId: string) =>\n [`/v1/schedules/${scheduleId}`] as const;\n\nexport type GetScheduleQueryResult = NonNullable<\n Awaited<ReturnType<typeof getSchedule>>\n>;\n\n/**\n * @summary Get a schedule\n */\nexport const useGetSchedule = <TError = ErrorType<ErrorResponse>>(\n scheduleId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getSchedule>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n scheduleId !== null &&\n scheduleId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetScheduleKey(scheduleId) : null));\n const swrFn = () => getSchedule(scheduleId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateScheduleUrl = (scheduleId: string) => {\n return `/v1/schedules/${scheduleId}`;\n};\n\n/**\n * Update a schedule's rule, environments, name, or enabled state.\n *\n * Changing the rule moves `next_run_at` to the first occurrence after the update; a rule that resolves to no such occurrence is rejected. One-off schedules are always enabled — delete one to cancel it before it fires.\n *\n * `environments` replaces the whole list rather than adding to it. It takes effect from the next occurrence: one already due keeps the environments it was created with.\n * @summary Update a schedule\n */\nexport const updateSchedule = async (\n scheduleId: string,\n updateScheduleBody?: UpdateScheduleBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateScheduleEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateScheduleEnvelope>(getUpdateScheduleUrl(scheduleId), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateScheduleBody),\n });\n};\n\nexport const getUpdateScheduleMutationFetcher = (\n scheduleId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateScheduleBody | undefined }) => {\n return updateSchedule(scheduleId, arg, options);\n };\n};\nexport const getUpdateScheduleMutationKey = (scheduleId: string) =>\n [`/v1/schedules/${scheduleId}`] as const;\n\nexport type UpdateScheduleMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateSchedule>>\n>;\n\n/**\n * @summary Update a schedule\n */\nexport const useUpdateSchedule = <TError = ErrorType<ErrorResponse>>(\n scheduleId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateSchedule>>,\n TError,\n Key,\n UpdateScheduleBody | undefined,\n Awaited<ReturnType<typeof updateSchedule>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateScheduleMutationKey(scheduleId);\n const swrFn = getUpdateScheduleMutationFetcher(scheduleId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteScheduleUrl = (scheduleId: string) => {\n return `/v1/schedules/${scheduleId}`;\n};\n\n/**\n * Delete a schedule so it stops firing.\n * @summary Delete a schedule\n */\nexport const deleteSchedule = async (\n scheduleId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteScheduleEnvelope> => {\n return customFetch<DeleteScheduleEnvelope>(getDeleteScheduleUrl(scheduleId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteScheduleMutationFetcher = (\n scheduleId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteSchedule(scheduleId, options);\n };\n};\nexport const getDeleteScheduleMutationKey = (scheduleId: string) =>\n [`/v1/schedules/${scheduleId}`] as const;\n\nexport type DeleteScheduleMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteSchedule>>\n>;\n\n/**\n * @summary Delete a schedule\n */\nexport const useDeleteSchedule = <TError = ErrorType<ErrorResponse>>(\n scheduleId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteSchedule>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteSchedule>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteScheduleMutationKey(scheduleId);\n const swrFn = getDeleteScheduleMutationFetcher(scheduleId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateSecretBody,\n CreateSecretEnvelope,\n DeleteSecretEnvelope,\n ErrorResponse,\n GetSecretEnvelope,\n ListSecretsEnvelope,\n ListSecretsParams,\n UpdateSecretBody,\n UpdateSecretEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateSecretUrl = () => {\n return `/v1/secrets`;\n};\n\n/**\n * Create an organization-level secret. The value is encrypted at rest and **write-only** — no endpoint ever returns it.\n *\n * Requires the `secrets:write` permission. Env keys used by the worker runtime itself (e.g. `OPENAI_API_KEY`, `AVALLON_*`, `AWS_*`) are reserved and rejected.\n * @summary Create a secret\n */\nexport const createSecret = async (\n createSecretBody?: CreateSecretBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateSecretEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateSecretEnvelope>(getCreateSecretUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createSecretBody),\n });\n};\n\nexport const getCreateSecretMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateSecretBody | undefined }) => {\n return createSecret(arg, options);\n };\n};\nexport const getCreateSecretMutationKey = () => [`/v1/secrets`] as const;\n\nexport type CreateSecretMutationResult = NonNullable<\n Awaited<ReturnType<typeof createSecret>>\n>;\n\n/**\n * @summary Create a secret\n */\nexport const useCreateSecret = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createSecret>>,\n TError,\n Key,\n CreateSecretBody | undefined,\n Awaited<ReturnType<typeof createSecret>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateSecretMutationKey();\n const swrFn = getCreateSecretMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListSecretsUrl = (params?: ListSecretsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/secrets?${stringifiedParams}`\n : `/v1/secrets`;\n};\n\n/**\n * List the organization's secrets with pagination and sorting. Values are never included. Requires the `secrets:read` permission.\n * @summary List secrets\n */\nexport const listSecrets = async (\n params?: ListSecretsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListSecretsEnvelope> => {\n return customFetch<ListSecretsEnvelope>(getListSecretsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListSecretsKey = (params?: ListSecretsParams) =>\n [`/v1/secrets`, ...(params ? [params] : [])] as const;\n\nexport type ListSecretsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listSecrets>>\n>;\n\n/**\n * @summary List secrets\n */\nexport const useListSecrets = <TError = ErrorType<ErrorResponse>>(\n params?: ListSecretsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listSecrets>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListSecretsKey(params) : null));\n const swrFn = () => listSecrets(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetSecretUrl = (secretId: string) => {\n return `/v1/secrets/${secretId}`;\n};\n\n/**\n * Get a secret's metadata. The value is never included. Requires the `secrets:read` permission.\n * @summary Get secret\n */\nexport const getSecret = async (\n secretId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetSecretEnvelope> => {\n return customFetch<GetSecretEnvelope>(getGetSecretUrl(secretId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetSecretKey = (secretId: string) =>\n [`/v1/secrets/${secretId}`] as const;\n\nexport type GetSecretQueryResult = NonNullable<\n Awaited<ReturnType<typeof getSecret>>\n>;\n\n/**\n * @summary Get secret\n */\nexport const useGetSecret = <TError = ErrorType<ErrorResponse>>(\n secretId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getSecret>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n secretId !== null &&\n secretId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetSecretKey(secretId) : null));\n const swrFn = () => getSecret(secretId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateSecretUrl = (secretId: string) => {\n return `/v1/secrets/${secretId}`;\n};\n\n/**\n * Update a secret's display name or description, or rotate its live or test value. Rotation overwrites the stored value — previous values are not retrievable.\n *\n * The `env_key` is immutable: consumers of the secret receive the value under that key, so changing it would silently break them. Create a new secret instead.\n *\n * Requires the `secrets:write` permission.\n * @summary Update secret\n */\nexport const updateSecret = async (\n secretId: string,\n updateSecretBody?: UpdateSecretBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateSecretEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateSecretEnvelope>(getUpdateSecretUrl(secretId), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateSecretBody),\n });\n};\n\nexport const getUpdateSecretMutationFetcher = (\n secretId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateSecretBody | undefined }) => {\n return updateSecret(secretId, arg, options);\n };\n};\nexport const getUpdateSecretMutationKey = (secretId: string) =>\n [`/v1/secrets/${secretId}`] as const;\n\nexport type UpdateSecretMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateSecret>>\n>;\n\n/**\n * @summary Update secret\n */\nexport const useUpdateSecret = <TError = ErrorType<ErrorResponse>>(\n secretId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateSecret>>,\n TError,\n Key,\n UpdateSecretBody | undefined,\n Awaited<ReturnType<typeof updateSecret>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateSecretMutationKey(secretId);\n const swrFn = getUpdateSecretMutationFetcher(secretId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteSecretUrl = (secretId: string) => {\n return `/v1/secrets/${secretId}`;\n};\n\n/**\n * Delete a secret and detach it from all entities. Requires the `secrets:write` permission.\n * @summary Delete secret\n */\nexport const deleteSecret = async (\n secretId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteSecretEnvelope> => {\n return customFetch<DeleteSecretEnvelope>(getDeleteSecretUrl(secretId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteSecretMutationFetcher = (\n secretId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteSecret(secretId, options);\n };\n};\nexport const getDeleteSecretMutationKey = (secretId: string) =>\n [`/v1/secrets/${secretId}`] as const;\n\nexport type DeleteSecretMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteSecret>>\n>;\n\n/**\n * @summary Delete secret\n */\nexport const useDeleteSecret = <TError = ErrorType<ErrorResponse>>(\n secretId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteSecret>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteSecret>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteSecretMutationKey(secretId);\n const swrFn = getDeleteSecretMutationFetcher(secretId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n ErrorResponse,\n InviteTeamMemberBody,\n InviteTeamMemberEnvelope,\n ListTeamInvitationsEnvelope,\n ListTeamMembersEnvelope,\n ResendTeamInvitationEnvelope,\n UpdateMemberRoleBody,\n UpdateMemberRoleEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListTeamMembersUrl = () => {\n return `/v1/team/members`;\n};\n\n/**\n * List all members in the current tenant.\n * @summary List team members\n */\nexport const listTeamMembers = async (\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListTeamMembersEnvelope> => {\n return customFetch<ListTeamMembersEnvelope>(getListTeamMembersUrl(), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListTeamMembersKey = () => [`/v1/team/members`] as const;\n\nexport type ListTeamMembersQueryResult = NonNullable<\n Awaited<ReturnType<typeof listTeamMembers>>\n>;\n\n/**\n * @summary List team members\n */\nexport const useListTeamMembers = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listTeamMembers>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListTeamMembersKey() : null));\n const swrFn = () => listTeamMembers(requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getInviteTeamMemberUrl = () => {\n return `/v1/team/invitations`;\n};\n\n/**\n * Invite an email address to join the current tenant. The invitee receives an email and joins at the `member` role once they accept; promote them afterwards with `PATCH /v1/team/members/{id}`.\n *\n * Requires the `teams:write` permission.\n *\n * Returns `409` if the address already has a pending invitation or is already a member.\n * @summary Invite a team member\n */\nexport const inviteTeamMember = async (\n inviteTeamMemberBody?: InviteTeamMemberBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<InviteTeamMemberEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<InviteTeamMemberEnvelope>(getInviteTeamMemberUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(inviteTeamMemberBody),\n });\n};\n\nexport const getInviteTeamMemberMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: InviteTeamMemberBody | undefined }) => {\n return inviteTeamMember(arg, options);\n };\n};\nexport const getInviteTeamMemberMutationKey = () =>\n [`/v1/team/invitations`] as const;\n\nexport type InviteTeamMemberMutationResult = NonNullable<\n Awaited<ReturnType<typeof inviteTeamMember>>\n>;\n\n/**\n * @summary Invite a team member\n */\nexport const useInviteTeamMember = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof inviteTeamMember>>,\n TError,\n Key,\n InviteTeamMemberBody | undefined,\n Awaited<ReturnType<typeof inviteTeamMember>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getInviteTeamMemberMutationKey();\n const swrFn = getInviteTeamMemberMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListTeamInvitationsUrl = () => {\n return `/v1/team/invitations`;\n};\n\n/**\n * List the invitations for the current tenant that are still awaiting acceptance. Accepted, revoked and expired invitations are not returned.\n *\n * Invitees are not team members yet, so they do not appear in `GET /v1/team/members`. A member-management screen shows both by merging the two lists.\n *\n * Requires the `teams:write` permission.\n * @summary List pending team invitations\n */\nexport const listTeamInvitations = async (\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListTeamInvitationsEnvelope> => {\n return customFetch<ListTeamInvitationsEnvelope>(getListTeamInvitationsUrl(), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListTeamInvitationsKey = () =>\n [`/v1/team/invitations`] as const;\n\nexport type ListTeamInvitationsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listTeamInvitations>>\n>;\n\n/**\n * @summary List pending team invitations\n */\nexport const useListTeamInvitations = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listTeamInvitations>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListTeamInvitationsKey() : null));\n const swrFn = () => listTeamInvitations(requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRevokeTeamInvitationUrl = (invitationId: string) => {\n return `/v1/team/invitations/${invitationId}`;\n};\n\n/**\n * Cancel a pending invitation. The link that was emailed to the invitee stops working, and the address becomes free to invite again.\n *\n * Idempotent: an invitation that was already accepted, revoked or expired also returns `204`.\n *\n * Requires the `teams:write` permission.\n *\n * Returns `404` for an unknown invitation or one that belongs to another tenant.\n * @summary Revoke a team invitation\n */\nexport const revokeTeamInvitation = async (\n invitationId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<void> => {\n return customFetch<void>(getRevokeTeamInvitationUrl(invitationId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getRevokeTeamInvitationMutationFetcher = (\n invitationId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return revokeTeamInvitation(invitationId, options);\n };\n};\nexport const getRevokeTeamInvitationMutationKey = (invitationId: string) =>\n [`/v1/team/invitations/${invitationId}`] as const;\n\nexport type RevokeTeamInvitationMutationResult = NonNullable<\n Awaited<ReturnType<typeof revokeTeamInvitation>>\n>;\n\n/**\n * @summary Revoke a team invitation\n */\nexport const useRevokeTeamInvitation = <TError = ErrorType<ErrorResponse>>(\n invitationId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof revokeTeamInvitation>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof revokeTeamInvitation>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getRevokeTeamInvitationMutationKey(invitationId);\n const swrFn = getRevokeTeamInvitationMutationFetcher(\n invitationId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getResendTeamInvitationUrl = (invitationId: string) => {\n return `/v1/team/invitations/${invitationId}/resend`;\n};\n\n/**\n * Email the invitation to its recipient again, for an invite that never arrived. The invitation keeps its `id` and its original expiry — this re-sends the existing link rather than issuing a new one.\n *\n * To give someone a genuinely fresh 5 days, revoke the invitation and send a new one instead.\n *\n * Requires the `teams:write` permission.\n *\n * Returns `409` if the invitation is no longer pending — it was accepted, revoked or expired underneath the caller — and `404` for an unknown invitation or one that belongs to another tenant.\n * @summary Resend a team invitation\n */\nexport const resendTeamInvitation = async (\n invitationId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ResendTeamInvitationEnvelope> => {\n return customFetch<ResendTeamInvitationEnvelope>(\n getResendTeamInvitationUrl(invitationId),\n {\n ...options,\n method: \"POST\",\n }\n );\n};\n\nexport const getResendTeamInvitationMutationFetcher = (\n invitationId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return resendTeamInvitation(invitationId, options);\n };\n};\nexport const getResendTeamInvitationMutationKey = (invitationId: string) =>\n [`/v1/team/invitations/${invitationId}/resend`] as const;\n\nexport type ResendTeamInvitationMutationResult = NonNullable<\n Awaited<ReturnType<typeof resendTeamInvitation>>\n>;\n\n/**\n * @summary Resend a team invitation\n */\nexport const useResendTeamInvitation = <TError = ErrorType<ErrorResponse>>(\n invitationId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof resendTeamInvitation>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof resendTeamInvitation>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getResendTeamInvitationMutationKey(invitationId);\n const swrFn = getResendTeamInvitationMutationFetcher(\n invitationId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateMemberRoleUrl = (id: string) => {\n return `/v1/team/members/${id}`;\n};\n\n/**\n * Change the role of a team member.\n * @summary Update member role\n */\nexport const updateMemberRole = async (\n id: string,\n updateMemberRoleBody?: UpdateMemberRoleBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateMemberRoleEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateMemberRoleEnvelope>(getUpdateMemberRoleUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateMemberRoleBody),\n });\n};\n\nexport const getUpdateMemberRoleMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateMemberRoleBody | undefined }) => {\n return updateMemberRole(id, arg, options);\n };\n};\nexport const getUpdateMemberRoleMutationKey = (id: string) =>\n [`/v1/team/members/${id}`] as const;\n\nexport type UpdateMemberRoleMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateMemberRole>>\n>;\n\n/**\n * @summary Update member role\n */\nexport const useUpdateMemberRole = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateMemberRole>>,\n TError,\n Key,\n UpdateMemberRoleBody | undefined,\n Awaited<ReturnType<typeof updateMemberRole>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateMemberRoleMutationKey(id);\n const swrFn = getUpdateMemberRoleMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getRemoveMemberUrl = (id: string) => {\n return `/v1/team/members/${id}`;\n};\n\n/**\n * Soft-delete a team member, revoking access on the next token refresh.\n * @summary Remove team member\n */\nexport const removeMember = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<void> => {\n return customFetch<void>(getRemoveMemberUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getRemoveMemberMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return removeMember(id, options);\n };\n};\nexport const getRemoveMemberMutationKey = (id: string) =>\n [`/v1/team/members/${id}`] as const;\n\nexport type RemoveMemberMutationResult = NonNullable<\n Awaited<ReturnType<typeof removeMember>>\n>;\n\n/**\n * @summary Remove team member\n */\nexport const useRemoveMember = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof removeMember>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof removeMember>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getRemoveMemberMutationKey(id);\n const swrFn = getRemoveMemberMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateToolBody,\n CreateToolEnvelope,\n DeleteToolEnvelope,\n ErrorResponse,\n ExecuteCodeBody,\n ExecuteCodeEnvelope,\n GetToolEnvelope,\n GetToolVersionChangeSummaryEnvelope,\n GetToolVersionEnvelope,\n ListToolVersionsEnvelope,\n ListToolVersionsParams,\n ListToolsEnvelope,\n ListToolsParams,\n PromoteToolVersionBody,\n PromoteToolVersionEnvelope,\n UpdateToolBody,\n UpdateToolEnvelope,\n WorkerExecuteToolBody,\n WorkerExecuteToolEnvelope,\n WorkerGetToolEnvelope,\n WorkerListToolsEnvelope,\n WorkerListToolsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateToolUrl = () => {\n return `/v1/tools`;\n};\n\n/**\n * Create a new code tool that can be attached to agents. Provide the tool's name, code, and description.\n * @summary Create tool\n */\nexport const createTool = async (\n createToolBody?: CreateToolBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateToolEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateToolEnvelope>(getCreateToolUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createToolBody),\n });\n};\n\nexport const getCreateToolMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateToolBody | undefined }) => {\n return createTool(arg, options);\n };\n};\nexport const getCreateToolMutationKey = () => [`/v1/tools`] as const;\n\nexport type CreateToolMutationResult = NonNullable<\n Awaited<ReturnType<typeof createTool>>\n>;\n\n/**\n * @summary Create tool\n */\nexport const useCreateTool = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createTool>>,\n TError,\n Key,\n CreateToolBody | undefined,\n Awaited<ReturnType<typeof createTool>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateToolMutationKey();\n const swrFn = getCreateToolMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListToolsUrl = (params?: ListToolsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/tools?${stringifiedParams}`\n : `/v1/tools`;\n};\n\n/**\n * List all code tools with sorting.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /worker/v1/tools`\n * @summary List tools\n */\nexport const listTools = async (\n params?: ListToolsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListToolsEnvelope> => {\n return customFetch<ListToolsEnvelope>(getListToolsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListToolsKey = (params?: ListToolsParams) =>\n [`/v1/tools`, ...(params ? [params] : [])] as const;\n\nexport type ListToolsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listTools>>\n>;\n\n/**\n * @summary List tools\n */\nexport const useListTools = <TError = ErrorType<ErrorResponse>>(\n params?: ListToolsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listTools>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListToolsKey(params) : null));\n const swrFn = () => listTools(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\n/**\n * Delete a tool. Fails with a conflict when the tool is still attached to a voice agent, worker, or chat agent; detach it first.\n * @summary Delete tool\n */\nexport const deleteTool = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteToolEnvelope> => {\n return customFetch<DeleteToolEnvelope>(getDeleteToolUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteToolMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteTool(id, options);\n };\n};\nexport const getDeleteToolMutationKey = (id: string) =>\n [`/v1/tools/${id}`] as const;\n\nexport type DeleteToolMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteTool>>\n>;\n\n/**\n * @summary Delete tool\n */\nexport const useDeleteTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteTool>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteTool>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteToolMutationKey(id);\n const swrFn = getDeleteToolMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\n/**\n * Retrieve a single tool by ID at its newest config version, including its code, schema, description and attached secrets, plus the versions each environment runs.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /worker/v1/tools/{id}`\n * @summary Get tool\n */\nexport const getTool = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetToolEnvelope> => {\n return customFetch<GetToolEnvelope>(getGetToolUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetToolKey = (id: string) => [`/v1/tools/${id}`] as const;\n\nexport type GetToolQueryResult = NonNullable<\n Awaited<ReturnType<typeof getTool>>\n>;\n\n/**\n * @summary Get tool\n */\nexport const useGetTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getTool>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetToolKey(id) : null));\n const swrFn = () => getTool(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\n/**\n * Update a code tool's name, description, code, or attached secrets. All fields are optional — only provided fields are updated.\n *\n * Changing the code, description or attached secrets creates a new config version; runs keep executing the versions promoted to live and test until that version is promoted. Renaming does not create a version.\n * @summary Update tool\n */\nexport const updateTool = async (\n id: string,\n updateToolBody?: UpdateToolBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateToolEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateToolEnvelope>(getUpdateToolUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateToolBody),\n });\n};\n\nexport const getUpdateToolMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateToolBody | undefined }) => {\n return updateTool(id, arg, options);\n };\n};\nexport const getUpdateToolMutationKey = (id: string) =>\n [`/v1/tools/${id}`] as const;\n\nexport type UpdateToolMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateTool>>\n>;\n\n/**\n * @summary Update tool\n */\nexport const useUpdateTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateTool>>,\n TError,\n Key,\n UpdateToolBody | undefined,\n Awaited<ReturnType<typeof updateTool>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateToolMutationKey(id);\n const swrFn = getUpdateToolMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getExecuteCodeUrl = (id: string) => {\n return `/v1/tools/${id}/execute`;\n};\n\n/**\n * Execute a code tool with the given parameters. Returns the result, any errors, and execution traces.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /worker/v1/tools/{id}/execute`\n * @summary Execute tool\n */\nexport const executeCode = async (\n id: string,\n executeCodeBody?: ExecuteCodeBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ExecuteCodeEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<ExecuteCodeEnvelope>(getExecuteCodeUrl(id), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(executeCodeBody),\n });\n};\n\nexport const getExecuteCodeMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: ExecuteCodeBody | undefined }) => {\n return executeCode(id, arg, options);\n };\n};\nexport const getExecuteCodeMutationKey = (id: string) =>\n [`/v1/tools/${id}/execute`] as const;\n\nexport type ExecuteCodeMutationResult = NonNullable<\n Awaited<ReturnType<typeof executeCode>>\n>;\n\n/**\n * @summary Execute tool\n */\nexport const useExecuteCode = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof executeCode>>,\n TError,\n Key,\n ExecuteCodeBody | undefined,\n Awaited<ReturnType<typeof executeCode>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getExecuteCodeMutationKey(id);\n const swrFn = getExecuteCodeMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListToolVersionsUrl = (\n id: string,\n params?: ListToolVersionsParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/tools/${id}/versions?${stringifiedParams}`\n : `/v1/tools/${id}/versions`;\n};\n\n/**\n * List all config versions for a tool, ordered by version (newest first by default).\n * @summary List tool versions\n */\nexport const listToolVersions = async (\n id: string,\n params?: ListToolVersionsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListToolVersionsEnvelope> => {\n return customFetch<ListToolVersionsEnvelope>(\n getListToolVersionsUrl(id, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListToolVersionsKey = (\n id: string,\n params?: ListToolVersionsParams\n) => [`/v1/tools/${id}/versions`, ...(params ? [params] : [])] as const;\n\nexport type ListToolVersionsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listToolVersions>>\n>;\n\n/**\n * @summary List tool versions\n */\nexport const useListToolVersions = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListToolVersionsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listToolVersions>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListToolVersionsKey(id, params) : null));\n const swrFn = () => listToolVersions(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetToolVersionUrl = (id: string, version: number) => {\n return `/v1/tools/${id}/versions/${version}`;\n};\n\n/**\n * Retrieve a single tool config version: the tool's identity, the code, schema, description and attached secrets at that version, and version metadata.\n * @summary Get tool version\n */\nexport const getToolVersion = async (\n id: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetToolVersionEnvelope> => {\n return customFetch<GetToolVersionEnvelope>(\n getGetToolVersionUrl(id, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetToolVersionKey = (id: string, version: number) =>\n [`/v1/tools/${id}/versions/${version}`] as const;\n\nexport type GetToolVersionQueryResult = NonNullable<\n Awaited<ReturnType<typeof getToolVersion>>\n>;\n\n/**\n * @summary Get tool version\n */\nexport const useGetToolVersion = <TError = ErrorType<ErrorResponse>>(\n id: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getToolVersion>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n id !== null &&\n id !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetToolVersionKey(id, version) : null));\n const swrFn = () => getToolVersion(id, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPromoteToolVersionUrl = (id: string, version: number) => {\n return `/v1/tools/${id}/versions/${version}/promote`;\n};\n\n/**\n * Select a tool config version for the live or test environment. Runs in that environment execute this version's code with this version's schema and attached secrets from then on.\n * @summary Promote tool version\n */\nexport const promoteToolVersion = async (\n id: string,\n version: number,\n promoteToolVersionBody?: PromoteToolVersionBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<PromoteToolVersionEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<PromoteToolVersionEnvelope>(\n getPromoteToolVersionUrl(id, version),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(promoteToolVersionBody),\n }\n );\n};\n\nexport const getPromoteToolVersionMutationFetcher = (\n id: string,\n version: number,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: PromoteToolVersionBody | undefined }) => {\n return promoteToolVersion(id, version, arg, options);\n };\n};\nexport const getPromoteToolVersionMutationKey = (id: string, version: number) =>\n [`/v1/tools/${id}/versions/${version}/promote`] as const;\n\nexport type PromoteToolVersionMutationResult = NonNullable<\n Awaited<ReturnType<typeof promoteToolVersion>>\n>;\n\n/**\n * @summary Promote tool version\n */\nexport const usePromoteToolVersion = <TError = ErrorType<ErrorResponse>>(\n id: string,\n version: number,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof promoteToolVersion>>,\n TError,\n Key,\n PromoteToolVersionBody | undefined,\n Awaited<ReturnType<typeof promoteToolVersion>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getPromoteToolVersionMutationKey(id, version);\n const swrFn = getPromoteToolVersionMutationFetcher(\n id,\n version,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetToolVersionChangeSummaryUrl = (\n id: string,\n version: number\n) => {\n return `/v1/tools/${id}/versions/${version}/change-summary`;\n};\n\n/**\n * Returns an AI-generated summary of what changed between this version and the previous one. Initial version returns an empty string since there is no predecessor.\n * @summary Get tool version change summary\n */\nexport const getToolVersionChangeSummary = async (\n id: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetToolVersionChangeSummaryEnvelope> => {\n return customFetch<GetToolVersionChangeSummaryEnvelope>(\n getGetToolVersionChangeSummaryUrl(id, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetToolVersionChangeSummaryKey = (\n id: string,\n version: number\n) => [`/v1/tools/${id}/versions/${version}/change-summary`] as const;\n\nexport type GetToolVersionChangeSummaryQueryResult = NonNullable<\n Awaited<ReturnType<typeof getToolVersionChangeSummary>>\n>;\n\n/**\n * @summary Get tool version change summary\n */\nexport const useGetToolVersionChangeSummary = <\n TError = ErrorType<ErrorResponse>,\n>(\n id: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getToolVersionChangeSummary>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n id !== null &&\n id !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetToolVersionChangeSummaryKey(id, version) : null));\n const swrFn = () => getToolVersionChangeSummary(id, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getWorkerListToolsUrl = (params?: WorkerListToolsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/worker/v1/tools?${stringifiedParams}`\n : `/worker/v1/tools`;\n};\n\n/**\n * List all code tools with sorting.\n * @deprecated\n * @summary List tools\n */\nexport const workerListTools = async (\n params?: WorkerListToolsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<WorkerListToolsEnvelope> => {\n return customFetch<WorkerListToolsEnvelope>(getWorkerListToolsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getWorkerListToolsKey = (params?: WorkerListToolsParams) =>\n [`/worker/v1/tools`, ...(params ? [params] : [])] as const;\n\nexport type WorkerListToolsQueryResult = NonNullable<\n Awaited<ReturnType<typeof workerListTools>>\n>;\n\n/**\n * @deprecated\n * @summary List tools\n */\nexport const useWorkerListTools = <TError = ErrorType<ErrorResponse>>(\n params?: WorkerListToolsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof workerListTools>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getWorkerListToolsKey(params) : null));\n const swrFn = () => workerListTools(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getWorkerGetToolUrl = (id: string) => {\n return `/worker/v1/tools/${id}`;\n};\n\n/**\n * Retrieve a single tool by ID at its newest config version, including its code, schema, description and attached secrets, plus the versions each environment runs.\n * @deprecated\n * @summary Get tool\n */\nexport const workerGetTool = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<WorkerGetToolEnvelope> => {\n return customFetch<WorkerGetToolEnvelope>(getWorkerGetToolUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getWorkerGetToolKey = (id: string) =>\n [`/worker/v1/tools/${id}`] as const;\n\nexport type WorkerGetToolQueryResult = NonNullable<\n Awaited<ReturnType<typeof workerGetTool>>\n>;\n\n/**\n * @deprecated\n * @summary Get tool\n */\nexport const useWorkerGetTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof workerGetTool>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getWorkerGetToolKey(id) : null));\n const swrFn = () => workerGetTool(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getWorkerExecuteToolUrl = (id: string) => {\n return `/worker/v1/tools/${id}/execute`;\n};\n\n/**\n * Execute a code tool with the given parameters. Returns the result, any errors, and execution traces.\n * @deprecated\n * @summary Execute tool\n */\nexport const workerExecuteTool = async (\n id: string,\n workerExecuteToolBody?: WorkerExecuteToolBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<WorkerExecuteToolEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<WorkerExecuteToolEnvelope>(getWorkerExecuteToolUrl(id), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(workerExecuteToolBody),\n });\n};\n\nexport const getWorkerExecuteToolMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: WorkerExecuteToolBody | undefined }) => {\n return workerExecuteTool(id, arg, options);\n };\n};\nexport const getWorkerExecuteToolMutationKey = (id: string) =>\n [`/worker/v1/tools/${id}/execute`] as const;\n\nexport type WorkerExecuteToolMutationResult = NonNullable<\n Awaited<ReturnType<typeof workerExecuteTool>>\n>;\n\n/**\n * @deprecated\n * @summary Execute tool\n */\nexport const useWorkerExecuteTool = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof workerExecuteTool>>,\n TError,\n Key,\n WorkerExecuteToolBody | undefined,\n Awaited<ReturnType<typeof workerExecuteTool>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getWorkerExecuteToolMutationKey(id);\n const swrFn = getWorkerExecuteToolMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateVoiceAgentBody,\n CreateVoiceAgentEnvelope,\n DeleteVoiceAgentEnvelope,\n ErrorResponse,\n GetVoiceAgentEnvelope,\n GetVoiceAgentPlaceholdersEnvelope,\n GetVoiceAgentPromptEnvelope,\n GetVoiceAgentPromptParams,\n GetVoiceAgentVersionChangeSummaryEnvelope,\n GetVoiceAgentVersionEnvelope,\n ListVoiceAgentVersionsEnvelope,\n ListVoiceAgentVersionsParams,\n ListVoiceAgentsEnvelope,\n ListVoiceAgentsParams,\n PromoteVoiceAgentVersionBody,\n PromoteVoiceAgentVersionEnvelope,\n UpdateCallControlsBody,\n UpdateCallControlsEnvelope,\n UpdateVoiceAgentBody,\n UpdateVoiceAgentEnvelope,\n UpdateVoiceAgentModelsBody,\n UpdateVoiceAgentModelsEnvelope,\n UpdateVoiceAgentPromptBody,\n UpdateVoiceAgentPromptEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListVoiceAgentsUrl = (params?: ListVoiceAgentsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents?${stringifiedParams}`\n : `/v1/voice-agents`;\n};\n\n/**\n * List all voice agents for your tenant.\n *\n * **Filtering:**\n *\n * Filter voice agents by name using the `agent_name` query parameter (exact match).\n *\n * **Response:**\n *\n * Returns an array of all voice agents with their configurations and a total count.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents`\n * @summary List voice agents\n */\nexport const listVoiceAgents = async (\n params?: ListVoiceAgentsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListVoiceAgentsEnvelope> => {\n return customFetch<ListVoiceAgentsEnvelope>(getListVoiceAgentsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListVoiceAgentsKey = (params?: ListVoiceAgentsParams) =>\n [`/v1/voice-agents`, ...(params ? [params] : [])] as const;\n\nexport type ListVoiceAgentsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listVoiceAgents>>\n>;\n\n/**\n * @summary List voice agents\n */\nexport const useListVoiceAgents = <TError = ErrorType<ErrorResponse>>(\n params?: ListVoiceAgentsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listVoiceAgents>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListVoiceAgentsKey(params) : null));\n const swrFn = () => listVoiceAgents(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateVoiceAgentUrl = () => {\n return `/v1/voice-agents`;\n};\n\n/**\n * Create a new voice agent with the specified configuration.\n *\n * **Required fields:**\n *\n * All fields in the request body are required except `phone_number_id` and `transfer_phone_number`.\n *\n * **Response:**\n *\n * Returns the created voice agent with its ID and configuration.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/agents`\n * @summary Create voice agent\n */\nexport const createVoiceAgent = async (\n createVoiceAgentBody?: CreateVoiceAgentBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateVoiceAgentEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateVoiceAgentEnvelope>(getCreateVoiceAgentUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createVoiceAgentBody),\n });\n};\n\nexport const getCreateVoiceAgentMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateVoiceAgentBody | undefined }) => {\n return createVoiceAgent(arg, options);\n };\n};\nexport const getCreateVoiceAgentMutationKey = () =>\n [`/v1/voice-agents`] as const;\n\nexport type CreateVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof createVoiceAgent>>\n>;\n\n/**\n * @summary Create voice agent\n */\nexport const useCreateVoiceAgent = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createVoiceAgent>>,\n TError,\n Key,\n CreateVoiceAgentBody | undefined,\n Awaited<ReturnType<typeof createVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateVoiceAgentMutationKey();\n const swrFn = getCreateVoiceAgentMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}`;\n};\n\n/**\n * Retrieve a single voice agent by its ID.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents/{id}`\n * @summary Get voice agent\n */\nexport const getVoiceAgent = async (\n voiceAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentEnvelope> => {\n return customFetch<GetVoiceAgentEnvelope>(getGetVoiceAgentUrl(voiceAgentId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetVoiceAgentKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}`] as const;\n\nexport type GetVoiceAgentQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgent>>\n>;\n\n/**\n * @summary Get voice agent\n */\nexport const useGetVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgent>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetVoiceAgentKey(voiceAgentId) : null));\n const swrFn = () => getVoiceAgent(voiceAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}`;\n};\n\n/**\n * Update a voice agent's name, call processor, or call behaviour settings.\n *\n * To change the processor assignment, `call_processor_id` and `call_processor_type` must be provided together. Set `call_processor_id` to `null` to detach (`call_processor_type` is still required).\n *\n * Set `voice_mail_detection` to `true` to have the agent listen for a voicemail beep tone. Detection only runs on `OUTBOUND` agents; enabling it on an `INBOUND` agent is stored but has no effect.\n *\n * Set `noise_cancellation` to choose the noise cancellation mode applied to the caller audio.\n *\n * Set `tool_ids` to replace the agent's attached tool set. This is the supported way to manage tool attachments; the dedicated add and remove endpoints are deprecated.\n *\n * Config changes create a new voice agent config version. The live and test releases keep pointing at their current versions until the new version is promoted.\n * @summary Update voice agent\n */\nexport const updateVoiceAgent = async (\n voiceAgentId: string,\n updateVoiceAgentBody?: UpdateVoiceAgentBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateVoiceAgentEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateVoiceAgentEnvelope>(\n getUpdateVoiceAgentUrl(voiceAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateVoiceAgentBody),\n }\n );\n};\n\nexport const getUpdateVoiceAgentMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateVoiceAgentBody | undefined }) => {\n return updateVoiceAgent(voiceAgentId, arg, options);\n };\n};\nexport const getUpdateVoiceAgentMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}`] as const;\n\nexport type UpdateVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateVoiceAgent>>\n>;\n\n/**\n * @summary Update voice agent\n */\nexport const useUpdateVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateVoiceAgent>>,\n TError,\n Key,\n UpdateVoiceAgentBody | undefined,\n Awaited<ReturnType<typeof updateVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateVoiceAgentMutationKey(voiceAgentId);\n const swrFn = getUpdateVoiceAgentMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}`;\n};\n\n/**\n * Delete a voice agent. The agent is hidden from all reads; its call and job history is preserved.\n * @summary Delete voice agent\n */\nexport const deleteVoiceAgent = async (\n voiceAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteVoiceAgentEnvelope> => {\n return customFetch<DeleteVoiceAgentEnvelope>(\n getDeleteVoiceAgentUrl(voiceAgentId),\n {\n ...options,\n method: \"DELETE\",\n }\n );\n};\n\nexport const getDeleteVoiceAgentMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteVoiceAgent(voiceAgentId, options);\n };\n};\nexport const getDeleteVoiceAgentMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}`] as const;\n\nexport type DeleteVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteVoiceAgent>>\n>;\n\n/**\n * @summary Delete voice agent\n */\nexport const useDeleteVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteVoiceAgent>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getDeleteVoiceAgentMutationKey(voiceAgentId);\n const swrFn = getDeleteVoiceAgentMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListVoiceAgentVersionsUrl = (\n voiceAgentId: string,\n params?: ListVoiceAgentVersionsParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents/${voiceAgentId}/versions?${stringifiedParams}`\n : `/v1/voice-agents/${voiceAgentId}/versions`;\n};\n\n/**\n * List all config versions for a voice agent, ordered by version (newest first by default).\n * @summary List voice agent versions\n */\nexport const listVoiceAgentVersions = async (\n voiceAgentId: string,\n params?: ListVoiceAgentVersionsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListVoiceAgentVersionsEnvelope> => {\n return customFetch<ListVoiceAgentVersionsEnvelope>(\n getListVoiceAgentVersionsUrl(voiceAgentId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListVoiceAgentVersionsKey = (\n voiceAgentId: string,\n params?: ListVoiceAgentVersionsParams\n) =>\n [\n `/v1/voice-agents/${voiceAgentId}/versions`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type ListVoiceAgentVersionsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listVoiceAgentVersions>>\n>;\n\n/**\n * @summary List voice agent versions\n */\nexport const useListVoiceAgentVersions = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n params?: ListVoiceAgentVersionsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listVoiceAgentVersions>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getListVoiceAgentVersionsKey(voiceAgentId, params) : null);\n const swrFn = () =>\n listVoiceAgentVersions(voiceAgentId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentVersionUrl = (\n voiceAgentId: string,\n version: number\n) => {\n return `/v1/voice-agents/${voiceAgentId}/versions/${version}`;\n};\n\n/**\n * Retrieve a single voice agent config version, including the agent's identity, the config snapshot at that version, and version-specific metadata.\n * @summary Get voice agent version\n */\nexport const getVoiceAgentVersion = async (\n voiceAgentId: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentVersionEnvelope> => {\n return customFetch<GetVoiceAgentVersionEnvelope>(\n getGetVoiceAgentVersionUrl(voiceAgentId, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentVersionKey = (\n voiceAgentId: string,\n version: number\n) => [`/v1/voice-agents/${voiceAgentId}/versions/${version}`] as const;\n\nexport type GetVoiceAgentVersionQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgentVersion>>\n>;\n\n/**\n * @summary Get voice agent version\n */\nexport const useGetVoiceAgentVersion = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgentVersion>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getGetVoiceAgentVersionKey(voiceAgentId, version) : null);\n const swrFn = () =>\n getVoiceAgentVersion(voiceAgentId, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPromoteVoiceAgentVersionUrl = (\n voiceAgentId: string,\n version: number\n) => {\n return `/v1/voice-agents/${voiceAgentId}/versions/${version}/promote`;\n};\n\n/**\n * Select a voice agent configuration version for the live or test environment.\n * @summary Promote voice agent version\n */\nexport const promoteVoiceAgentVersion = async (\n voiceAgentId: string,\n version: number,\n promoteVoiceAgentVersionBody?: PromoteVoiceAgentVersionBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<PromoteVoiceAgentVersionEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<PromoteVoiceAgentVersionEnvelope>(\n getPromoteVoiceAgentVersionUrl(voiceAgentId, version),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(promoteVoiceAgentVersionBody),\n }\n );\n};\n\nexport const getPromoteVoiceAgentVersionMutationFetcher = (\n voiceAgentId: string,\n version: number,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: PromoteVoiceAgentVersionBody | undefined }\n ) => {\n return promoteVoiceAgentVersion(voiceAgentId, version, arg, options);\n };\n};\nexport const getPromoteVoiceAgentVersionMutationKey = (\n voiceAgentId: string,\n version: number\n) => [`/v1/voice-agents/${voiceAgentId}/versions/${version}/promote`] as const;\n\nexport type PromoteVoiceAgentVersionMutationResult = NonNullable<\n Awaited<ReturnType<typeof promoteVoiceAgentVersion>>\n>;\n\n/**\n * @summary Promote voice agent version\n */\nexport const usePromoteVoiceAgentVersion = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n version: number,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof promoteVoiceAgentVersion>>,\n TError,\n Key,\n PromoteVoiceAgentVersionBody | undefined,\n Awaited<ReturnType<typeof promoteVoiceAgentVersion>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ??\n getPromoteVoiceAgentVersionMutationKey(voiceAgentId, version);\n const swrFn = getPromoteVoiceAgentVersionMutationFetcher(\n voiceAgentId,\n version,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentVersionChangeSummaryUrl = (\n voiceAgentId: string,\n version: number\n) => {\n return `/v1/voice-agents/${voiceAgentId}/versions/${version}/change-summary`;\n};\n\n/**\n * Returns an AI-generated summary of what changed between this version and the previous one. Initial version returns an empty string since there is no predecessor.\n * @summary Get voice agent version change summary\n */\nexport const getVoiceAgentVersionChangeSummary = async (\n voiceAgentId: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentVersionChangeSummaryEnvelope> => {\n return customFetch<GetVoiceAgentVersionChangeSummaryEnvelope>(\n getGetVoiceAgentVersionChangeSummaryUrl(voiceAgentId, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentVersionChangeSummaryKey = (\n voiceAgentId: string,\n version: number\n) =>\n [\n `/v1/voice-agents/${voiceAgentId}/versions/${version}/change-summary`,\n ] as const;\n\nexport type GetVoiceAgentVersionChangeSummaryQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgentVersionChangeSummary>>\n>;\n\n/**\n * @summary Get voice agent version change summary\n */\nexport const useGetVoiceAgentVersionChangeSummary = <\n TError = ErrorType<ErrorResponse>,\n>(\n voiceAgentId: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgentVersionChangeSummary>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled\n ? getGetVoiceAgentVersionChangeSummaryKey(voiceAgentId, version)\n : null);\n const swrFn = () =>\n getVoiceAgentVersionChangeSummary(voiceAgentId, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentPlaceholdersUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/placeholders`;\n};\n\n/**\n * Retrieve the available placeholder variables defined in a voice agent's prompt.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents/{id}/prompt`\n * @summary Get voice agent placeholders\n */\nexport const getVoiceAgentPlaceholders = async (\n voiceAgentId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentPlaceholdersEnvelope> => {\n return customFetch<GetVoiceAgentPlaceholdersEnvelope>(\n getGetVoiceAgentPlaceholdersUrl(voiceAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentPlaceholdersKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/placeholders`] as const;\n\nexport type GetVoiceAgentPlaceholdersQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgentPlaceholders>>\n>;\n\n/**\n * @summary Get voice agent placeholders\n */\nexport const useGetVoiceAgentPlaceholders = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgentPlaceholders>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetVoiceAgentPlaceholdersKey(voiceAgentId) : null));\n const swrFn = () => getVoiceAgentPlaceholders(voiceAgentId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetVoiceAgentPromptUrl = (\n voiceAgentId: string,\n params?: GetVoiceAgentPromptParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents/${voiceAgentId}/prompt?${stringifiedParams}`\n : `/v1/voice-agents/${voiceAgentId}/prompt`;\n};\n\n/**\n * Retrieve the prompt for a voice agent. Pass `version` to fetch the prompt snapshot at a specific config version; omit it to fetch the current prompt. Internal use only.\n * @summary Get voice agent prompt\n */\nexport const getVoiceAgentPrompt = async (\n voiceAgentId: string,\n params?: GetVoiceAgentPromptParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetVoiceAgentPromptEnvelope> => {\n return customFetch<GetVoiceAgentPromptEnvelope>(\n getGetVoiceAgentPromptUrl(voiceAgentId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentPromptKey = (\n voiceAgentId: string,\n params?: GetVoiceAgentPromptParams\n) =>\n [\n `/v1/voice-agents/${voiceAgentId}/prompt`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type GetVoiceAgentPromptQueryResult = NonNullable<\n Awaited<ReturnType<typeof getVoiceAgentPrompt>>\n>;\n\n/**\n * @summary Get voice agent prompt\n */\nexport const useGetVoiceAgentPrompt = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n params?: GetVoiceAgentPromptParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getVoiceAgentPrompt>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getGetVoiceAgentPromptKey(voiceAgentId, params) : null);\n const swrFn = () => getVoiceAgentPrompt(voiceAgentId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateVoiceAgentPromptUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/prompt`;\n};\n\n/**\n * Update the prompt for a voice agent. Internal use only.\n * @summary Update voice agent prompt\n */\nexport const updateVoiceAgentPrompt = async (\n voiceAgentId: string,\n updateVoiceAgentPromptBody?: UpdateVoiceAgentPromptBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateVoiceAgentPromptEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateVoiceAgentPromptEnvelope>(\n getUpdateVoiceAgentPromptUrl(voiceAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateVoiceAgentPromptBody),\n }\n );\n};\n\nexport const getUpdateVoiceAgentPromptMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateVoiceAgentPromptBody | undefined }) => {\n return updateVoiceAgentPrompt(voiceAgentId, arg, options);\n };\n};\nexport const getUpdateVoiceAgentPromptMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/prompt`] as const;\n\nexport type UpdateVoiceAgentPromptMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateVoiceAgentPrompt>>\n>;\n\n/**\n * @summary Update voice agent prompt\n */\nexport const useUpdateVoiceAgentPrompt = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateVoiceAgentPrompt>>,\n TError,\n Key,\n UpdateVoiceAgentPromptBody | undefined,\n Awaited<ReturnType<typeof updateVoiceAgentPrompt>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateVoiceAgentPromptMutationKey(voiceAgentId);\n const swrFn = getUpdateVoiceAgentPromptMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateVoiceAgentModelsUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/models`;\n};\n\n/**\n * Update the LLM, TTS, and STT model configuration for a voice agent.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `PATCH /v1/agents/{id}/models`\n * @summary Update voice agent models\n */\nexport const updateVoiceAgentModels = async (\n voiceAgentId: string,\n updateVoiceAgentModelsBody?: UpdateVoiceAgentModelsBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateVoiceAgentModelsEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateVoiceAgentModelsEnvelope>(\n getUpdateVoiceAgentModelsUrl(voiceAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateVoiceAgentModelsBody),\n }\n );\n};\n\nexport const getUpdateVoiceAgentModelsMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateVoiceAgentModelsBody | undefined }) => {\n return updateVoiceAgentModels(voiceAgentId, arg, options);\n };\n};\nexport const getUpdateVoiceAgentModelsMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/models`] as const;\n\nexport type UpdateVoiceAgentModelsMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateVoiceAgentModels>>\n>;\n\n/**\n * @summary Update voice agent models\n */\nexport const useUpdateVoiceAgentModels = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateVoiceAgentModels>>,\n TError,\n Key,\n UpdateVoiceAgentModelsBody | undefined,\n Awaited<ReturnType<typeof updateVoiceAgentModels>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateVoiceAgentModelsMutationKey(voiceAgentId);\n const swrFn = getUpdateVoiceAgentModelsMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateCallControlsUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/call-controls`;\n};\n\n/**\n * Update call control settings for a voice agent.\n *\n * Configure whether the voice agent supports dial pad input, can end calls, and set a transfer phone number.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `PUT /v1/agents/{id}/call-controls`\n * @summary Update voice agent call controls\n */\nexport const updateCallControls = async (\n voiceAgentId: string,\n updateCallControlsBody?: UpdateCallControlsBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateCallControlsEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateCallControlsEnvelope>(\n getUpdateCallControlsUrl(voiceAgentId),\n {\n ...options,\n method: \"PUT\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateCallControlsBody),\n }\n );\n};\n\nexport const getUpdateCallControlsMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateCallControlsBody | undefined }) => {\n return updateCallControls(voiceAgentId, arg, options);\n };\n};\nexport const getUpdateCallControlsMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/call-controls`] as const;\n\nexport type UpdateCallControlsMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateCallControls>>\n>;\n\n/**\n * @summary Update voice agent call controls\n */\nexport const useUpdateCallControls = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateCallControls>>,\n TError,\n Key,\n UpdateCallControlsBody | undefined,\n Awaited<ReturnType<typeof updateCallControls>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateCallControlsMutationKey(voiceAgentId);\n const swrFn = getUpdateCallControlsMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateAgentWebhookBody,\n CreateAgentWebhookEnvelope,\n CreateExtractorWebhookBody,\n CreateExtractorWebhookEnvelope,\n CreateInboxWebhookBody,\n CreateInboxWebhookEnvelope,\n CreateNotificationWebhookBody,\n CreateNotificationWebhookEnvelope,\n CreateWorkerWebhookBody,\n CreateWorkerWebhookEnvelope,\n DeleteWebhookEnvelope,\n ErrorResponse,\n GetWebhookEnvelope,\n ListAgentWebhooksEnvelope,\n ListAgentWebhooksParams,\n ListInboxWebhooksEnvelope,\n ListInboxWebhooksParams,\n ListNotificationWebhooksEnvelope,\n ListNotificationWebhooksParams,\n ListWebhookDeliveriesEnvelope,\n ListWebhookDeliveriesParams,\n ListWebhooksEnvelope,\n ListWebhooksParams,\n ListWorkerWebhooksEnvelope,\n ListWorkerWebhooksParams,\n TestWebhookBody,\n TestWebhookEnvelope,\n UpdateWebhookBody,\n UpdateWebhookEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateWorkerWebhookUrl = (workerId: string) => {\n return `/v1/workers/${workerId}/webhooks`;\n};\n\n/**\n * Create a webhook that fires when events occur for the specified worker.\n * @summary Create worker webhook\n */\nexport const createWorkerWebhook = async (\n workerId: string,\n createWorkerWebhookBody?: CreateWorkerWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateWorkerWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateWorkerWebhookEnvelope>(\n getCreateWorkerWebhookUrl(workerId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createWorkerWebhookBody),\n }\n );\n};\n\nexport const getCreateWorkerWebhookMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerWebhookBody | undefined }) => {\n return createWorkerWebhook(workerId, arg, options);\n };\n};\nexport const getCreateWorkerWebhookMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}/webhooks`] as const;\n\nexport type CreateWorkerWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createWorkerWebhook>>\n>;\n\n/**\n * @summary Create worker webhook\n */\nexport const useCreateWorkerWebhook = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createWorkerWebhook>>,\n TError,\n Key,\n CreateWorkerWebhookBody | undefined,\n Awaited<ReturnType<typeof createWorkerWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateWorkerWebhookMutationKey(workerId);\n const swrFn = getCreateWorkerWebhookMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkerWebhooksUrl = (\n workerId: string,\n params?: ListWorkerWebhooksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers/${workerId}/webhooks?${stringifiedParams}`\n : `/v1/workers/${workerId}/webhooks`;\n};\n\n/**\n * List all webhooks configured for a specific worker.\n * @summary List worker webhooks\n */\nexport const listWorkerWebhooks = async (\n workerId: string,\n params?: ListWorkerWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerWebhooksEnvelope> => {\n return customFetch<ListWorkerWebhooksEnvelope>(\n getListWorkerWebhooksUrl(workerId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListWorkerWebhooksKey = (\n workerId: string,\n params?: ListWorkerWebhooksParams\n) => [`/v1/workers/${workerId}/webhooks`, ...(params ? [params] : [])] as const;\n\nexport type ListWorkerWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerWebhooks>>\n>;\n\n/**\n * @summary List worker webhooks\n */\nexport const useListWorkerWebhooks = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n params?: ListWorkerWebhooksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerWebhooks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkerWebhooksKey(workerId, params) : null));\n const swrFn = () => listWorkerWebhooks(workerId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateAgentWebhookUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/webhooks`;\n};\n\n/**\n * Create a webhook that fires when events occur for the specified voice agent.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/agents/{id}/webhooks`\n * @summary Create voice agent webhook\n */\nexport const createAgentWebhook = async (\n voiceAgentId: string,\n createAgentWebhookBody?: CreateAgentWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateAgentWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateAgentWebhookEnvelope>(\n getCreateAgentWebhookUrl(voiceAgentId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createAgentWebhookBody),\n }\n );\n};\n\nexport const getCreateAgentWebhookMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateAgentWebhookBody | undefined }) => {\n return createAgentWebhook(voiceAgentId, arg, options);\n };\n};\nexport const getCreateAgentWebhookMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/webhooks`] as const;\n\nexport type CreateAgentWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createAgentWebhook>>\n>;\n\n/**\n * @summary Create voice agent webhook\n */\nexport const useCreateAgentWebhook = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createAgentWebhook>>,\n TError,\n Key,\n CreateAgentWebhookBody | undefined,\n Awaited<ReturnType<typeof createAgentWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateAgentWebhookMutationKey(voiceAgentId);\n const swrFn = getCreateAgentWebhookMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListAgentWebhooksUrl = (\n voiceAgentId: string,\n params?: ListAgentWebhooksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/voice-agents/${voiceAgentId}/webhooks?${stringifiedParams}`\n : `/v1/voice-agents/${voiceAgentId}/webhooks`;\n};\n\n/**\n * List all webhooks configured for a specific voice agent.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/agents/{id}/webhooks`\n * @summary List voice agent webhooks\n */\nexport const listAgentWebhooks = async (\n voiceAgentId: string,\n params?: ListAgentWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListAgentWebhooksEnvelope> => {\n return customFetch<ListAgentWebhooksEnvelope>(\n getListAgentWebhooksUrl(voiceAgentId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListAgentWebhooksKey = (\n voiceAgentId: string,\n params?: ListAgentWebhooksParams\n) =>\n [\n `/v1/voice-agents/${voiceAgentId}/webhooks`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type ListAgentWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listAgentWebhooks>>\n>;\n\n/**\n * @summary List voice agent webhooks\n */\nexport const useListAgentWebhooks = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n params?: ListAgentWebhooksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listAgentWebhooks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n voiceAgentId !== null &&\n voiceAgentId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListAgentWebhooksKey(voiceAgentId, params) : null));\n const swrFn = () => listAgentWebhooks(voiceAgentId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateInboxWebhookUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}/webhooks`;\n};\n\n/**\n * Create a webhook that fires when events occur for the specified inbox.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `POST /v1/email-agents/{id}/webhooks`\n * @summary Create inbox webhook\n */\nexport const createInboxWebhook = async (\n inboxId: string,\n createInboxWebhookBody?: CreateInboxWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateInboxWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateInboxWebhookEnvelope>(\n getCreateInboxWebhookUrl(inboxId),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createInboxWebhookBody),\n }\n );\n};\n\nexport const getCreateInboxWebhookMutationFetcher = (\n inboxId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateInboxWebhookBody | undefined }) => {\n return createInboxWebhook(inboxId, arg, options);\n };\n};\nexport const getCreateInboxWebhookMutationKey = (inboxId: string) =>\n [`/v1/inboxes/${inboxId}/webhooks`] as const;\n\nexport type CreateInboxWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createInboxWebhook>>\n>;\n\n/**\n * @summary Create inbox webhook\n */\nexport const useCreateInboxWebhook = <TError = ErrorType<ErrorResponse>>(\n inboxId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createInboxWebhook>>,\n TError,\n Key,\n CreateInboxWebhookBody | undefined,\n Awaited<ReturnType<typeof createInboxWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateInboxWebhookMutationKey(inboxId);\n const swrFn = getCreateInboxWebhookMutationFetcher(inboxId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListInboxWebhooksUrl = (\n inboxId: string,\n params?: ListInboxWebhooksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/inboxes/${inboxId}/webhooks?${stringifiedParams}`\n : `/v1/inboxes/${inboxId}/webhooks`;\n};\n\n/**\n * List all webhooks configured for a specific inbox.\n *\n * For compatibility this endpoint is also available using the following (deprecated) paths:\n * `GET /v1/email-agents/{id}/webhooks`\n * @summary List inbox webhooks\n */\nexport const listInboxWebhooks = async (\n inboxId: string,\n params?: ListInboxWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListInboxWebhooksEnvelope> => {\n return customFetch<ListInboxWebhooksEnvelope>(\n getListInboxWebhooksUrl(inboxId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListInboxWebhooksKey = (\n inboxId: string,\n params?: ListInboxWebhooksParams\n) => [`/v1/inboxes/${inboxId}/webhooks`, ...(params ? [params] : [])] as const;\n\nexport type ListInboxWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listInboxWebhooks>>\n>;\n\n/**\n * @summary List inbox webhooks\n */\nexport const useListInboxWebhooks = <TError = ErrorType<ErrorResponse>>(\n inboxId: string,\n params?: ListInboxWebhooksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listInboxWebhooks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && inboxId !== null && inboxId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListInboxWebhooksKey(inboxId, params) : null));\n const swrFn = () => listInboxWebhooks(inboxId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateExtractorWebhookUrl = (id: string) => {\n return `/v1/extractors/${id}/webhooks`;\n};\n\n/**\n * Create a webhook that fires when extraction events occur for the specified extractor.\n * @summary Create extractor webhook\n */\nexport const createExtractorWebhook = async (\n id: string,\n createExtractorWebhookBody?: CreateExtractorWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateExtractorWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateExtractorWebhookEnvelope>(\n getCreateExtractorWebhookUrl(id),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createExtractorWebhookBody),\n }\n );\n};\n\nexport const getCreateExtractorWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorWebhookBody | undefined }) => {\n return createExtractorWebhook(id, arg, options);\n };\n};\nexport const getCreateExtractorWebhookMutationKey = (id: string) =>\n [`/v1/extractors/${id}/webhooks`] as const;\n\nexport type CreateExtractorWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createExtractorWebhook>>\n>;\n\n/**\n * @summary Create extractor webhook\n */\nexport const useCreateExtractorWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createExtractorWebhook>>,\n TError,\n Key,\n CreateExtractorWebhookBody | undefined,\n Awaited<ReturnType<typeof createExtractorWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateExtractorWebhookMutationKey(id);\n const swrFn = getCreateExtractorWebhookMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWebhooksUrl = (id: string, params?: ListWebhooksParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractors/${id}/webhooks?${stringifiedParams}`\n : `/v1/extractors/${id}/webhooks`;\n};\n\n/**\n * List all webhooks configured for a specific extractor.\n * @summary List extractor webhooks\n */\nexport const listWebhooks = async (\n id: string,\n params?: ListWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWebhooksEnvelope> => {\n return customFetch<ListWebhooksEnvelope>(getListWebhooksUrl(id, params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWebhooksKey = (id: string, params?: ListWebhooksParams) =>\n [`/v1/extractors/${id}/webhooks`, ...(params ? [params] : [])] as const;\n\nexport type ListWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWebhooks>>\n>;\n\n/**\n * @summary List extractor webhooks\n */\nexport const useListWebhooks = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListWebhooksParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listWebhooks>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWebhooksKey(id, params) : null));\n const swrFn = () => listWebhooks(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateNotificationWebhookUrl = () => {\n return `/v1/notifications/webhooks`;\n};\n\n/**\n * Create a webhook that fires whenever a notification is raised for the organization.\n *\n * Notifications belong to the organization rather than to a resource, so this webhook is not attached to anything: its `scope` is `{ \"notifications\": true }` and it receives every notification the organization raises. Each delivery carries the notification's `title` and `body` — the same display text `GET /v1/notifications` returns — alongside the structured `data` it points at.\n *\n * Notifications are not environment-specific, so every delivery is `live`. A webhook that names only `test` receives nothing.\n * @summary Create notification webhook\n */\nexport const createNotificationWebhook = async (\n createNotificationWebhookBody?: CreateNotificationWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateNotificationWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateNotificationWebhookEnvelope>(\n getCreateNotificationWebhookUrl(),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createNotificationWebhookBody),\n }\n );\n};\n\nexport const getCreateNotificationWebhookMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (\n _: Key,\n { arg }: { arg: CreateNotificationWebhookBody | undefined }\n ) => {\n return createNotificationWebhook(arg, options);\n };\n};\nexport const getCreateNotificationWebhookMutationKey = () =>\n [`/v1/notifications/webhooks`] as const;\n\nexport type CreateNotificationWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof createNotificationWebhook>>\n>;\n\n/**\n * @summary Create notification webhook\n */\nexport const useCreateNotificationWebhook = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createNotificationWebhook>>,\n TError,\n Key,\n CreateNotificationWebhookBody | undefined,\n Awaited<ReturnType<typeof createNotificationWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCreateNotificationWebhookMutationKey();\n const swrFn = getCreateNotificationWebhookMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListNotificationWebhooksUrl = (\n params?: ListNotificationWebhooksParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/notifications/webhooks?${stringifiedParams}`\n : `/v1/notifications/webhooks`;\n};\n\n/**\n * List the webhooks that receive the organization's notifications.\n * @summary List notification webhooks\n */\nexport const listNotificationWebhooks = async (\n params?: ListNotificationWebhooksParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListNotificationWebhooksEnvelope> => {\n return customFetch<ListNotificationWebhooksEnvelope>(\n getListNotificationWebhooksUrl(params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListNotificationWebhooksKey = (\n params?: ListNotificationWebhooksParams\n) => [`/v1/notifications/webhooks`, ...(params ? [params] : [])] as const;\n\nexport type ListNotificationWebhooksQueryResult = NonNullable<\n Awaited<ReturnType<typeof listNotificationWebhooks>>\n>;\n\n/**\n * @summary List notification webhooks\n */\nexport const useListNotificationWebhooks = <TError = ErrorType<ErrorResponse>>(\n params?: ListNotificationWebhooksParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listNotificationWebhooks>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListNotificationWebhooksKey(params) : null));\n const swrFn = () => listNotificationWebhooks(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\n/**\n * Permanently delete a webhook. This action is irreversible.\n * @summary Delete webhook\n */\nexport const deleteWebhook = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteWebhookEnvelope> => {\n return customFetch<DeleteWebhookEnvelope>(getDeleteWebhookUrl(id), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteWebhook(id, options);\n };\n};\nexport const getDeleteWebhookMutationKey = (id: string) =>\n [`/v1/webhooks/${id}`] as const;\n\nexport type DeleteWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteWebhook>>\n>;\n\n/**\n * @summary Delete webhook\n */\nexport const useDeleteWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteWebhook>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteWebhookMutationKey(id);\n const swrFn = getDeleteWebhookMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\n/**\n * Retrieve a single webhook by ID. The authentication header value is never exposed — only `has_auth` indicates whether authentication is configured.\n * @summary Get webhook\n */\nexport const getWebhook = async (\n id: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWebhookEnvelope> => {\n return customFetch<GetWebhookEnvelope>(getGetWebhookUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetWebhookKey = (id: string) => [`/v1/webhooks/${id}`] as const;\n\nexport type GetWebhookQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWebhook>>\n>;\n\n/**\n * @summary Get webhook\n */\nexport const useGetWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getWebhook>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetWebhookKey(id) : null));\n const swrFn = () => getWebhook(id, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\n/**\n * Update a webhook's name, destination, environments, enabled state, or authentication. Omitted fields are left unchanged, and at least one must be provided.\n * @summary Update webhook\n */\nexport const updateWebhook = async (\n id: string,\n updateWebhookBody?: UpdateWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateWebhookEnvelope>(getUpdateWebhookUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateWebhookBody),\n });\n};\n\nexport const getUpdateWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateWebhookBody | undefined }) => {\n return updateWebhook(id, arg, options);\n };\n};\nexport const getUpdateWebhookMutationKey = (id: string) =>\n [`/v1/webhooks/${id}`] as const;\n\nexport type UpdateWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateWebhook>>\n>;\n\n/**\n * @summary Update webhook\n */\nexport const useUpdateWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateWebhook>>,\n TError,\n Key,\n UpdateWebhookBody | undefined,\n Awaited<ReturnType<typeof updateWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateWebhookMutationKey(id);\n const swrFn = getUpdateWebhookMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWebhookDeliveriesUrl = (\n id: string,\n params?: ListWebhookDeliveriesParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/webhooks/${id}/deliveries?${stringifiedParams}`\n : `/v1/webhooks/${id}/deliveries`;\n};\n\n/**\n * List delivery attempts for a specific webhook, with pagination and sorting. Useful for debugging webhook issues.\n * @summary List webhook deliveries\n */\nexport const listWebhookDeliveries = async (\n id: string,\n params?: ListWebhookDeliveriesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWebhookDeliveriesEnvelope> => {\n return customFetch<ListWebhookDeliveriesEnvelope>(\n getListWebhookDeliveriesUrl(id, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListWebhookDeliveriesKey = (\n id: string,\n params?: ListWebhookDeliveriesParams\n) => [`/v1/webhooks/${id}/deliveries`, ...(params ? [params] : [])] as const;\n\nexport type ListWebhookDeliveriesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWebhookDeliveries>>\n>;\n\n/**\n * @summary List webhook deliveries\n */\nexport const useListWebhookDeliveries = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListWebhookDeliveriesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWebhookDeliveries>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false && id !== null && id !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWebhookDeliveriesKey(id, params) : null));\n const swrFn = () => listWebhookDeliveries(id, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getTestWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}/test`;\n};\n\n/**\n * Send a test event to a webhook endpoint. Returns the HTTP status code, response time, and any errors. The request is rejected with a 400 if the webhook does not target the given environment, since a successful ping would say nothing about events it will never receive.\n * @summary Test webhook\n */\nexport const testWebhook = async (\n id: string,\n testWebhookBody?: TestWebhookBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<TestWebhookEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<TestWebhookEnvelope>(getTestWebhookUrl(id), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(testWebhookBody),\n });\n};\n\nexport const getTestWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: TestWebhookBody | undefined }) => {\n return testWebhook(id, arg, options);\n };\n};\nexport const getTestWebhookMutationKey = (id: string) =>\n [`/v1/webhooks/${id}/test`] as const;\n\nexport type TestWebhookMutationResult = NonNullable<\n Awaited<ReturnType<typeof testWebhook>>\n>;\n\n/**\n * @summary Test webhook\n */\nexport const useTestWebhook = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof testWebhook>>,\n TError,\n Key,\n TestWebhookBody | undefined,\n Awaited<ReturnType<typeof testWebhook>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getTestWebhookMutationKey(id);\n const swrFn = getTestWebhookMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CancelWorkerRunEnvelope,\n CreateWorkerRunBody,\n CreateWorkerRunEnvelope,\n ErrorResponse,\n GetWorkerRunEnvelope,\n ListWorkerRunMessagesEnvelope,\n ListWorkerRunMessagesParams,\n ListWorkerRunsEnvelope,\n ListWorkerRunsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getListWorkerRunsUrl = (params?: ListWorkerRunsParams) => {\n const normalizedParams = new URLSearchParams();\n const deepObjectEntries: string[] = [];\n\n Object.entries(params || {}).forEach(([key, value]) => {\n const deepObjectParameters = [\"scope\"];\n\n if (\n typeof value === \"object\" &&\n value !== null &&\n !Array.isArray(value) &&\n deepObjectParameters.includes(key)\n ) {\n Object.entries(value).forEach(([subKey, subValue]) => {\n if (subValue !== undefined) {\n deepObjectEntries.push(\n encodeURIComponent(key) +\n \"[\" +\n encodeURIComponent(subKey) +\n \"]=\" +\n (subValue === null\n ? \"null\"\n : encodeURIComponent(String(subValue)))\n );\n }\n });\n return;\n }\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = [\n normalizedParams.toString(),\n deepObjectEntries.join(\"&\"),\n ]\n .filter(Boolean)\n .join(\"&\");\n\n return stringifiedParams.length > 0\n ? `/v1/worker-runs?${stringifiedParams}`\n : `/v1/worker-runs`;\n};\n\n/**\n * List all worker runs with pagination, filtering, and sorting.\n *\n * **Scope Filtering:**\n *\n * Use bracket notation to filter by scope keys:\n * - `scope[call_id]=abc-123`\n * - `scope[email_id]=xyz-456`\n *\n * Multiple scope filters can be combined (AND logic).\n * @summary List worker runs\n */\nexport const listWorkerRuns = async (\n params?: ListWorkerRunsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerRunsEnvelope> => {\n return customFetch<ListWorkerRunsEnvelope>(getListWorkerRunsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWorkerRunsKey = (params?: ListWorkerRunsParams) =>\n [`/v1/worker-runs`, ...(params ? [params] : [])] as const;\n\nexport type ListWorkerRunsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerRuns>>\n>;\n\n/**\n * @summary List worker runs\n */\nexport const useListWorkerRuns = <TError = ErrorType<ErrorResponse>>(\n params?: ListWorkerRunsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerRuns>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkerRunsKey(params) : null));\n const swrFn = () => listWorkerRuns(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCreateWorkerRunUrl = () => {\n return `/v1/worker-runs`;\n};\n\n/**\n * Create a new worker run for the specified worker.\n *\n * Provide a `scope` object with at least one key to define which artifacts the worker should process (e.g. `{ \"claim_id\": \"abc-123\" }`). The run stays `pending` until those artifacts are ready.\n *\n * Pass `null` to run the worker without any artifacts — the run is queued immediately. An empty object is rejected.\n * @summary Create worker run\n */\nexport const createWorkerRun = async (\n createWorkerRunBody?: CreateWorkerRunBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateWorkerRunEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateWorkerRunEnvelope>(getCreateWorkerRunUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createWorkerRunBody),\n });\n};\n\nexport const getCreateWorkerRunMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerRunBody | undefined }) => {\n return createWorkerRun(arg, options);\n };\n};\nexport const getCreateWorkerRunMutationKey = () => [`/v1/worker-runs`] as const;\n\nexport type CreateWorkerRunMutationResult = NonNullable<\n Awaited<ReturnType<typeof createWorkerRun>>\n>;\n\n/**\n * @summary Create worker run\n */\nexport const useCreateWorkerRun = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createWorkerRun>>,\n TError,\n Key,\n CreateWorkerRunBody | undefined,\n Awaited<ReturnType<typeof createWorkerRun>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateWorkerRunMutationKey();\n const swrFn = getCreateWorkerRunMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerRunUrl = (workerRunId: string) => {\n return `/v1/worker-runs/${workerRunId}`;\n};\n\n/**\n * Retrieve detailed information about a specific worker run, including its status, timing, and errors.\n * @summary Get worker run\n */\nexport const getWorkerRun = async (\n workerRunId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerRunEnvelope> => {\n return customFetch<GetWorkerRunEnvelope>(getGetWorkerRunUrl(workerRunId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetWorkerRunKey = (workerRunId: string) =>\n [`/v1/worker-runs/${workerRunId}`] as const;\n\nexport type GetWorkerRunQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorkerRun>>\n>;\n\n/**\n * @summary Get worker run\n */\nexport const useGetWorkerRun = <TError = ErrorType<ErrorResponse>>(\n workerRunId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getWorkerRun>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerRunId !== null &&\n workerRunId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetWorkerRunKey(workerRunId) : null));\n const swrFn = () => getWorkerRun(workerRunId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkerRunMessagesUrl = (\n workerRunId: string,\n params?: ListWorkerRunMessagesParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/worker-runs/${workerRunId}/messages?${stringifiedParams}`\n : `/v1/worker-runs/${workerRunId}/messages`;\n};\n\n/**\n * Retrieve messages emitted during a worker run, ordered by emission time. Supports cursor-style pagination via `after` and `count`.\n * @summary List worker run messages\n */\nexport const listWorkerRunMessages = async (\n workerRunId: string,\n params?: ListWorkerRunMessagesParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerRunMessagesEnvelope> => {\n return customFetch<ListWorkerRunMessagesEnvelope>(\n getListWorkerRunMessagesUrl(workerRunId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListWorkerRunMessagesKey = (\n workerRunId: string,\n params?: ListWorkerRunMessagesParams\n) =>\n [\n `/v1/worker-runs/${workerRunId}/messages`,\n ...(params ? [params] : []),\n ] as const;\n\nexport type ListWorkerRunMessagesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerRunMessages>>\n>;\n\n/**\n * @summary List worker run messages\n */\nexport const useListWorkerRunMessages = <TError = ErrorType<ErrorResponse>>(\n workerRunId: string,\n params?: ListWorkerRunMessagesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerRunMessages>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerRunId !== null &&\n workerRunId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled ? getListWorkerRunMessagesKey(workerRunId, params) : null);\n const swrFn = () =>\n listWorkerRunMessages(workerRunId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getCancelWorkerRunUrl = (workerRunId: string) => {\n return `/v1/worker-runs/${workerRunId}/cancel`;\n};\n\n/**\n * Cancel a worker run. For in_progress runs, the underlying E2B sandbox is terminated when possible. Pending and queued runs are simply marked canceled. Runs that are starting are still being handed their context and cannot be interrupted, so they cannot be canceled until they reach in_progress. Runs in terminal states (completed, failed) cannot be canceled. Already-canceled runs are returned without side effects.\n * @summary Cancel a worker run\n */\nexport const cancelWorkerRun = async (\n workerRunId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CancelWorkerRunEnvelope> => {\n return customFetch<CancelWorkerRunEnvelope>(\n getCancelWorkerRunUrl(workerRunId),\n {\n ...options,\n method: \"POST\",\n }\n );\n};\n\nexport const getCancelWorkerRunMutationFetcher = (\n workerRunId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return cancelWorkerRun(workerRunId, options);\n };\n};\nexport const getCancelWorkerRunMutationKey = (workerRunId: string) =>\n [`/v1/worker-runs/${workerRunId}/cancel`] as const;\n\nexport type CancelWorkerRunMutationResult = NonNullable<\n Awaited<ReturnType<typeof cancelWorkerRun>>\n>;\n\n/**\n * @summary Cancel a worker run\n */\nexport const useCancelWorkerRun = <TError = ErrorType<ErrorResponse>>(\n workerRunId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof cancelWorkerRun>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof cancelWorkerRun>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getCancelWorkerRunMutationKey(workerRunId);\n const swrFn = getCancelWorkerRunMutationFetcher(workerRunId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport type { Key } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n ErrorResponse,\n NotifyAdminBody,\n NotifyAdminEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getNotifyAdminUrl = () => {\n return `/worker/v1/notifications`;\n};\n\n/**\n * Report a problem to the people who run this organization.\n *\n * Use this for something a human has to resolve — a login that no longer works, a document you cannot read, a system that will not let you in, instructions that contradict what you found. The report goes to the organization's notifications; nobody sees it while the run is happening, so it does not unblock you now. Carry on with what you can still do, or stop, and say in your final report that you raised it.\n *\n * Do not use it for progress updates or for anything you can work around yourself.\n * @summary Notify an admin\n */\nexport const notifyAdmin = async (\n notifyAdminBody?: NotifyAdminBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<NotifyAdminEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<NotifyAdminEnvelope>(getNotifyAdminUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(notifyAdminBody),\n });\n};\n\nexport const getNotifyAdminMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: NotifyAdminBody | undefined }) => {\n return notifyAdmin(arg, options);\n };\n};\nexport const getNotifyAdminMutationKey = () =>\n [`/worker/v1/notifications`] as const;\n\nexport type NotifyAdminMutationResult = NonNullable<\n Awaited<ReturnType<typeof notifyAdmin>>\n>;\n\n/**\n * @summary Notify an admin\n */\nexport const useNotifyAdmin = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof notifyAdmin>>,\n TError,\n Key,\n NotifyAdminBody | undefined,\n Awaited<ReturnType<typeof notifyAdmin>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getNotifyAdminMutationKey();\n const swrFn = getNotifyAdminMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\nimport useSwr from \"swr\";\nimport type { Arguments, Key, SWRConfiguration } from \"swr\";\n\nimport useSWRMutation from \"swr/mutation\";\nimport type { SWRMutationConfiguration } from \"swr/mutation\";\n\nimport type {\n CreateWorkerBody,\n CreateWorkerEnvelope,\n DeleteWorkerEnvelope,\n ErrorResponse,\n GetWorkerEnvelope,\n GetWorkerPromptEnvelope,\n GetWorkerPromptParams,\n GetWorkerVersionChangeSummaryEnvelope,\n GetWorkerVersionEnvelope,\n ListWorkerModelsEnvelope,\n ListWorkerVersionsEnvelope,\n ListWorkerVersionsParams,\n ListWorkersEnvelope,\n ListWorkersParams,\n PromoteWorkerVersionBody,\n PromoteWorkerVersionEnvelope,\n UpdateWorkerBody,\n UpdateWorkerEnvelope,\n UpdateWorkerMcpsBody,\n UpdateWorkerMcpsEnvelope,\n UpdateWorkerPromptBody,\n UpdateWorkerPromptEnvelope,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\ntype Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\nexport const getCreateWorkerUrl = () => {\n return `/v1/workers`;\n};\n\n/**\n * Create a new worker with a name and prompt.\n * @summary Create worker\n */\nexport const createWorker = async (\n createWorkerBody?: CreateWorkerBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<CreateWorkerEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<CreateWorkerEnvelope>(getCreateWorkerUrl(), {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(createWorkerBody),\n });\n};\n\nexport const getCreateWorkerMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerBody | undefined }) => {\n return createWorker(arg, options);\n };\n};\nexport const getCreateWorkerMutationKey = () => [`/v1/workers`] as const;\n\nexport type CreateWorkerMutationResult = NonNullable<\n Awaited<ReturnType<typeof createWorker>>\n>;\n\n/**\n * @summary Create worker\n */\nexport const useCreateWorker = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createWorker>>,\n TError,\n Key,\n CreateWorkerBody | undefined,\n Awaited<ReturnType<typeof createWorker>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateWorkerMutationKey();\n const swrFn = getCreateWorkerMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkersUrl = (params?: ListWorkersParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers?${stringifiedParams}`\n : `/v1/workers`;\n};\n\n/**\n * List all workers with pagination, filtering, and sorting.\n *\n * Filter by name using the `name` query parameter.\n * @summary List workers\n */\nexport const listWorkers = async (\n params?: ListWorkersParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkersEnvelope> => {\n return customFetch<ListWorkersEnvelope>(getListWorkersUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWorkersKey = (params?: ListWorkersParams) =>\n [`/v1/workers`, ...(params ? [params] : [])] as const;\n\nexport type ListWorkersQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkers>>\n>;\n\n/**\n * @summary List workers\n */\nexport const useListWorkers = <TError = ErrorType<ErrorResponse>>(\n params?: ListWorkersParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listWorkers>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkersKey(params) : null));\n const swrFn = () => listWorkers(params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerUrl = (workerId: string) => {\n return `/v1/workers/${workerId}`;\n};\n\n/**\n * Retrieve a single worker by ID.\n * @summary Get worker\n */\nexport const getWorker = async (\n workerId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerEnvelope> => {\n return customFetch<GetWorkerEnvelope>(getGetWorkerUrl(workerId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetWorkerKey = (workerId: string) =>\n [`/v1/workers/${workerId}`] as const;\n\nexport type GetWorkerQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorker>>\n>;\n\n/**\n * @summary Get worker\n */\nexport const useGetWorker = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof getWorker>>, TError> & {\n swrKey?: Key;\n enabled?: boolean;\n };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetWorkerKey(workerId) : null));\n const swrFn = () => getWorker(workerId, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getDeleteWorkerUrl = (workerId: string) => {\n return `/v1/workers/${workerId}`;\n};\n\n/**\n * Delete a worker. The worker is hidden from all reads; its run history is preserved.\n * @summary Delete worker\n */\nexport const deleteWorker = async (\n workerId: string,\n options?: Parameters<typeof customFetch>[1]\n): Promise<DeleteWorkerEnvelope> => {\n return customFetch<DeleteWorkerEnvelope>(getDeleteWorkerUrl(workerId), {\n ...options,\n method: \"DELETE\",\n });\n};\n\nexport const getDeleteWorkerMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return deleteWorker(workerId, options);\n };\n};\nexport const getDeleteWorkerMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}`] as const;\n\nexport type DeleteWorkerMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteWorker>>\n>;\n\n/**\n * @summary Delete worker\n */\nexport const useDeleteWorker = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteWorker>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof deleteWorker>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getDeleteWorkerMutationKey(workerId);\n const swrFn = getDeleteWorkerMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateWorkerUrl = (workerId: string) => {\n return `/v1/workers/${workerId}`;\n};\n\n/**\n * Update the configuration of a worker, including the attached tool set.\n * @summary Update worker\n */\nexport const updateWorker = async (\n workerId: string,\n updateWorkerBody?: UpdateWorkerBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateWorkerEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateWorkerEnvelope>(getUpdateWorkerUrl(workerId), {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateWorkerBody),\n });\n};\n\nexport const getUpdateWorkerMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateWorkerBody | undefined }) => {\n return updateWorker(workerId, arg, options);\n };\n};\nexport const getUpdateWorkerMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}`] as const;\n\nexport type UpdateWorkerMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateWorker>>\n>;\n\n/**\n * @summary Update worker\n */\nexport const useUpdateWorker = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateWorker>>,\n TError,\n Key,\n UpdateWorkerBody | undefined,\n Awaited<ReturnType<typeof updateWorker>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateWorkerMutationKey(workerId);\n const swrFn = getUpdateWorkerMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerPromptUrl = (\n workerId: string,\n params?: GetWorkerPromptParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers/${workerId}/prompt?${stringifiedParams}`\n : `/v1/workers/${workerId}/prompt`;\n};\n\n/**\n * Retrieve the prompt for a worker. Pass `version` to fetch the prompt snapshot at a specific config version; omit it to fetch the current prompt. Internal use only.\n * @summary Get worker prompt\n */\nexport const getWorkerPrompt = async (\n workerId: string,\n params?: GetWorkerPromptParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerPromptEnvelope> => {\n return customFetch<GetWorkerPromptEnvelope>(\n getGetWorkerPromptUrl(workerId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetWorkerPromptKey = (\n workerId: string,\n params?: GetWorkerPromptParams\n) => [`/v1/workers/${workerId}/prompt`, ...(params ? [params] : [])] as const;\n\nexport type GetWorkerPromptQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorkerPrompt>>\n>;\n\n/**\n * @summary Get worker prompt\n */\nexport const useGetWorkerPrompt = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n params?: GetWorkerPromptParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getWorkerPrompt>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetWorkerPromptKey(workerId, params) : null));\n const swrFn = () => getWorkerPrompt(workerId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateWorkerPromptUrl = (workerId: string) => {\n return `/v1/workers/${workerId}/prompt`;\n};\n\n/**\n * Update the prompt for a worker. Internal use only.\n * @summary Update worker prompt\n */\nexport const updateWorkerPrompt = async (\n workerId: string,\n updateWorkerPromptBody?: UpdateWorkerPromptBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateWorkerPromptEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateWorkerPromptEnvelope>(\n getUpdateWorkerPromptUrl(workerId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateWorkerPromptBody),\n }\n );\n};\n\nexport const getUpdateWorkerPromptMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateWorkerPromptBody | undefined }) => {\n return updateWorkerPrompt(workerId, arg, options);\n };\n};\nexport const getUpdateWorkerPromptMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}/prompt`] as const;\n\nexport type UpdateWorkerPromptMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateWorkerPrompt>>\n>;\n\n/**\n * @summary Update worker prompt\n */\nexport const useUpdateWorkerPrompt = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateWorkerPrompt>>,\n TError,\n Key,\n UpdateWorkerPromptBody | undefined,\n Awaited<ReturnType<typeof updateWorkerPrompt>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateWorkerPromptMutationKey(workerId);\n const swrFn = getUpdateWorkerPromptMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkerModelsUrl = () => {\n return `/v1/worker-models`;\n};\n\n/**\n * List the LLM models that can be assigned to a worker via the `model` field on update.\n * @summary List available worker models\n */\nexport const listWorkerModels = async (\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerModelsEnvelope> => {\n return customFetch<ListWorkerModelsEnvelope>(getListWorkerModelsUrl(), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWorkerModelsKey = () => [`/v1/worker-models`] as const;\n\nexport type ListWorkerModelsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerModels>>\n>;\n\n/**\n * @summary List available worker models\n */\nexport const useListWorkerModels = <\n TError = ErrorType<ErrorResponse>,\n>(options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerModels>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled = swrOptions?.enabled !== false;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListWorkerModelsKey() : null));\n const swrFn = () => listWorkerModels(requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getUpdateWorkerMcpsUrl = (workerId: string) => {\n return `/v1/workers/${workerId}/mcps`;\n};\n\n/**\n * Replace the set of MCP servers a worker connects to. Pass an empty array to disconnect.\n * @summary Update worker MCP servers\n */\nexport const updateWorkerMcps = async (\n workerId: string,\n updateWorkerMcpsBody?: UpdateWorkerMcpsBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<UpdateWorkerMcpsEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<UpdateWorkerMcpsEnvelope>(\n getUpdateWorkerMcpsUrl(workerId),\n {\n ...options,\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(updateWorkerMcpsBody),\n }\n );\n};\n\nexport const getUpdateWorkerMcpsMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateWorkerMcpsBody | undefined }) => {\n return updateWorkerMcps(workerId, arg, options);\n };\n};\nexport const getUpdateWorkerMcpsMutationKey = (workerId: string) =>\n [`/v1/workers/${workerId}/mcps`] as const;\n\nexport type UpdateWorkerMcpsMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateWorkerMcps>>\n>;\n\n/**\n * @summary Update worker MCP servers\n */\nexport const useUpdateWorkerMcps = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateWorkerMcps>>,\n TError,\n Key,\n UpdateWorkerMcpsBody | undefined,\n Awaited<ReturnType<typeof updateWorkerMcps>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getUpdateWorkerMcpsMutationKey(workerId);\n const swrFn = getUpdateWorkerMcpsMutationFetcher(workerId, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getListWorkerVersionsUrl = (\n workerId: string,\n params?: ListWorkerVersionsParams\n) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : String(value));\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers/${workerId}/versions?${stringifiedParams}`\n : `/v1/workers/${workerId}/versions`;\n};\n\n/**\n * List all config versions for a worker, ordered by version (newest first by default).\n * @summary List worker versions\n */\nexport const listWorkerVersions = async (\n workerId: string,\n params?: ListWorkerVersionsParams,\n options?: Parameters<typeof customFetch>[1]\n): Promise<ListWorkerVersionsEnvelope> => {\n return customFetch<ListWorkerVersionsEnvelope>(\n getListWorkerVersionsUrl(workerId, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListWorkerVersionsKey = (\n workerId: string,\n params?: ListWorkerVersionsParams\n) => [`/v1/workers/${workerId}/versions`, ...(params ? [params] : [])] as const;\n\nexport type ListWorkerVersionsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listWorkerVersions>>\n>;\n\n/**\n * @summary List worker versions\n */\nexport const useListWorkerVersions = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n params?: ListWorkerVersionsParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listWorkerVersions>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkerVersionsKey(workerId, params) : null));\n const swrFn = () => listWorkerVersions(workerId, params, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerVersionUrl = (workerId: string, version: number) => {\n return `/v1/workers/${workerId}/versions/${version}`;\n};\n\n/**\n * Retrieve a single worker config version, including the worker's identity, the config snapshot at that version, and version-specific metadata. The prompt is served separately by the worker prompt endpoint.\n * @summary Get worker version\n */\nexport const getWorkerVersion = async (\n workerId: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerVersionEnvelope> => {\n return customFetch<GetWorkerVersionEnvelope>(\n getGetWorkerVersionUrl(workerId, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetWorkerVersionKey = (workerId: string, version: number) =>\n [`/v1/workers/${workerId}/versions/${version}`] as const;\n\nexport type GetWorkerVersionQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorkerVersion>>\n>;\n\n/**\n * @summary Get worker version\n */\nexport const useGetWorkerVersion = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getWorkerVersion>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetWorkerVersionKey(workerId, version) : null));\n const swrFn = () => getWorkerVersion(workerId, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getPromoteWorkerVersionUrl = (\n workerId: string,\n version: number\n) => {\n return `/v1/workers/${workerId}/versions/${version}/promote`;\n};\n\n/**\n * Select a worker configuration version for the live or test environment. This freezes the config snapshot only — the E2B template, attached tools and attached secrets are not versioned and always resolve to their current values.\n * @summary Promote worker version\n */\nexport const promoteWorkerVersion = async (\n workerId: string,\n version: number,\n promoteWorkerVersionBody?: PromoteWorkerVersionBody,\n options?: Parameters<typeof customFetch>[1]\n): Promise<PromoteWorkerVersionEnvelope> => {\n const getHeaders = (\n h?: NonNullable<RequestInit[\"headers\"]>\n ): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Array.isArray(h)) return Object.fromEntries(h);\n return h;\n };\n return customFetch<PromoteWorkerVersionEnvelope>(\n getPromoteWorkerVersionUrl(workerId, version),\n {\n ...options,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...getHeaders(options?.headers),\n },\n body: JSON.stringify(promoteWorkerVersionBody),\n }\n );\n};\n\nexport const getPromoteWorkerVersionMutationFetcher = (\n workerId: string,\n version: number,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: PromoteWorkerVersionBody | undefined }) => {\n return promoteWorkerVersion(workerId, version, arg, options);\n };\n};\nexport const getPromoteWorkerVersionMutationKey = (\n workerId: string,\n version: number\n) => [`/v1/workers/${workerId}/versions/${version}/promote`] as const;\n\nexport type PromoteWorkerVersionMutationResult = NonNullable<\n Awaited<ReturnType<typeof promoteWorkerVersion>>\n>;\n\n/**\n * @summary Promote worker version\n */\nexport const usePromoteWorkerVersion = <TError = ErrorType<ErrorResponse>>(\n workerId: string,\n version: number,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof promoteWorkerVersion>>,\n TError,\n Key,\n PromoteWorkerVersionBody | undefined,\n Awaited<ReturnType<typeof promoteWorkerVersion>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getPromoteWorkerVersionMutationKey(workerId, version);\n const swrFn = getPromoteWorkerVersionMutationFetcher(\n workerId,\n version,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\nexport const getGetWorkerVersionChangeSummaryUrl = (\n workerId: string,\n version: number\n) => {\n return `/v1/workers/${workerId}/versions/${version}/change-summary`;\n};\n\n/**\n * Returns an AI-generated summary of what changed between this version and the previous one. Initial version returns an empty string since there is no predecessor.\n * @summary Get worker version change summary\n */\nexport const getWorkerVersionChangeSummary = async (\n workerId: string,\n version: number,\n options?: Parameters<typeof customFetch>[1]\n): Promise<GetWorkerVersionChangeSummaryEnvelope> => {\n return customFetch<GetWorkerVersionChangeSummaryEnvelope>(\n getGetWorkerVersionChangeSummaryUrl(workerId, version),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetWorkerVersionChangeSummaryKey = (\n workerId: string,\n version: number\n) => [`/v1/workers/${workerId}/versions/${version}/change-summary`] as const;\n\nexport type GetWorkerVersionChangeSummaryQueryResult = NonNullable<\n Awaited<ReturnType<typeof getWorkerVersionChangeSummary>>\n>;\n\n/**\n * @summary Get worker version change summary\n */\nexport const useGetWorkerVersionChangeSummary = <\n TError = ErrorType<ErrorResponse>,\n>(\n workerId: string,\n version: number,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getWorkerVersionChangeSummary>>,\n TError\n > & { swrKey?: Key; enabled?: boolean };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const isEnabled =\n swrOptions?.enabled !== false &&\n workerId !== null &&\n workerId !== undefined &&\n version !== null &&\n version !== undefined;\n const swrKey =\n swrOptions?.swrKey ??\n (() =>\n isEnabled\n ? getGetWorkerVersionChangeSummaryKey(workerId, version)\n : null);\n const swrFn = () =>\n getWorkerVersionChangeSummary(workerId, version, requestOptions);\n\n const query = useSwr<Awaited<ReturnType<typeof swrFn>>, TError>(\n swrKey,\n swrFn,\n swrOptions\n );\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AddCaseLinksBodyEntitiesItemEntityType =\n (typeof AddCaseLinksBodyEntitiesItemEntityType)[keyof typeof AddCaseLinksBodyEntitiesItemEntityType];\n\nexport const AddCaseLinksBodyEntitiesItemEntityType = {\n artifact: \"artifact\",\n call: \"call\",\n chat: \"chat\",\n email: \"email\",\n extract: \"extract\",\n information_request: \"information_request\",\n schedule: \"schedule\",\n worker_run: \"worker_run\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AddCaseLinksEnvironment =\n (typeof AddCaseLinksEnvironment)[keyof typeof AddCaseLinksEnvironment];\n\nexport const AddCaseLinksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AnalyticsTimeSeriesGranularity =\n (typeof AnalyticsTimeSeriesGranularity)[keyof typeof AnalyticsTimeSeriesGranularity];\n\nexport const AnalyticsTimeSeriesGranularity = {\n day: \"day\",\n week: \"week\",\n month: \"month\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AnalyticsTimeSeriesGroupBy =\n | (typeof AnalyticsTimeSeriesGroupBy)[keyof typeof AnalyticsTimeSeriesGroupBy]\n | null;\n\nexport const AnalyticsTimeSeriesGroupBy = {\n worker_id: \"worker_id\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AnalyticsTimeSeriesMetric =\n (typeof AnalyticsTimeSeriesMetric)[keyof typeof AnalyticsTimeSeriesMetric];\n\nexport const AnalyticsTimeSeriesMetric = {\n worker_runs: \"worker_runs\",\n documents: \"documents\",\n pages: \"pages\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Role granted to this API key\n */\nexport type ApiKeyCreatedRole =\n (typeof ApiKeyCreatedRole)[keyof typeof ApiKeyCreatedRole];\n\nexport const ApiKeyCreatedRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Role granted to this API key\n */\nexport type ApiKeyRole = (typeof ApiKeyRole)[keyof typeof ApiKeyRole];\n\nexport const ApiKeyRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ArtifactDetailDataStatus =\n (typeof ArtifactDetailDataStatus)[keyof typeof ArtifactDetailDataStatus];\n\nexport const ArtifactDetailDataStatus = {\n processing: \"processing\",\n parsed: \"parsed\",\n raw: \"raw\",\n missing: \"missing\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ArtifactStatus =\n (typeof ArtifactStatus)[keyof typeof ArtifactStatus];\n\nexport const ArtifactStatus = {\n processing: \"processing\",\n parsed: \"parsed\",\n raw: \"raw\",\n missing: \"missing\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CallDetailDirection =\n (typeof CallDetailDirection)[keyof typeof CallDetailDirection];\n\nexport const CallDetailDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel that handled the call. Test calls hand over to the worker's test version.\n */\nexport type CallDetailEnvironment =\n (typeof CallDetailEnvironment)[keyof typeof CallDetailEnvironment];\n\nexport const CallDetailEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CallDirection = (typeof CallDirection)[keyof typeof CallDirection];\n\nexport const CallDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel that handled the call. Test calls hand over to the worker's test version.\n */\nexport type CallEnvironment =\n (typeof CallEnvironment)[keyof typeof CallEnvironment];\n\nexport const CallEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CaseLinkEntityType =\n (typeof CaseLinkEntityType)[keyof typeof CaseLinkEntityType];\n\nexport const CaseLinkEntityType = {\n artifact: \"artifact\",\n call: \"call\",\n chat: \"chat\",\n email: \"email\",\n extract: \"extract\",\n information_request: \"information_request\",\n schedule: \"schedule\",\n worker_run: \"worker_run\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CaseSummaryEnvironment =\n (typeof CaseSummaryEnvironment)[keyof typeof CaseSummaryEnvironment];\n\nexport const CaseSummaryEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ChatHistoryMessagesItemRole =\n (typeof ChatHistoryMessagesItemRole)[keyof typeof ChatHistoryMessagesItemRole];\n\nexport const ChatHistoryMessagesItemRole = {\n user: \"user\",\n assistant: \"assistant\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ChatMessageRole =\n (typeof ChatMessageRole)[keyof typeof ChatMessageRole];\n\nexport const ChatMessageRole = {\n user: \"user\",\n assistant: \"assistant\",\n tool: \"tool\",\n system: \"system\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateAgentWebhookBodyEnvironmentsItem =\n (typeof CreateAgentWebhookBodyEnvironmentsItem)[keyof typeof CreateAgentWebhookBodyEnvironmentsItem];\n\nexport const CreateAgentWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Target environment for the key\n */\nexport type CreateApiKeyBodyEnvironment =\n (typeof CreateApiKeyBodyEnvironment)[keyof typeof CreateApiKeyBodyEnvironment];\n\nexport const CreateApiKeyBodyEnvironment = {\n test: \"test\",\n live: \"live\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Role granted to this API key (defaults to admin). Caller's role caps the maximum grantable role.\n */\nexport type CreateApiKeyBodyRole =\n (typeof CreateApiKeyBodyRole)[keyof typeof CreateApiKeyBodyRole];\n\nexport const CreateApiKeyBodyRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateCaseBodyEnvironment =\n (typeof CreateCaseBodyEnvironment)[keyof typeof CreateCaseBodyEnvironment];\n\nexport const CreateCaseBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateExtractorWebhookBodyEnvironmentsItem =\n (typeof CreateExtractorWebhookBodyEnvironmentsItem)[keyof typeof CreateExtractorWebhookBodyEnvironmentsItem];\n\nexport const CreateExtractorWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of processor. Defaults to 'extractor' when extractor_id is used.\n */\nexport type CreateInboxBodyProcessorType =\n (typeof CreateInboxBodyProcessorType)[keyof typeof CreateInboxBodyProcessorType];\n\nexport const CreateInboxBodyProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateInboxWebhookBodyEnvironmentsItem =\n (typeof CreateInboxWebhookBodyEnvironmentsItem)[keyof typeof CreateInboxWebhookBodyEnvironmentsItem];\n\nexport const CreateInboxWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateNotificationWebhookBodyEnvironmentsItem =\n (typeof CreateNotificationWebhookBodyEnvironmentsItem)[keyof typeof CreateNotificationWebhookBodyEnvironmentsItem];\n\nexport const CreateNotificationWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateScheduleBodyEnvironmentsItem =\n (typeof CreateScheduleBodyEnvironmentsItem)[keyof typeof CreateScheduleBodyEnvironmentsItem];\n\nexport const CreateScheduleBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of processor: extractor or worker\n */\nexport type CreateVoiceAgentBodyCallProcessorType =\n (typeof CreateVoiceAgentBodyCallProcessorType)[keyof typeof CreateVoiceAgentBodyCallProcessorType];\n\nexport const CreateVoiceAgentBodyCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Call direction the agent handles\n */\nexport type CreateVoiceAgentBodyDirection =\n (typeof CreateVoiceAgentBodyDirection)[keyof typeof CreateVoiceAgentBodyDirection];\n\nexport const CreateVoiceAgentBodyDirection = {\n OUTBOUND: \"OUTBOUND\",\n INBOUND: \"INBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Language for the agent\n */\nexport type CreateVoiceAgentBodyLanguage =\n (typeof CreateVoiceAgentBodyLanguage)[keyof typeof CreateVoiceAgentBodyLanguage];\n\nexport const CreateVoiceAgentBodyLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * LLM model for conversation\n */\nexport type CreateVoiceAgentBodyLlmModel =\n (typeof CreateVoiceAgentBodyLlmModel)[keyof typeof CreateVoiceAgentBodyLlmModel];\n\nexport const CreateVoiceAgentBodyLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Speech-to-text model\n */\nexport type CreateVoiceAgentBodySttModel =\n (typeof CreateVoiceAgentBodySttModel)[keyof typeof CreateVoiceAgentBodySttModel];\n\nexport const CreateVoiceAgentBodySttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Text-to-speech model\n */\nexport type CreateVoiceAgentBodyTtsModel =\n (typeof CreateVoiceAgentBodyTtsModel)[keyof typeof CreateVoiceAgentBodyTtsModel];\n\nexport const CreateVoiceAgentBodyTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Text-to-speech provider\n */\nexport type CreateVoiceAgentBodyTtsProvider =\n (typeof CreateVoiceAgentBodyTtsProvider)[keyof typeof CreateVoiceAgentBodyTtsProvider];\n\nexport const CreateVoiceAgentBodyTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWorkerBodyMcpType =\n | (typeof CreateWorkerBodyMcpType)[keyof typeof CreateWorkerBodyMcpType]\n | null;\n\nexport const CreateWorkerBodyMcpType = {\n ventiv: \"ventiv\",\n klear: \"klear\",\n \"klear-browser\": \"klear-browser\",\n \"demo-browser\": \"demo-browser\",\n \"demo-claims\": \"demo-claims\",\n \"filehandler-browser\": \"filehandler-browser\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWorkerEvalFromRunEnvelopeDataSourceType =\n (typeof CreateWorkerEvalFromRunEnvelopeDataSourceType)[keyof typeof CreateWorkerEvalFromRunEnvelopeDataSourceType];\n\nexport const CreateWorkerEvalFromRunEnvelopeDataSourceType = {\n worker_run: \"worker_run\",\n chat: \"chat\",\n call: \"call\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWorkerEvalFromRunEnvelopeDataTargetType =\n (typeof CreateWorkerEvalFromRunEnvelopeDataTargetType)[keyof typeof CreateWorkerEvalFromRunEnvelopeDataTargetType];\n\nexport const CreateWorkerEvalFromRunEnvelopeDataTargetType = {\n worker: \"worker\",\n chat_agent: \"chat_agent\",\n voice_agent: \"voice_agent\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel to run. `test` runs the worker's test version, `live` the live one. Defaults to `live`.\n */\nexport type CreateWorkerRunBodyEnvironment =\n (typeof CreateWorkerRunBodyEnvironment)[keyof typeof CreateWorkerRunBodyEnvironment];\n\nexport const CreateWorkerRunBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWorkerWebhookBodyEnvironmentsItem =\n (typeof CreateWorkerWebhookBodyEnvironmentsItem)[keyof typeof CreateWorkerWebhookBodyEnvironmentsItem];\n\nexport const CreateWorkerWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DeleteCaseEnvironment =\n (typeof DeleteCaseEnvironment)[keyof typeof DeleteCaseEnvironment];\n\nexport const DeleteCaseEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DispatchEnvironment =\n (typeof DispatchEnvironment)[keyof typeof DispatchEnvironment];\n\nexport const DispatchEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DispatchStatus =\n (typeof DispatchStatus)[keyof typeof DispatchStatus];\n\nexport const DispatchStatus = {\n pending: \"pending\",\n dispatched: \"dispatched\",\n abandoned: \"abandoned\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DispatchTargetType =\n (typeof DispatchTargetType)[keyof typeof DispatchTargetType];\n\nexport const DispatchTargetType = {\n worker_run: \"worker_run\",\n extractor_job: \"extractor_job\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DispatchTriggerType =\n (typeof DispatchTriggerType)[keyof typeof DispatchTriggerType];\n\nexport const DispatchTriggerType = {\n schedule: \"schedule\",\n email: \"email\",\n information_request: \"information_request\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailDetailDirection =\n (typeof EmailDetailDirection)[keyof typeof EmailDetailDirection];\n\nexport const EmailDetailDirection = {\n inbound: \"inbound\",\n outbound: \"outbound\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailDetailEnvironment =\n (typeof EmailDetailEnvironment)[keyof typeof EmailDetailEnvironment];\n\nexport const EmailDetailEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Why the email was stored without processing. Null for emails that were processed normally.\n */\nexport type EmailDetailIgnoredReason =\n | (typeof EmailDetailIgnoredReason)[keyof typeof EmailDetailIgnoredReason]\n | null;\n\nexport const EmailDetailIgnoredReason = {\n sender_domain_not_allowed: \"sender_domain_not_allowed\",\n received_via_cc_or_bcc: \"received_via_cc_or_bcc\",\n sent_from_own_inbox: \"sent_from_own_inbox\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailDirection =\n (typeof EmailDirection)[keyof typeof EmailDirection];\n\nexport const EmailDirection = {\n inbound: \"inbound\",\n outbound: \"outbound\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailEnvironment =\n (typeof EmailEnvironment)[keyof typeof EmailEnvironment];\n\nexport const EmailEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Why the email was stored without processing. Null for emails that were processed normally.\n */\nexport type EmailIgnoredReason =\n | (typeof EmailIgnoredReason)[keyof typeof EmailIgnoredReason]\n | null;\n\nexport const EmailIgnoredReason = {\n sender_domain_not_allowed: \"sender_domain_not_allowed\",\n received_via_cc_or_bcc: \"received_via_cc_or_bcc\",\n sent_from_own_inbox: \"sent_from_own_inbox\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport const EmailReplyResultValue = {\n sent: true,\n} as const;\nexport type EmailReplyResult = typeof EmailReplyResultValue;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel the thread belongs to, taken from its first email.\n */\nexport type EmailThreadEnvironment =\n (typeof EmailThreadEnvironment)[keyof typeof EmailThreadEnvironment];\n\nexport const EmailThreadEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Environment to run the tool in, which selects the secret values it receives. A worker run is pinned to its own environment; other callers default to live.\n */\nexport type ExecuteCodeBodyEnvironment =\n (typeof ExecuteCodeBodyEnvironment)[keyof typeof ExecuteCodeBodyEnvironment];\n\nexport const ExecuteCodeBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetAnalyticsTimeSeriesGranularity =\n (typeof GetAnalyticsTimeSeriesGranularity)[keyof typeof GetAnalyticsTimeSeriesGranularity];\n\nexport const GetAnalyticsTimeSeriesGranularity = {\n day: \"day\",\n week: \"week\",\n month: \"month\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetAnalyticsTimeSeriesGroupBy =\n (typeof GetAnalyticsTimeSeriesGroupBy)[keyof typeof GetAnalyticsTimeSeriesGroupBy];\n\nexport const GetAnalyticsTimeSeriesGroupBy = {\n worker_id: \"worker_id\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetAnalyticsTimeSeriesMetric =\n (typeof GetAnalyticsTimeSeriesMetric)[keyof typeof GetAnalyticsTimeSeriesMetric];\n\nexport const GetAnalyticsTimeSeriesMetric = {\n worker_runs: \"worker_runs\",\n documents: \"documents\",\n pages: \"pages\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetCaseEnvironment =\n (typeof GetCaseEnvironment)[keyof typeof GetCaseEnvironment];\n\nexport const GetCaseEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetEvalRunEnvelopeDataStatus =\n (typeof GetEvalRunEnvelopeDataStatus)[keyof typeof GetEvalRunEnvelopeDataStatus];\n\nexport const GetEvalRunEnvelopeDataStatus = {\n queued: \"queued\",\n running: \"running\",\n passed: \"passed\",\n failed: \"failed\",\n error: \"error\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetOAuthUrlCodeChallengeMethod =\n (typeof GetOAuthUrlCodeChallengeMethod)[keyof typeof GetOAuthUrlCodeChallengeMethod];\n\nexport const GetOAuthUrlCodeChallengeMethod = {\n plain: \"plain\",\n s256: \"s256\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetOAuthUrlProvider =\n (typeof GetOAuthUrlProvider)[keyof typeof GetOAuthUrlProvider];\n\nexport const GetOAuthUrlProvider = {\n google: \"google\",\n sso: \"sso\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type InboxProcessorType =\n (typeof InboxProcessorType)[keyof typeof InboxProcessorType];\n\nexport const InboxProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type InformationRequestEnvironment =\n (typeof InformationRequestEnvironment)[keyof typeof InformationRequestEnvironment];\n\nexport const InformationRequestEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListAgentWebhooksEnvironment =\n (typeof ListAgentWebhooksEnvironment)[keyof typeof ListAgentWebhooksEnvironment];\n\nexport const ListAgentWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListApiKeysIncludeRevoked =\n (typeof ListApiKeysIncludeRevoked)[keyof typeof ListApiKeysIncludeRevoked];\n\nexport const ListApiKeysIncludeRevoked = {\n true: \"true\",\n false: \"false\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListArtifactsEnvironment =\n (typeof ListArtifactsEnvironment)[keyof typeof ListArtifactsEnvironment];\n\nexport const ListArtifactsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListArtifactsSortBy =\n (typeof ListArtifactsSortBy)[keyof typeof ListArtifactsSortBy];\n\nexport const ListArtifactsSortBy = {\n created_at: \"created_at\",\n updated_at: \"updated_at\",\n document_name: \"document_name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListArtifactsSortOrder =\n (typeof ListArtifactsSortOrder)[keyof typeof ListArtifactsSortOrder];\n\nexport const ListArtifactsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListArtifactsStatus =\n (typeof ListArtifactsStatus)[keyof typeof ListArtifactsStatus];\n\nexport const ListArtifactsStatus = {\n processing: \"processing\",\n parsed: \"parsed\",\n raw: \"raw\",\n missing: \"missing\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallFeedbackSortBy =\n (typeof ListCallFeedbackSortBy)[keyof typeof ListCallFeedbackSortBy];\n\nexport const ListCallFeedbackSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallFeedbackSortOrder =\n (typeof ListCallFeedbackSortOrder)[keyof typeof ListCallFeedbackSortOrder];\n\nexport const ListCallFeedbackSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsDirection =\n (typeof ListCallsDirection)[keyof typeof ListCallsDirection];\n\nexport const ListCallsDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsEnvironment =\n (typeof ListCallsEnvironment)[keyof typeof ListCallsEnvironment];\n\nexport const ListCallsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsSortBy =\n (typeof ListCallsSortBy)[keyof typeof ListCallsSortBy];\n\nexport const ListCallsSortBy = {\n started_at: \"started_at\",\n ended_at: \"ended_at\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsSortOrder =\n (typeof ListCallsSortOrder)[keyof typeof ListCallsSortOrder];\n\nexport const ListCallsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCallsStatus =\n (typeof ListCallsStatus)[keyof typeof ListCallsStatus];\n\nexport const ListCallsStatus = {\n COMPLETED: \"COMPLETED\",\n TRANSFERRED: \"TRANSFERRED\",\n DISCONNECTED: \"DISCONNECTED\",\n UNEXPECTED_SHUTDOWN: \"UNEXPECTED_SHUTDOWN\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCaseLinksEntityType =\n (typeof ListCaseLinksEntityType)[keyof typeof ListCaseLinksEntityType];\n\nexport const ListCaseLinksEntityType = {\n artifact: \"artifact\",\n call: \"call\",\n chat: \"chat\",\n email: \"email\",\n extract: \"extract\",\n information_request: \"information_request\",\n schedule: \"schedule\",\n worker_run: \"worker_run\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCaseLinksEnvironment =\n (typeof ListCaseLinksEnvironment)[keyof typeof ListCaseLinksEnvironment];\n\nexport const ListCaseLinksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCaseLinksSortBy =\n (typeof ListCaseLinksSortBy)[keyof typeof ListCaseLinksSortBy];\n\nexport const ListCaseLinksSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCaseLinksSortOrder =\n (typeof ListCaseLinksSortOrder)[keyof typeof ListCaseLinksSortOrder];\n\nexport const ListCaseLinksSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCasesEnvironment =\n (typeof ListCasesEnvironment)[keyof typeof ListCasesEnvironment];\n\nexport const ListCasesEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCasesSortBy =\n (typeof ListCasesSortBy)[keyof typeof ListCasesSortBy];\n\nexport const ListCasesSortBy = {\n created_at: \"created_at\",\n updated_at: \"updated_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListCasesSortOrder =\n (typeof ListCasesSortOrder)[keyof typeof ListCasesSortOrder];\n\nexport const ListCasesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatAgentsSortBy =\n (typeof ListChatAgentsSortBy)[keyof typeof ListChatAgentsSortBy];\n\nexport const ListChatAgentsSortBy = {\n created_at: \"created_at\",\n name: \"name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatAgentsSortOrder =\n (typeof ListChatAgentsSortOrder)[keyof typeof ListChatAgentsSortOrder];\n\nexport const ListChatAgentsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatMessagesSortBy =\n (typeof ListChatMessagesSortBy)[keyof typeof ListChatMessagesSortBy];\n\nexport const ListChatMessagesSortBy = {\n generated_at: \"generated_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatMessagesSortOrder =\n (typeof ListChatMessagesSortOrder)[keyof typeof ListChatMessagesSortOrder];\n\nexport const ListChatMessagesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatsEnvironment =\n (typeof ListChatsEnvironment)[keyof typeof ListChatsEnvironment];\n\nexport const ListChatsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatsSortBy =\n (typeof ListChatsSortBy)[keyof typeof ListChatsSortBy];\n\nexport const ListChatsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListChatsSortOrder =\n (typeof ListChatsSortOrder)[keyof typeof ListChatsSortOrder];\n\nexport const ListChatsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListDispatchesSortBy =\n (typeof ListDispatchesSortBy)[keyof typeof ListDispatchesSortBy];\n\nexport const ListDispatchesSortBy = {\n due_at: \"due_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListDispatchesSortOrder =\n (typeof ListDispatchesSortOrder)[keyof typeof ListDispatchesSortOrder];\n\nexport const ListDispatchesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListDispatchesTriggerType =\n (typeof ListDispatchesTriggerType)[keyof typeof ListDispatchesTriggerType];\n\nexport const ListDispatchesTriggerType = {\n schedule: \"schedule\",\n email: \"email\",\n information_request: \"information_request\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailsEnvironment =\n (typeof ListEmailsEnvironment)[keyof typeof ListEmailsEnvironment];\n\nexport const ListEmailsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailsSortBy =\n (typeof ListEmailsSortBy)[keyof typeof ListEmailsSortBy];\n\nexport const ListEmailsSortBy = {\n created_at: \"created_at\",\n sent_at: \"sent_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailsSortOrder =\n (typeof ListEmailsSortOrder)[keyof typeof ListEmailsSortOrder];\n\nexport const ListEmailsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailThreadsEnvironment =\n (typeof ListEmailThreadsEnvironment)[keyof typeof ListEmailThreadsEnvironment];\n\nexport const ListEmailThreadsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailThreadsSortBy =\n (typeof ListEmailThreadsSortBy)[keyof typeof ListEmailThreadsSortBy];\n\nexport const ListEmailThreadsSortBy = {\n last_email_at: \"last_email_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListEmailThreadsSortOrder =\n (typeof ListEmailThreadsSortOrder)[keyof typeof ListEmailThreadsSortOrder];\n\nexport const ListEmailThreadsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorJobsSortBy =\n (typeof ListExtractorJobsSortBy)[keyof typeof ListExtractorJobsSortBy];\n\nexport const ListExtractorJobsSortBy = {\n created_at: \"created_at\",\n started_at: \"started_at\",\n completed_at: \"completed_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorJobsSortOrder =\n (typeof ListExtractorJobsSortOrder)[keyof typeof ListExtractorJobsSortOrder];\n\nexport const ListExtractorJobsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorJobsStatus =\n (typeof ListExtractorJobsStatus)[keyof typeof ListExtractorJobsStatus];\n\nexport const ListExtractorJobsStatus = {\n queued: \"queued\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n failed: \"failed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorsSortBy =\n (typeof ListExtractorsSortBy)[keyof typeof ListExtractorsSortBy];\n\nexport const ListExtractorsSortBy = {\n created_at: \"created_at\",\n name: \"name\",\n version: \"version\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorsSortOrder =\n (typeof ListExtractorsSortOrder)[keyof typeof ListExtractorsSortOrder];\n\nexport const ListExtractorsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractsEnvironment =\n (typeof ListExtractsEnvironment)[keyof typeof ListExtractsEnvironment];\n\nexport const ListExtractsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractsSortBy =\n (typeof ListExtractsSortBy)[keyof typeof ListExtractsSortBy];\n\nexport const ListExtractsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractsSortOrder =\n (typeof ListExtractsSortOrder)[keyof typeof ListExtractsSortOrder];\n\nexport const ListExtractsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInboxesSortBy =\n (typeof ListInboxesSortBy)[keyof typeof ListInboxesSortBy];\n\nexport const ListInboxesSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInboxesSortOrder =\n (typeof ListInboxesSortOrder)[keyof typeof ListInboxesSortOrder];\n\nexport const ListInboxesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInboxWebhooksEnvironment =\n (typeof ListInboxWebhooksEnvironment)[keyof typeof ListInboxWebhooksEnvironment];\n\nexport const ListInboxWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInformationRequestsEnvironment =\n (typeof ListInformationRequestsEnvironment)[keyof typeof ListInformationRequestsEnvironment];\n\nexport const ListInformationRequestsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInformationRequestsResolved =\n (typeof ListInformationRequestsResolved)[keyof typeof ListInformationRequestsResolved];\n\nexport const ListInformationRequestsResolved = {\n true: \"true\",\n false: \"false\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInformationRequestsSortBy =\n (typeof ListInformationRequestsSortBy)[keyof typeof ListInformationRequestsSortBy];\n\nexport const ListInformationRequestsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListInformationRequestsSortOrder =\n (typeof ListInformationRequestsSortOrder)[keyof typeof ListInformationRequestsSortOrder];\n\nexport const ListInformationRequestsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListJobsStatusItem =\n (typeof ListJobsStatusItem)[keyof typeof ListJobsStatusItem];\n\nexport const ListJobsStatusItem = {\n pending: \"pending\",\n queued: \"queued\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListNotificationsSortBy =\n (typeof ListNotificationsSortBy)[keyof typeof ListNotificationsSortBy];\n\nexport const ListNotificationsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListNotificationsSortOrder =\n (typeof ListNotificationsSortOrder)[keyof typeof ListNotificationsSortOrder];\n\nexport const ListNotificationsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListNotificationWebhooksEnvironment =\n (typeof ListNotificationWebhooksEnvironment)[keyof typeof ListNotificationWebhooksEnvironment];\n\nexport const ListNotificationWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSchedulesEnvironment =\n (typeof ListSchedulesEnvironment)[keyof typeof ListSchedulesEnvironment];\n\nexport const ListSchedulesEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSchedulesRuleType =\n (typeof ListSchedulesRuleType)[keyof typeof ListSchedulesRuleType];\n\nexport const ListSchedulesRuleType = {\n once: \"once\",\n recurring: \"recurring\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSchedulesSortBy =\n (typeof ListSchedulesSortBy)[keyof typeof ListSchedulesSortBy];\n\nexport const ListSchedulesSortBy = {\n created_at: \"created_at\",\n next_run_at: \"next_run_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSchedulesSortOrder =\n (typeof ListSchedulesSortOrder)[keyof typeof ListSchedulesSortOrder];\n\nexport const ListSchedulesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSecretsSortBy =\n (typeof ListSecretsSortBy)[keyof typeof ListSecretsSortBy];\n\nexport const ListSecretsSortBy = {\n name: \"name\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListSecretsSortOrder =\n (typeof ListSecretsSortOrder)[keyof typeof ListSecretsSortOrder];\n\nexport const ListSecretsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListToolsSortBy =\n (typeof ListToolsSortBy)[keyof typeof ListToolsSortBy];\n\nexport const ListToolsSortBy = {\n created_at: \"created_at\",\n updated_at: \"updated_at\",\n name: \"name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListToolsSortOrder =\n (typeof ListToolsSortOrder)[keyof typeof ListToolsSortOrder];\n\nexport const ListToolsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListToolVersionsSortBy =\n (typeof ListToolVersionsSortBy)[keyof typeof ListToolVersionsSortBy];\n\nexport const ListToolVersionsSortBy = {\n version: \"version\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListToolVersionsSortOrder =\n (typeof ListToolVersionsSortOrder)[keyof typeof ListToolVersionsSortOrder];\n\nexport const ListToolVersionsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListVoiceAgentVersionsSortBy =\n (typeof ListVoiceAgentVersionsSortBy)[keyof typeof ListVoiceAgentVersionsSortBy];\n\nexport const ListVoiceAgentVersionsSortBy = {\n version: \"version\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListVoiceAgentVersionsSortOrder =\n (typeof ListVoiceAgentVersionsSortOrder)[keyof typeof ListVoiceAgentVersionsSortOrder];\n\nexport const ListVoiceAgentVersionsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWebhookDeliveriesSortOrder =\n (typeof ListWebhookDeliveriesSortOrder)[keyof typeof ListWebhookDeliveriesSortOrder];\n\nexport const ListWebhookDeliveriesSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWebhooksEnvironment =\n (typeof ListWebhooksEnvironment)[keyof typeof ListWebhooksEnvironment];\n\nexport const ListWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerRunsEnvironment =\n (typeof ListWorkerRunsEnvironment)[keyof typeof ListWorkerRunsEnvironment];\n\nexport const ListWorkerRunsEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerRunsSortBy =\n (typeof ListWorkerRunsSortBy)[keyof typeof ListWorkerRunsSortBy];\n\nexport const ListWorkerRunsSortBy = {\n created_at: \"created_at\",\n started_at: \"started_at\",\n completed_at: \"completed_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerRunsSortOrder =\n (typeof ListWorkerRunsSortOrder)[keyof typeof ListWorkerRunsSortOrder];\n\nexport const ListWorkerRunsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerRunsStatus =\n (typeof ListWorkerRunsStatus)[keyof typeof ListWorkerRunsStatus];\n\nexport const ListWorkerRunsStatus = {\n pending: \"pending\",\n queued: \"queued\",\n starting: \"starting\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n failed: \"failed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkersSortBy =\n (typeof ListWorkersSortBy)[keyof typeof ListWorkersSortBy];\n\nexport const ListWorkersSortBy = {\n created_at: \"created_at\",\n name: \"name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkersSortOrder =\n (typeof ListWorkersSortOrder)[keyof typeof ListWorkersSortOrder];\n\nexport const ListWorkersSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerVersionsSortBy =\n (typeof ListWorkerVersionsSortBy)[keyof typeof ListWorkerVersionsSortBy];\n\nexport const ListWorkerVersionsSortBy = {\n version: \"version\",\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerVersionsSortOrder =\n (typeof ListWorkerVersionsSortOrder)[keyof typeof ListWorkerVersionsSortOrder];\n\nexport const ListWorkerVersionsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListWorkerWebhooksEnvironment =\n (typeof ListWorkerWebhooksEnvironment)[keyof typeof ListWorkerWebhooksEnvironment];\n\nexport const ListWorkerWebhooksEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Promoted environment the job dispatches against (agent configuration and phone binding). TEST requires an active TEST promotion.\n */\nexport type OutboundJobEnvironment =\n (typeof OutboundJobEnvironment)[keyof typeof OutboundJobEnvironment];\n\nexport const OutboundJobEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type OutboundJobStatus =\n (typeof OutboundJobStatus)[keyof typeof OutboundJobStatus];\n\nexport const OutboundJobStatus = {\n pending: \"pending\",\n queued: \"queued\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ProfilePermissionsItem =\n (typeof ProfilePermissionsItem)[keyof typeof ProfilePermissionsItem];\n\nexport const ProfilePermissionsItem = {\n \"voice-agents:write\": \"voice-agents:write\",\n \"voice-agents:promote\": \"voice-agents:promote\",\n \"tools:write\": \"tools:write\",\n \"tools:execute\": \"tools:execute\",\n \"tools:promote\": \"tools:promote\",\n \"extractors:write\": \"extractors:write\",\n \"inboxes:write\": \"inboxes:write\",\n \"inboxes:send\": \"inboxes:send\",\n \"artifacts:write\": \"artifacts:write\",\n \"api-keys:write\": \"api-keys:write\",\n \"teams:write\": \"teams:write\",\n \"cases:write\": \"cases:write\",\n \"cases:delete\": \"cases:delete\",\n \"information-requests:write\": \"information-requests:write\",\n \"information-requests:resolve\": \"information-requests:resolve\",\n \"feedback:write\": \"feedback:write\",\n \"outbound-jobs:write\": \"outbound-jobs:write\",\n \"outbound-jobs:schedule\": \"outbound-jobs:schedule\",\n \"workers:write\": \"workers:write\",\n \"workers:execute\": \"workers:execute\",\n \"workers:write-mcp\": \"workers:write-mcp\",\n \"workers:run\": \"workers:run\",\n \"workers:promote\": \"workers:promote\",\n \"chat-agents:write\": \"chat-agents:write\",\n \"notifications:write\": \"notifications:write\",\n \"prompts:read\": \"prompts:read\",\n \"prompts:write\": \"prompts:write\",\n \"secrets:read\": \"secrets:read\",\n \"secrets:write\": \"secrets:write\",\n \"schedules:read\": \"schedules:read\",\n \"schedules:write\": \"schedules:write\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ProfileRole = (typeof ProfileRole)[keyof typeof ProfileRole];\n\nexport const ProfileRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PromotedVoiceAgentVersionEnvironment =\n (typeof PromotedVoiceAgentVersionEnvironment)[keyof typeof PromotedVoiceAgentVersionEnvironment];\n\nexport const PromotedVoiceAgentVersionEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PromoteVoiceAgentVersionBodyEnvironment =\n (typeof PromoteVoiceAgentVersionBodyEnvironment)[keyof typeof PromoteVoiceAgentVersionBodyEnvironment];\n\nexport const PromoteVoiceAgentVersionBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RemoveCaseLinkEnvironment =\n (typeof RemoveCaseLinkEnvironment)[keyof typeof RemoveCaseLinkEnvironment];\n\nexport const RemoveCaseLinkEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RunEvalEnvelopeDataStatus =\n (typeof RunEvalEnvelopeDataStatus)[keyof typeof RunEvalEnvelopeDataStatus];\n\nexport const RunEvalEnvelopeDataStatus = {\n queued: \"queued\",\n running: \"running\",\n passed: \"passed\",\n failed: \"failed\",\n error: \"error\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ScheduleEnvironmentsItem =\n (typeof ScheduleEnvironmentsItem)[keyof typeof ScheduleEnvironmentsItem];\n\nexport const ScheduleEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Promoted environment the job dispatches against (agent configuration and phone binding). Defaults to `live`. TEST requires an active TEST promotion.\n */\nexport type ScheduleJobBodyEnvironment =\n (typeof ScheduleJobBodyEnvironment)[keyof typeof ScheduleJobBodyEnvironment];\n\nexport const ScheduleJobBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Inbox address to send from. `test` sends from the inbox's test address, `live` from its live one. Defaults to `live`.\n */\nexport type SendEmailBodyEnvironment =\n (typeof SendEmailBodyEnvironment)[keyof typeof SendEmailBodyEnvironment];\n\nexport const SendEmailBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type TeamInvitationState =\n (typeof TeamInvitationState)[keyof typeof TeamInvitationState];\n\nexport const TeamInvitationState = {\n pending: \"pending\",\n accepted: \"accepted\",\n expired: \"expired\",\n revoked: \"revoked\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type TeamMemberRole =\n (typeof TeamMemberRole)[keyof typeof TeamMemberRole];\n\nexport const TeamMemberRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * The environment to stamp on the test payload.\n */\nexport type TestWebhookBodyEnvironment =\n (typeof TestWebhookBodyEnvironment)[keyof typeof TestWebhookBodyEnvironment];\n\nexport const TestWebhookBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ToolEnvironment =\n (typeof ToolEnvironment)[keyof typeof ToolEnvironment];\n\nexport const ToolEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * New role to grant this API key. Caller's role caps the maximum grantable role.\n */\nexport type UpdateApiKeyBodyRole =\n (typeof UpdateApiKeyBodyRole)[keyof typeof UpdateApiKeyBodyRole];\n\nexport const UpdateApiKeyBodyRole = {\n admin: \"admin\",\n avallon_admin: \"avallon_admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of processor.\n */\nexport type UpdateInboxBodyProcessorType =\n (typeof UpdateInboxBodyProcessorType)[keyof typeof UpdateInboxBodyProcessorType];\n\nexport const UpdateInboxBodyProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateMemberRoleBodyRole =\n (typeof UpdateMemberRoleBodyRole)[keyof typeof UpdateMemberRoleBodyRole];\n\nexport const UpdateMemberRoleBodyRole = {\n admin: \"admin\",\n member: \"member\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateScheduleBodyEnvironmentsItem =\n (typeof UpdateScheduleBodyEnvironmentsItem)[keyof typeof UpdateScheduleBodyEnvironmentsItem];\n\nexport const UpdateScheduleBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentBodyCallProcessorType =\n (typeof UpdateVoiceAgentBodyCallProcessorType)[keyof typeof UpdateVoiceAgentBodyCallProcessorType];\n\nexport const UpdateVoiceAgentBodyCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Noise cancellation mode applied to the caller audio. Omit to leave unchanged.\n */\nexport type UpdateVoiceAgentBodyNoiseCancellation =\n (typeof UpdateVoiceAgentBodyNoiseCancellation)[keyof typeof UpdateVoiceAgentBodyNoiseCancellation];\n\nexport const UpdateVoiceAgentBodyNoiseCancellation = {\n NONE: \"NONE\",\n NC: \"NC\",\n BVC: \"BVC\",\n BVC_TELEPHONY: \"BVC_TELEPHONY\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyFallbackLlmModel =\n | (typeof UpdateVoiceAgentModelsBodyFallbackLlmModel)[keyof typeof UpdateVoiceAgentModelsBodyFallbackLlmModel]\n | null;\n\nexport const UpdateVoiceAgentModelsBodyFallbackLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyFallbackSttModel =\n | (typeof UpdateVoiceAgentModelsBodyFallbackSttModel)[keyof typeof UpdateVoiceAgentModelsBodyFallbackSttModel]\n | null;\n\nexport const UpdateVoiceAgentModelsBodyFallbackSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyFallbackTtsModel =\n | (typeof UpdateVoiceAgentModelsBodyFallbackTtsModel)[keyof typeof UpdateVoiceAgentModelsBodyFallbackTtsModel]\n | null;\n\nexport const UpdateVoiceAgentModelsBodyFallbackTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyFallbackTtsProvider =\n | (typeof UpdateVoiceAgentModelsBodyFallbackTtsProvider)[keyof typeof UpdateVoiceAgentModelsBodyFallbackTtsProvider]\n | null;\n\nexport const UpdateVoiceAgentModelsBodyFallbackTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyLanguage =\n (typeof UpdateVoiceAgentModelsBodyLanguage)[keyof typeof UpdateVoiceAgentModelsBodyLanguage];\n\nexport const UpdateVoiceAgentModelsBodyLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyLlmModel =\n (typeof UpdateVoiceAgentModelsBodyLlmModel)[keyof typeof UpdateVoiceAgentModelsBodyLlmModel];\n\nexport const UpdateVoiceAgentModelsBodyLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodySttModel =\n (typeof UpdateVoiceAgentModelsBodySttModel)[keyof typeof UpdateVoiceAgentModelsBodySttModel];\n\nexport const UpdateVoiceAgentModelsBodySttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyTtsModel =\n (typeof UpdateVoiceAgentModelsBodyTtsModel)[keyof typeof UpdateVoiceAgentModelsBodyTtsModel];\n\nexport const UpdateVoiceAgentModelsBodyTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateVoiceAgentModelsBodyTtsProvider =\n (typeof UpdateVoiceAgentModelsBodyTtsProvider)[keyof typeof UpdateVoiceAgentModelsBodyTtsProvider];\n\nexport const UpdateVoiceAgentModelsBodyTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateWebhookBodyEnvironmentsItem =\n (typeof UpdateWebhookBodyEnvironmentsItem)[keyof typeof UpdateWebhookBodyEnvironmentsItem];\n\nexport const UpdateWebhookBodyEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentBackgroundSounds =\n (typeof VoiceAgentBackgroundSounds)[keyof typeof VoiceAgentBackgroundSounds];\n\nexport const VoiceAgentBackgroundSounds = {\n enabled: \"enabled\",\n disabled: \"disabled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentCallProcessorType =\n | (typeof VoiceAgentCallProcessorType)[keyof typeof VoiceAgentCallProcessorType]\n | null;\n\nexport const VoiceAgentCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentDirection =\n (typeof VoiceAgentDirection)[keyof typeof VoiceAgentDirection];\n\nexport const VoiceAgentDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentFallbackLlmModel =\n | (typeof VoiceAgentFallbackLlmModel)[keyof typeof VoiceAgentFallbackLlmModel]\n | null;\n\nexport const VoiceAgentFallbackLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentFallbackSttModel =\n | (typeof VoiceAgentFallbackSttModel)[keyof typeof VoiceAgentFallbackSttModel]\n | null;\n\nexport const VoiceAgentFallbackSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentFallbackTtsModel =\n | (typeof VoiceAgentFallbackTtsModel)[keyof typeof VoiceAgentFallbackTtsModel]\n | null;\n\nexport const VoiceAgentFallbackTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentFallbackTtsProvider =\n | (typeof VoiceAgentFallbackTtsProvider)[keyof typeof VoiceAgentFallbackTtsProvider]\n | null;\n\nexport const VoiceAgentFallbackTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentLanguage =\n (typeof VoiceAgentLanguage)[keyof typeof VoiceAgentLanguage];\n\nexport const VoiceAgentLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentLlmModel =\n (typeof VoiceAgentLlmModel)[keyof typeof VoiceAgentLlmModel];\n\nexport const VoiceAgentLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentNoiseCancellation =\n (typeof VoiceAgentNoiseCancellation)[keyof typeof VoiceAgentNoiseCancellation];\n\nexport const VoiceAgentNoiseCancellation = {\n NONE: \"NONE\",\n NC: \"NC\",\n BVC: \"BVC\",\n BVC_TELEPHONY: \"BVC_TELEPHONY\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentSttModel =\n (typeof VoiceAgentSttModel)[keyof typeof VoiceAgentSttModel];\n\nexport const VoiceAgentSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentTtsModel =\n (typeof VoiceAgentTtsModel)[keyof typeof VoiceAgentTtsModel];\n\nexport const VoiceAgentTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentTtsProvider =\n (typeof VoiceAgentTtsProvider)[keyof typeof VoiceAgentTtsProvider];\n\nexport const VoiceAgentTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionActiveEnvironmentsItem =\n (typeof VoiceAgentVersionActiveEnvironmentsItem)[keyof typeof VoiceAgentVersionActiveEnvironmentsItem];\n\nexport const VoiceAgentVersionActiveEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailActiveEnvironmentsItem =\n (typeof VoiceAgentVersionDetailActiveEnvironmentsItem)[keyof typeof VoiceAgentVersionDetailActiveEnvironmentsItem];\n\nexport const VoiceAgentVersionDetailActiveEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailBackgroundSounds =\n (typeof VoiceAgentVersionDetailBackgroundSounds)[keyof typeof VoiceAgentVersionDetailBackgroundSounds];\n\nexport const VoiceAgentVersionDetailBackgroundSounds = {\n enabled: \"enabled\",\n disabled: \"disabled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailCallProcessorType =\n | (typeof VoiceAgentVersionDetailCallProcessorType)[keyof typeof VoiceAgentVersionDetailCallProcessorType]\n | null;\n\nexport const VoiceAgentVersionDetailCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailDirection =\n (typeof VoiceAgentVersionDetailDirection)[keyof typeof VoiceAgentVersionDetailDirection];\n\nexport const VoiceAgentVersionDetailDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailFallbackLlmModel =\n | (typeof VoiceAgentVersionDetailFallbackLlmModel)[keyof typeof VoiceAgentVersionDetailFallbackLlmModel]\n | null;\n\nexport const VoiceAgentVersionDetailFallbackLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailFallbackSttModel =\n | (typeof VoiceAgentVersionDetailFallbackSttModel)[keyof typeof VoiceAgentVersionDetailFallbackSttModel]\n | null;\n\nexport const VoiceAgentVersionDetailFallbackSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailFallbackTtsModel =\n | (typeof VoiceAgentVersionDetailFallbackTtsModel)[keyof typeof VoiceAgentVersionDetailFallbackTtsModel]\n | null;\n\nexport const VoiceAgentVersionDetailFallbackTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailFallbackTtsProvider =\n | (typeof VoiceAgentVersionDetailFallbackTtsProvider)[keyof typeof VoiceAgentVersionDetailFallbackTtsProvider]\n | null;\n\nexport const VoiceAgentVersionDetailFallbackTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailLanguage =\n (typeof VoiceAgentVersionDetailLanguage)[keyof typeof VoiceAgentVersionDetailLanguage];\n\nexport const VoiceAgentVersionDetailLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailLlmModel =\n (typeof VoiceAgentVersionDetailLlmModel)[keyof typeof VoiceAgentVersionDetailLlmModel];\n\nexport const VoiceAgentVersionDetailLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailNoiseCancellation =\n (typeof VoiceAgentVersionDetailNoiseCancellation)[keyof typeof VoiceAgentVersionDetailNoiseCancellation];\n\nexport const VoiceAgentVersionDetailNoiseCancellation = {\n NONE: \"NONE\",\n NC: \"NC\",\n BVC: \"BVC\",\n BVC_TELEPHONY: \"BVC_TELEPHONY\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailSttModel =\n (typeof VoiceAgentVersionDetailSttModel)[keyof typeof VoiceAgentVersionDetailSttModel];\n\nexport const VoiceAgentVersionDetailSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailTtsModel =\n (typeof VoiceAgentVersionDetailTtsModel)[keyof typeof VoiceAgentVersionDetailTtsModel];\n\nexport const VoiceAgentVersionDetailTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentVersionDetailTtsProvider =\n (typeof VoiceAgentVersionDetailTtsProvider)[keyof typeof VoiceAgentVersionDetailTtsProvider];\n\nexport const VoiceAgentVersionDetailTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberBackgroundSounds =\n (typeof VoiceAgentWithTestPhoneNumberBackgroundSounds)[keyof typeof VoiceAgentWithTestPhoneNumberBackgroundSounds];\n\nexport const VoiceAgentWithTestPhoneNumberBackgroundSounds = {\n enabled: \"enabled\",\n disabled: \"disabled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberCallProcessorType =\n | (typeof VoiceAgentWithTestPhoneNumberCallProcessorType)[keyof typeof VoiceAgentWithTestPhoneNumberCallProcessorType]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberCallProcessorType = {\n extractor: \"extractor\",\n worker: \"worker\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberDirection =\n (typeof VoiceAgentWithTestPhoneNumberDirection)[keyof typeof VoiceAgentWithTestPhoneNumberDirection];\n\nexport const VoiceAgentWithTestPhoneNumberDirection = {\n INBOUND: \"INBOUND\",\n OUTBOUND: \"OUTBOUND\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberFallbackLlmModel =\n | (typeof VoiceAgentWithTestPhoneNumberFallbackLlmModel)[keyof typeof VoiceAgentWithTestPhoneNumberFallbackLlmModel]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberFallbackLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberFallbackSttModel =\n | (typeof VoiceAgentWithTestPhoneNumberFallbackSttModel)[keyof typeof VoiceAgentWithTestPhoneNumberFallbackSttModel]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberFallbackSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberFallbackTtsModel =\n | (typeof VoiceAgentWithTestPhoneNumberFallbackTtsModel)[keyof typeof VoiceAgentWithTestPhoneNumberFallbackTtsModel]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberFallbackTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberFallbackTtsProvider =\n | (typeof VoiceAgentWithTestPhoneNumberFallbackTtsProvider)[keyof typeof VoiceAgentWithTestPhoneNumberFallbackTtsProvider]\n | null;\n\nexport const VoiceAgentWithTestPhoneNumberFallbackTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberLanguage =\n (typeof VoiceAgentWithTestPhoneNumberLanguage)[keyof typeof VoiceAgentWithTestPhoneNumberLanguage];\n\nexport const VoiceAgentWithTestPhoneNumberLanguage = {\n \"en-US\": \"en-US\",\n \"de-DE\": \"de-DE\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberLlmModel =\n (typeof VoiceAgentWithTestPhoneNumberLlmModel)[keyof typeof VoiceAgentWithTestPhoneNumberLlmModel];\n\nexport const VoiceAgentWithTestPhoneNumberLlmModel = {\n GPT41: \"GPT4.1\",\n \"AZURE-GPT4o\": \"AZURE-GPT4o\",\n \"AZURE-GPT41\": \"AZURE-GPT4.1\",\n \"GPT-5\": \"GPT-5\",\n \"GPT-5-low\": \"GPT-5-low\",\n \"GPT-5-high\": \"GPT-5-high\",\n \"GPT-51-chat-latest\": \"GPT-5.1-chat-latest\",\n \"GPT-51-no-reasoning\": \"GPT-5.1-no-reasoning\",\n \"GEMINI-15-flash\": \"GEMINI-1.5-flash\",\n \"GEMINI-25-flash\": \"GEMINI-2.5-flash\",\n \"GEMINI-25-flash-lite\": \"GEMINI-2.5-flash-lite\",\n \"GEMINI-3-flash\": \"GEMINI-3-flash\",\n \"CLAUDE-sonnet-46\": \"CLAUDE-sonnet-4.6\",\n \"CLAUDE-haiku-45\": \"CLAUDE-haiku-4.5\",\n \"GPT-54-mini\": \"GPT-5.4-mini\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberNoiseCancellation =\n (typeof VoiceAgentWithTestPhoneNumberNoiseCancellation)[keyof typeof VoiceAgentWithTestPhoneNumberNoiseCancellation];\n\nexport const VoiceAgentWithTestPhoneNumberNoiseCancellation = {\n NONE: \"NONE\",\n NC: \"NC\",\n BVC: \"BVC\",\n BVC_TELEPHONY: \"BVC_TELEPHONY\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberSttModel =\n (typeof VoiceAgentWithTestPhoneNumberSttModel)[keyof typeof VoiceAgentWithTestPhoneNumberSttModel];\n\nexport const VoiceAgentWithTestPhoneNumberSttModel = {\n \"DEEPGRAM-NOVA-2-GENERAL\": \"DEEPGRAM-NOVA-2-GENERAL\",\n \"DEEPGRAM-NOVA-3-GENERAL\": \"DEEPGRAM-NOVA-3-GENERAL\",\n \"AWS-TRANSCRIBE\": \"AWS-TRANSCRIBE\",\n \"ELEVENLABS-SCRIBE-V2-REALTIME\": \"ELEVENLABS-SCRIBE-V2-REALTIME\",\n \"CARTESIA-INK-2\": \"CARTESIA-INK-2\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberTtsModel =\n (typeof VoiceAgentWithTestPhoneNumberTtsModel)[keyof typeof VoiceAgentWithTestPhoneNumberTtsModel];\n\nexport const VoiceAgentWithTestPhoneNumberTtsModel = {\n eleven_flash_v2_5: \"eleven_flash_v2_5\",\n eleven_turbo_v2_5: \"eleven_turbo_v2_5\",\n \"sonic-3\": \"sonic-3\",\n \"sonic-35\": \"sonic-3.5\",\n \"sonic-36\": \"sonic-3.6\",\n chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type VoiceAgentWithTestPhoneNumberTtsProvider =\n (typeof VoiceAgentWithTestPhoneNumberTtsProvider)[keyof typeof VoiceAgentWithTestPhoneNumberTtsProvider];\n\nexport const VoiceAgentWithTestPhoneNumberTtsProvider = {\n elevenlabs: \"elevenlabs\",\n cartesia: \"cartesia\",\n google: \"google\",\n \"aws-polly\": \"aws-polly\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WebhookEnvironmentsItem =\n (typeof WebhookEnvironmentsItem)[keyof typeof WebhookEnvironmentsItem];\n\nexport const WebhookEnvironmentsItem = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerEnvironment =\n (typeof WorkerEnvironment)[keyof typeof WorkerEnvironment];\n\nexport const WorkerEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Environment to run the tool in, which selects the secret values it receives. A worker run is pinned to its own environment; other callers default to live.\n */\nexport type WorkerExecuteToolBodyEnvironment =\n (typeof WorkerExecuteToolBodyEnvironment)[keyof typeof WorkerExecuteToolBodyEnvironment];\n\nexport const WorkerExecuteToolBodyEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerListToolsSortBy =\n (typeof WorkerListToolsSortBy)[keyof typeof WorkerListToolsSortBy];\n\nexport const WorkerListToolsSortBy = {\n created_at: \"created_at\",\n updated_at: \"updated_at\",\n name: \"name\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerListToolsSortOrder =\n (typeof WorkerListToolsSortOrder)[keyof typeof WorkerListToolsSortOrder];\n\nexport const WorkerListToolsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * MCP server identifier.\n */\nexport type WorkerMcpName = (typeof WorkerMcpName)[keyof typeof WorkerMcpName];\n\nexport const WorkerMcpName = {\n ventiv: \"ventiv\",\n klear: \"klear\",\n \"klear-browser\": \"klear-browser\",\n \"demo-browser\": \"demo-browser\",\n \"demo-claims\": \"demo-claims\",\n \"filehandler-browser\": \"filehandler-browser\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * MCP server identifier.\n */\nexport type WorkerMcpOutputName =\n (typeof WorkerMcpOutputName)[keyof typeof WorkerMcpOutputName];\n\nexport const WorkerMcpOutputName = {\n ventiv: \"ventiv\",\n klear: \"klear\",\n \"klear-browser\": \"klear-browser\",\n \"demo-browser\": \"demo-browser\",\n \"demo-claims\": \"demo-claims\",\n \"filehandler-browser\": \"filehandler-browser\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerPermission =\n (typeof WorkerPermission)[keyof typeof WorkerPermission];\n\nexport const WorkerPermission = {\n \"workers:run\": \"workers:run\",\n \"inboxes:send\": \"inboxes:send\",\n \"artifacts:write\": \"artifacts:write\",\n \"outbound-jobs:schedule\": \"outbound-jobs:schedule\",\n \"cases:write\": \"cases:write\",\n \"schedules:write\": \"schedules:write\",\n \"information-requests:write\": \"information-requests:write\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerRunCreatedEnvironment =\n (typeof WorkerRunCreatedEnvironment)[keyof typeof WorkerRunCreatedEnvironment];\n\nexport const WorkerRunCreatedEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WorkerRunCreatedStatus =\n (typeof WorkerRunCreatedStatus)[keyof typeof WorkerRunCreatedStatus];\n\nexport const WorkerRunCreatedStatus = {\n pending: \"pending\",\n queued: \"queued\",\n starting: \"starting\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n failed: \"failed\",\n canceled: \"canceled\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Release channel the run was started for. Test calls run the worker's test version; every other trigger runs live.\n */\nexport type WorkerRunEnvironment =\n (typeof WorkerRunEnvironment)[keyof typeof WorkerRunEnvironment];\n\nexport const WorkerRunEnvironment = {\n live: \"live\",\n test: \"test\",\n} as const;\n","/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Current run status\n */\nexport type WorkerRunStatus =\n (typeof WorkerRunStatus)[keyof typeof WorkerRunStatus];\n\nexport const WorkerRunStatus = {\n pending: \"pending\",\n queued: \"queued\",\n starting: \"starting\",\n in_progress: \"in_progress\",\n completed: \"completed\",\n failed: \"failed\",\n canceled: \"canceled\",\n} as const;\n"]}
|