@avallon-labs/sdk 12.2.0 → 12.3.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.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/fetcher.ts","../src/auth.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/claims/claims.ts","../generated/endpoints/emails/emails.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/jobs/jobs.ts","../generated/endpoints/profiles/profiles.ts","../generated/endpoints/tools/tools.ts","../generated/endpoints/voice-agents/voice-agents.ts","../generated/endpoints/webhooks/webhooks.ts","../generated/endpoints/workers/workers.ts","../generated/models/callDetailDirection.ts","../generated/models/callDirection.ts","../generated/models/createApiKeyBodyEnvironment.ts","../generated/models/createEmailBodyDirection.ts","../generated/models/createExtractorJobBodyExtractorType.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/emailCreatedDirection.ts","../generated/models/emailDetailDirection.ts","../generated/models/emailDirection.ts","../generated/models/extractorJobExtractorType.ts","../generated/models/getOAuthUrlCodeChallengeMethod.ts","../generated/models/getOAuthUrlProvider.ts","../generated/models/listApiKeysIncludeRevoked.ts","../generated/models/listArtifactsSortBy.ts","../generated/models/listArtifactsSortOrder.ts","../generated/models/listCallFeedbackSortBy.ts","../generated/models/listCallFeedbackSortOrder.ts","../generated/models/listCallsDirection.ts","../generated/models/listCallsSortBy.ts","../generated/models/listCallsSortOrder.ts","../generated/models/listCallsStatus.ts","../generated/models/listClaimsSortBy.ts","../generated/models/listClaimsSortOrder.ts","../generated/models/listEmailsSortBy.ts","../generated/models/listEmailsSortOrder.ts","../generated/models/listExtractorJobsExtractorType.ts","../generated/models/listExtractorJobsSortBy.ts","../generated/models/listExtractorJobsSortOrder.ts","../generated/models/listExtractorJobsStatus.ts","../generated/models/listExtractorsSortBy.ts","../generated/models/listExtractorsSortOrder.ts","../generated/models/listExtractsSortBy.ts","../generated/models/listExtractsSortOrder.ts","../generated/models/listInboxesSortBy.ts","../generated/models/listInboxesSortOrder.ts","../generated/models/listJobsStatusItem.ts","../generated/models/listToolsSortBy.ts","../generated/models/listToolsSortOrder.ts","../generated/models/listWebhookDeliveriesSortOrder.ts","../generated/models/listWorkersSortBy.ts","../generated/models/listWorkersSortOrder.ts","../generated/models/outboundJobStatus.ts","../generated/models/updateVoiceAgentModelsBodyLanguage.ts","../generated/models/updateVoiceAgentModelsBodyLlmModel.ts","../generated/models/updateVoiceAgentModelsBodySttModel.ts","../generated/models/updateVoiceAgentModelsBodyTtsModel.ts","../generated/models/updateVoiceAgentModelsBodyTtsProvider.ts","../generated/models/voiceAgentBackgroundSounds.ts","../generated/models/voiceAgentDirection.ts","../generated/models/voiceAgentLanguage.ts","../generated/models/voiceAgentLlmModel.ts","../generated/models/voiceAgentSttModel.ts","../generated/models/voiceAgentTtsModel.ts","../generated/models/voiceAgentTtsProvider.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\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 // Strip the API envelope ({ data, message }) — return payload directly\n return ((body as Record<string, unknown>)?.data ?? 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 v8.1.0 🍺\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 ApiKeyCreated,\n ApiKeyList,\n ConfirmationResponse,\n CreateApiKeyBody,\n ErrorResponse,\n ListApiKeysParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * List all API keys for your tenant.\n\nBy 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 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\" : value.toString());\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\nexport const listApiKeys = async (\n params?: ListApiKeysParams,\n options?: RequestInit\n): Promise<ApiKeyList> => {\n return customFetch<ApiKeyList>(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};\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\nKeys are scoped to an environment (`test` or `live`) and optionally accept an expiration date.\n * @summary Create an API key\n */\nexport const getCreateApiKeyUrl = () => {\n return `/platform/api-keys`;\n};\n\nexport const createApiKey = async (\n createApiKeyBody: CreateApiKeyBody,\n options?: RequestInit\n): Promise<ApiKeyCreated> => {\n return customFetch<ApiKeyCreated>(getCreateApiKeyUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createApiKeyBody),\n });\n};\n\nexport const getCreateApiKeyMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateApiKeyBody }) => {\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,\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};\n/**\n * Revoke an existing API key. Once revoked, the key can no longer be used for authentication.\n\nThis operation is irreversible — revoked keys cannot be re-enabled. Create a new key if needed.\n\nReturns 409 if the key is already revoked, 404 if the key does not exist.\n * @summary Revoke an API key\n */\nexport const getRevokeApiKeyUrl = (id: string) => {\n return `/platform/api-keys/${id}/revoke`;\n};\n\nexport const revokeApiKey = async (\n id: string,\n options?: RequestInit\n): Promise<ConfirmationResponse> => {\n return customFetch<ConfirmationResponse>(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};\n","/**\n * Generated by orval v8.1.0 🍺\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 ArtifactCreated,\n ArtifactDetail,\n ArtifactList,\n ArtifactMetadataKeys,\n CreateArtifactBody,\n ErrorResponse,\n GetArtifactMetadataKeysParams,\n GetArtifactUploadUrl200,\n GetArtifactUploadUrlBody,\n ListArtifactsParams,\n UpdateArtifactMetadataBody,\n UploadFileBody,\n UploadFileResponse,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Upload a document as a base64-encoded artifact for processing.\n\n**Limits:**\n\nMaximum 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 getCreateArtifactUrl = () => {\n return `/v1/artifacts`;\n};\n\nexport const createArtifact = async (\n createArtifactBody: CreateArtifactBody,\n options?: RequestInit\n): Promise<ArtifactCreated> => {\n return customFetch<ArtifactCreated>(getCreateArtifactUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createArtifactBody),\n });\n};\n\nexport const getCreateArtifactMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateArtifactBody }) => {\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,\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};\n/**\n * List all artifacts with pagination, filtering, and sorting.\n\n**Metadata Filtering:**\n\nUse bracket notation to filter by metadata keys:\n- `metadata[claim_id]=abc-123`\n- `metadata[source]=email`\n\nMultiple metadata filters can be combined (AND logic).\n * @summary List artifacts\n */\nexport const getListArtifactsUrl = (params?: ListArtifactsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/artifacts?${stringifiedParams}`\n : `/v1/artifacts`;\n};\n\nexport const listArtifacts = async (\n params?: ListArtifactsParams,\n options?: RequestInit\n): Promise<ArtifactList> => {\n return customFetch<ArtifactList>(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};\n/**\n * Retrieve a single artifact by ID, including its metadata, file URL, and extracted content.\n * @summary Get artifact\n */\nexport const getGetArtifactUrl = (id: string) => {\n return `/v1/artifacts/${id}`;\n};\n\nexport const getArtifact = async (\n id: string,\n options?: RequestInit\n): Promise<ArtifactDetail> => {\n return customFetch<ArtifactDetail>(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 = swrOptions?.enabled !== false && !!id;\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};\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 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\" : value.toString());\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\nexport const getArtifactMetadataKeys = async (\n params?: GetArtifactMetadataKeysParams,\n options?: RequestInit\n): Promise<ArtifactMetadataKeys> => {\n return customFetch<ArtifactMetadataKeys>(\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};\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 getGetArtifactUploadUrlUrl = () => {\n return `/v1/artifacts/get-upload-url`;\n};\n\nexport const getArtifactUploadUrl = async (\n getArtifactUploadUrlBody: GetArtifactUploadUrlBody,\n options?: RequestInit\n): Promise<GetArtifactUploadUrl200> => {\n return customFetch<GetArtifactUploadUrl200>(getGetArtifactUploadUrlUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(getArtifactUploadUrlBody),\n });\n};\n\nexport const getGetArtifactUploadUrlMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: GetArtifactUploadUrlBody }) => {\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,\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};\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 getUpdateArtifactMetadataUrl = (id: string) => {\n return `/v1/artifacts/${id}/metadata`;\n};\n\nexport const updateArtifactMetadata = async (\n id: string,\n updateArtifactMetadataBody: UpdateArtifactMetadataBody,\n options?: RequestInit\n): Promise<ArtifactDetail> => {\n return customFetch<ArtifactDetail>(getUpdateArtifactMetadataUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(updateArtifactMetadataBody),\n });\n};\n\nexport const getUpdateArtifactMetadataMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateArtifactMetadataBody }) => {\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,\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};\n/**\n * Upload a file for processing by passing a URL to a file. Use this for uploading larger files.\n\nThis 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 getUploadFileUrl = () => {\n return `/v1/upload-file`;\n};\n\nexport const uploadFile = async (\n uploadFileBody: UploadFileBody,\n options?: RequestInit\n): Promise<UploadFileResponse> => {\n return customFetch<UploadFileResponse>(getUploadFileUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(uploadFileBody),\n });\n};\n\nexport const getUploadFileMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UploadFileBody }) => {\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,\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 v8.1.0 🍺\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 AuthTokens,\n EmptyResponse,\n ErrorResponse,\n GetOAuthUrlParams,\n GetSessionToken200,\n GetSessionTokenBody,\n OAuthUrl,\n RefreshTokenBody,\n SignInBody,\n SignUpBody,\n} from \"../../models\";\n\nimport { customFetchNoAuth } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a new user account with email and password.\n * @summary Sign up\n */\nexport const getSignUpUrl = () => {\n return `/v1/auth/sign-up`;\n};\n\nexport const signUp = async (\n signUpBody: SignUpBody,\n options?: RequestInit\n): Promise<EmptyResponse> => {\n return customFetchNoAuth<EmptyResponse>(getSignUpUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(signUpBody),\n });\n};\n\nexport const getSignUpMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: SignUpBody }) => {\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,\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};\n/**\n * Authenticate using one of the supported methods:\n\n- **Password:** Email and password credentials\n- **OAuth:** Authorization code from OAuth flow\n- **Email OTP:** One-time password sent to email\n * @summary Sign in\n */\nexport const getSignInUrl = () => {\n return `/v1/auth/sign-in`;\n};\n\nexport const signIn = async (\n signInBody: SignInBody,\n options?: RequestInit\n): Promise<AuthTokens> => {\n return customFetchNoAuth<AuthTokens>(getSignInUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(signInBody),\n });\n};\n\nexport const getSignInMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: SignInBody }) => {\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,\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};\n/**\n * Exchange a valid access token and refresh token pair for new tokens.\n * @summary Refresh authentication token\n */\nexport const getRefreshTokenUrl = () => {\n return `/v1/auth/refresh-token`;\n};\n\nexport const refreshToken = async (\n refreshTokenBody: RefreshTokenBody,\n options?: RequestInit\n): Promise<AuthTokens> => {\n return customFetchNoAuth<AuthTokens>(getRefreshTokenUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(refreshTokenBody),\n });\n};\n\nexport const getRefreshTokenMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: RefreshTokenBody }) => {\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,\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};\n/**\n * Generate an OAuth authorization URL for a given provider. Use with PKCE flow.\n * @summary Get OAuth sign-in URL\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\" : value.toString());\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\nexport const getOAuthUrl = async (\n params: GetOAuthUrlParams,\n options?: RequestInit\n): Promise<OAuthUrl> => {\n return customFetchNoAuth<OAuthUrl>(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};\n/**\n * Exchange a Supabase 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.\n- If `tenant_id` is omitted, selects 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 getGetSessionTokenUrl = () => {\n return `/v1/auth/session`;\n};\n\nexport const getSessionToken = async (\n getSessionTokenBody: GetSessionTokenBody,\n options?: RequestInit\n): Promise<GetSessionToken200> => {\n return customFetchNoAuth<GetSessionToken200>(getGetSessionTokenUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(getSessionTokenBody),\n });\n};\n\nexport const getGetSessionTokenMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: GetSessionTokenBody }) => {\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,\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 CreateFeedbackRequest,\n ErrorResponse,\n Feedback,\n ListCallFeedbackParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create feedback for a specific message in a call. Author is derived from the authenticated user.\n * @summary Create feedback on a call message\n */\nexport const getCreateCallFeedbackUrl = (id: string) => {\n return `/v1/calls/${id}/feedback`;\n};\n\nexport const createCallFeedback = async (\n id: string,\n createFeedbackRequest: CreateFeedbackRequest,\n options?: RequestInit\n): Promise<Feedback> => {\n return customFetch<Feedback>(getCreateCallFeedbackUrl(id), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n/**\n * List all feedback for a call. Paginated.\n * @summary List feedback for a call\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\" : value.toString());\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\nexport const listCallFeedback = async (\n id: string,\n params?: ListCallFeedbackParams,\n options?: RequestInit\n): Promise<Feedback[]> => {\n return customFetch<Feedback[]>(getListCallFeedbackUrl(id, params), {\n ...options,\n method: \"GET\",\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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Delete a single feedback entry.\n * @summary Delete feedback\n */\nexport const getDeleteCallFeedbackUrl = (id: string, feedbackId: string) => {\n return `/v1/calls/${id}/feedback/${feedbackId}`;\n};\n\nexport const deleteCallFeedback = async (\n id: string,\n feedbackId: string,\n options?: RequestInit\n): Promise<null> => {\n return customFetch<null>(getDeleteCallFeedbackUrl(id, feedbackId), {\n ...options,\n method: \"DELETE\",\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 v8.1.0 🍺\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 CallAnalytics,\n CallDetail,\n CallEvaluation,\n CallList,\n ErrorResponse,\n GetCallAnalyticsParams,\n GetCallParams,\n ListCallsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * List all calls, with pagination, filtering, and sorting.\n\n**Filtering:**\n\nFilter by agent, direction, status, time range, phone number, and more. Phone number filter supports both exact E.164 matches and partial search.\n * @summary List calls\n */\nexport const getListCallsUrl = (params?: ListCallsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/calls?${stringifiedParams}`\n : `/v1/calls`;\n};\n\nexport const listCalls = async (\n params?: ListCallsParams,\n options?: RequestInit\n): Promise<CallList> => {\n return customFetch<CallList>(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};\n/**\n * Retrieve detailed information about a specific call.\n\nSet `include_messages=true` to include the full message transcript.\n * @summary Get call\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\" : value.toString());\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\nexport const getCall = async (\n id: string,\n params?: GetCallParams,\n options?: RequestInit\n): Promise<CallDetail> => {\n return customFetch<CallDetail>(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 = swrOptions?.enabled !== false && !!id;\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};\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 getGetCallEvaluationUrl = (id: string) => {\n return `/v1/calls/${id}/evaluation`;\n};\n\nexport const getCallEvaluation = async (\n id: string,\n options?: RequestInit\n): Promise<CallEvaluation> => {\n return customFetch<CallEvaluation>(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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Retrieve aggregated call analytics for a time range.\n\nIncludes summary statistics, call volume over time, evaluation scores, score and duration distributions, and per-metric performance.\n * @summary Get call analytics\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\" : value.toString());\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\nexport const getCallAnalytics = async (\n params: GetCallAnalyticsParams,\n options?: RequestInit\n): Promise<CallAnalytics> => {\n return customFetch<CallAnalytics>(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 v8.1.0 🍺\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 ClaimCreated,\n ClaimDetail,\n ClaimList,\n ErrorResponse,\n ListClaimsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a new empty claim. Returns the claim ID and the creation timestamp.\n * @summary Create claim\n */\nexport const getCreateClaimUrl = () => {\n return `/v1/claims`;\n};\n\nexport const createClaim = async (\n options?: RequestInit\n): Promise<ClaimCreated> => {\n return customFetch<ClaimCreated>(getCreateClaimUrl(), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getCreateClaimMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return createClaim(options);\n };\n};\nexport const getCreateClaimMutationKey = () => [`/v1/claims`] as const;\n\nexport type CreateClaimMutationResult = NonNullable<\n Awaited<ReturnType<typeof createClaim>>\n>;\n\n/**\n * @summary Create claim\n */\nexport const useCreateClaim = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createClaim>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof createClaim>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateClaimMutationKey();\n const swrFn = getCreateClaimMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * List all claims with pagination and sorting options.\n * @summary List claims\n */\nexport const getListClaimsUrl = (params?: ListClaimsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/claims?${stringifiedParams}`\n : `/v1/claims`;\n};\n\nexport const listClaims = async (\n params?: ListClaimsParams,\n options?: RequestInit\n): Promise<ClaimList> => {\n return customFetch<ClaimList>(getListClaimsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListClaimsKey = (params?: ListClaimsParams) =>\n [`/v1/claims`, ...(params ? [params] : [])] as const;\n\nexport type ListClaimsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listClaims>>\n>;\n\n/**\n * @summary List claims\n */\nexport const useListClaims = <TError = ErrorType<ErrorResponse>>(\n params?: ListClaimsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listClaims>>, 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 ? getListClaimsKey(params) : null));\n const swrFn = () => listClaims(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 * Retrieve detailed information about a claim, including its sources (emails), artifacts (documents), extractor job status, and extracted data.\n * @summary Get claim detail\n */\nexport const getGetClaimDetailUrl = (id: string) => {\n return `/v1/claims/${id}`;\n};\n\nexport const getClaimDetail = async (\n id: string,\n options?: RequestInit\n): Promise<ClaimDetail> => {\n return customFetch<ClaimDetail>(getGetClaimDetailUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetClaimDetailKey = (id: string) =>\n [`/v1/claims/${id}`] as const;\n\nexport type GetClaimDetailQueryResult = NonNullable<\n Awaited<ReturnType<typeof getClaimDetail>>\n>;\n\n/**\n * @summary Get claim detail\n */\nexport const useGetClaimDetail = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getClaimDetail>>,\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 && !!id;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetClaimDetailKey(id) : null));\n const swrFn = () => getClaimDetail(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 v8.1.0 🍺\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 CreateEmailBody,\n EmailCreated,\n EmailDetail,\n EmailList,\n ErrorResponse,\n ListEmailsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Ingest an email into the system.\n\nOptionally associate the email with an existing claim via `claim_id`.\n * @summary Create email\n */\nexport const getCreateEmailUrl = () => {\n return `/v1/emails`;\n};\n\nexport const createEmail = async (\n createEmailBody: CreateEmailBody,\n options?: RequestInit\n): Promise<EmailCreated> => {\n return customFetch<EmailCreated>(getCreateEmailUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createEmailBody),\n });\n};\n\nexport const getCreateEmailMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateEmailBody }) => {\n return createEmail(arg, options);\n };\n};\nexport const getCreateEmailMutationKey = () => [`/v1/emails`] as const;\n\nexport type CreateEmailMutationResult = NonNullable<\n Awaited<ReturnType<typeof createEmail>>\n>;\n\n/**\n * @summary Create email\n */\nexport const useCreateEmail = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createEmail>>,\n TError,\n Key,\n CreateEmailBody,\n Awaited<ReturnType<typeof createEmail>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateEmailMutationKey();\n const swrFn = getCreateEmailMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * List all emails with pagination and filtering.\n\n**Filtering:**\n\nFilter by email agent, sender, recipient, or content search.\n * @summary List emails\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/emails?${stringifiedParams}`\n : `/v1/emails`;\n};\n\nexport const listEmails = async (\n params?: ListEmailsParams,\n options?: RequestInit\n): Promise<EmailList> => {\n return customFetch<EmailList>(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};\n/**\n * Retrieve detailed information about a specific email, including full body content.\n * @summary Get email\n */\nexport const getGetEmailUrl = (emailId: string) => {\n return `/v1/emails/${emailId}`;\n};\n\nexport const getEmail = async (\n emailId: string,\n options?: RequestInit\n): Promise<EmailDetail> => {\n return customFetch<EmailDetail>(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 = swrOptions?.enabled !== false && !!emailId;\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 AgenticJobMessageList,\n CanceledExtractorJob,\n CreateExtractorJobBody,\n ErrorResponse,\n ExtractorJobCreated,\n ExtractorJobList,\n GetExtractorJobResponse,\n ListAgenticJobMessagesParams,\n ListExtractorJobsParams,\n UpdateExtractorJobScopeBody,\n UpdatedExtractorJob,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * List all extraction jobs with pagination, filtering, and sorting.\n\n**Type Filtering:**\n\nFilter by `extractor_type` to see only `basic` or `agentic` jobs. Omit to return all types.\n\n**Scope Filtering:**\n\nUse bracket notation to filter by scope keys:\n- `scope[call_id]=abc-123`\n- `scope[email_id]=xyz-456`\n\nMultiple scope filters can be combined (AND logic).\n * @summary List extractor jobs\n */\nexport const getListExtractorJobsUrl = (params?: ListExtractorJobsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractor-jobs?${stringifiedParams}`\n : `/v1/extractor-jobs`;\n};\n\nexport const listExtractorJobs = async (\n params?: ListExtractorJobsParams,\n options?: RequestInit\n): Promise<ExtractorJobList> => {\n return customFetch<ExtractorJobList>(getListExtractorJobsUrl(params), {\n ...options,\n method: \"GET\",\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};\n/**\n * Create a new extraction job for the specified extractor.\n\nProvide 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 getCreateExtractorJobUrl = () => {\n return `/v1/extractor-jobs`;\n};\n\nexport const createExtractorJob = async (\n createExtractorJobBody: CreateExtractorJobBody,\n options?: RequestInit\n): Promise<ExtractorJobCreated> => {\n return customFetch<ExtractorJobCreated>(getCreateExtractorJobUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createExtractorJobBody),\n });\n};\n\nexport const getCreateExtractorJobMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorJobBody }) => {\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,\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};\n/**\n * Retrieve detailed information about a specific extractor job, including its status, timing, and result.\n * @summary Get extractor job\n */\nexport const getGetExtractorJobUrl = (id: string) => {\n return `/v1/extractor-jobs/${id}`;\n};\n\nexport const getExtractorJob = async (\n id: string,\n options?: RequestInit\n): Promise<GetExtractorJobResponse> => {\n return customFetch<GetExtractorJobResponse>(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 = swrOptions?.enabled !== false && !!id;\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 * Cancel a queued or in-progress extractor job. Returns the updated job with its new status.\n * @summary Cancel extractor job\n */\nexport const getCancelExtractorJobUrl = (id: string) => {\n return `/v1/extractor-jobs/${id}/cancel`;\n};\n\nexport const cancelExtractorJob = async (\n id: string,\n options?: RequestInit\n): Promise<CanceledExtractorJob> => {\n return customFetch<CanceledExtractorJob>(getCancelExtractorJobUrl(id), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getCancelExtractorJobMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return cancelExtractorJob(id, options);\n };\n};\nexport const getCancelExtractorJobMutationKey = (id: string) =>\n [`/v1/extractor-jobs/${id}/cancel`] as const;\n\nexport type CancelExtractorJobMutationResult = NonNullable<\n Awaited<ReturnType<typeof cancelExtractorJob>>\n>;\n\n/**\n * @summary Cancel extractor job\n */\nexport const useCancelExtractorJob = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof cancelExtractorJob>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof cancelExtractorJob>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCancelExtractorJobMutationKey(id);\n const swrFn = getCancelExtractorJobMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * Retrieve agent messages emitted during an agentic extractor job run, ordered by emission time. Supports cursor-style pagination via `after` and `count`.\n * @summary List agentic job messages\n */\nexport const getListAgenticJobMessagesUrl = (\n id: string,\n params?: ListAgenticJobMessagesParams\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractor-jobs/${id}/messages?${stringifiedParams}`\n : `/v1/extractor-jobs/${id}/messages`;\n};\n\nexport const listAgenticJobMessages = async (\n id: string,\n params?: ListAgenticJobMessagesParams,\n options?: RequestInit\n): Promise<AgenticJobMessageList> => {\n return customFetch<AgenticJobMessageList>(\n getListAgenticJobMessagesUrl(id, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListAgenticJobMessagesKey = (\n id: string,\n params?: ListAgenticJobMessagesParams\n) =>\n [`/v1/extractor-jobs/${id}/messages`, ...(params ? [params] : [])] as const;\n\nexport type ListAgenticJobMessagesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listAgenticJobMessages>>\n>;\n\n/**\n * @summary List agentic job messages\n */\nexport const useListAgenticJobMessages = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListAgenticJobMessagesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listAgenticJobMessages>>,\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 && !!id;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListAgenticJobMessagesKey(id, params) : null));\n const swrFn = () => listAgenticJobMessages(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};\n/**\n * Merge-update scope on an existing extractor job. Provided keys are added or overwritten; other existing keys are preserved.\n * @summary Update extractor job scope\n */\nexport const getUpdateExtractorJobScopeUrl = (id: string) => {\n return `/v1/extractor-jobs/${id}/scope`;\n};\n\nexport const updateExtractorJobScope = async (\n id: string,\n updateExtractorJobScopeBody: UpdateExtractorJobScopeBody,\n options?: RequestInit\n): Promise<UpdatedExtractorJob> => {\n return customFetch<UpdatedExtractorJob>(getUpdateExtractorJobScopeUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(updateExtractorJobScopeBody),\n });\n};\n\nexport const getUpdateExtractorJobScopeMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateExtractorJobScopeBody }) => {\n return updateExtractorJobScope(id, arg, options);\n };\n};\nexport const getUpdateExtractorJobScopeMutationKey = (id: string) =>\n [`/v1/extractor-jobs/${id}/scope`] as const;\n\nexport type UpdateExtractorJobScopeMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateExtractorJobScope>>\n>;\n\n/**\n * @summary Update extractor job scope\n */\nexport const useUpdateExtractorJobScope = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateExtractorJobScope>>,\n TError,\n Key,\n UpdateExtractorJobScopeBody,\n Awaited<ReturnType<typeof updateExtractorJobScope>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateExtractorJobScopeMutationKey(id);\n const swrFn = getUpdateExtractorJobScopeMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval v8.1.0 🍺\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 CreateExtractorBody,\n ErrorResponse,\n ExtractorCreated,\n ExtractorList,\n ExtractorUpdated,\n GetExtractorResponse,\n ListExtractorsParams,\n UpdateExtractorBody,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\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 getCreateExtractorUrl = () => {\n return `/v1/extractors`;\n};\n\nexport const createExtractor = async (\n createExtractorBody: CreateExtractorBody,\n options?: RequestInit\n): Promise<ExtractorCreated> => {\n return customFetch<ExtractorCreated>(getCreateExtractorUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createExtractorBody),\n });\n};\n\nexport const getCreateExtractorMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorBody }) => {\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,\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};\n/**\n * List all extractors with pagination, filtering, and sorting.\n\nFilter by name using the `name` query parameter.\n * @summary List extractors\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractors?${stringifiedParams}`\n : `/v1/extractors`;\n};\n\nexport const listExtractors = async (\n params?: ListExtractorsParams,\n options?: RequestInit\n): Promise<ExtractorList> => {\n return customFetch<ExtractorList>(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};\n/**\n * Retrieve a single extractor by ID, including its schema and version.\n * @summary Get extractor\n */\nexport const getGetExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\nexport const getExtractor = async (\n id: string,\n options?: RequestInit\n): Promise<GetExtractorResponse> => {\n return customFetch<GetExtractorResponse>(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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Update an extractor's schema. This creates a new version of the extractor.\n * @summary Update extractor\n */\nexport const getUpdateExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\nexport const updateExtractor = async (\n id: string,\n updateExtractorBody: UpdateExtractorBody,\n options?: RequestInit\n): Promise<ExtractorUpdated> => {\n return customFetch<ExtractorUpdated>(getUpdateExtractorUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 Extract,\n ExtractList,\n GetExtractCitations200,\n ListExtractsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Retrieve a single extract by ID, including the extraction result data.\n * @summary Get extract\n */\nexport const getGetExtractUrl = (id: string) => {\n return `/v1/extracts/${id}`;\n};\n\nexport const getExtract = async (\n id: string,\n options?: RequestInit\n): Promise<Extract> => {\n return customFetch<Extract>(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 = swrOptions?.enabled !== false && !!id;\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};\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 getGetExtractCitationsUrl = (id: string) => {\n return `/v1/extracts/${id}/citations`;\n};\n\nexport const getExtractCitations = async (\n id: string,\n options?: RequestInit\n): Promise<GetExtractCitations200> => {\n return customFetch<GetExtractCitations200>(getGetExtractCitationsUrl(id), {\n ...options,\n method: \"GET\",\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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * List all extracts with pagination, filtering, and sorting.\n\n**Scope Filtering:**\n\nUse bracket notation to filter by scope keys:\n- `scope[claim_id]=abc-123`\n\nMultiple scope filters can be combined (AND logic).\n * @summary List extracts\n */\nexport const getListExtractsUrl = (params?: ListExtractsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extracts?${stringifiedParams}`\n : `/v1/extracts`;\n};\n\nexport const listExtracts = async (\n params?: ListExtractsParams,\n options?: RequestInit\n): Promise<ExtractList> => {\n return customFetch<ExtractList>(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 v8.1.0 🍺\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 CheckInboxAvailabilityParams,\n CreateInboxBody,\n ErrorResponse,\n Inbox,\n InboxAvailability,\n InboxList,\n ListInboxesParams,\n UpdateInboxBody,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Check whether a given email username is available for creating a new inbox.\n\nFor 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 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\" : value.toString());\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\nexport const checkInboxAvailability = async (\n params: CheckInboxAvailabilityParams,\n options?: RequestInit\n): Promise<InboxAvailability> => {\n return customFetch<InboxAvailability>(getCheckInboxAvailabilityUrl(params), {\n ...options,\n method: \"GET\",\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};\n/**\n * Create a new inbox linked to an extractor.\n\nThe inbox will receive emails at the assigned address and automatically process attachments using the specified extractor.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`POST /v1/email-agents`\n * @summary Create inbox\n */\nexport const getCreateInboxUrl = () => {\n return `/v1/inboxes`;\n};\n\nexport const createInbox = async (\n createInboxBody: CreateInboxBody,\n options?: RequestInit\n): Promise<Inbox> => {\n return customFetch<Inbox>(getCreateInboxUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createInboxBody),\n });\n};\n\nexport const getCreateInboxMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateInboxBody }) => {\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,\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};\n/**\n * List all inboxes with pagination and sorting.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/email-agents`\n * @summary List inboxes\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/inboxes?${stringifiedParams}`\n : `/v1/inboxes`;\n};\n\nexport const listInboxes = async (\n params?: ListInboxesParams,\n options?: RequestInit\n): Promise<InboxList> => {\n return customFetch<InboxList>(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};\n/**\n * Update an inbox's configuration.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`PATCH /v1/email-agents/{id}`\n * @summary Update inbox\n */\nexport const getUpdateInboxUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}`;\n};\n\nexport const updateInbox = async (\n inboxId: string,\n updateInboxBody: UpdateInboxBody,\n options?: RequestInit\n): Promise<Inbox> => {\n return customFetch<Inbox>(getUpdateInboxUrl(inboxId), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 ListJobsParams,\n OutboundJob,\n OutboundJobList,\n ScheduleJobBody,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Schedule a new outbound call job for a voice agent.\n\nThe job can be scheduled for a future time or triggered immediately with `trigger_immediately: true`.\n\n**Scheduling:**\n\nWhen scheduling for a future time, provide `scheduled_at` (ISO 8601) and optionally `schedule_window_minutes` (minimum 10 minutes).\n\nFor 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 getScheduleJobUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/jobs`;\n};\n\nexport const scheduleJob = async (\n voiceAgentId: string,\n scheduleJobBody: ScheduleJobBody,\n options?: RequestInit\n): Promise<OutboundJob> => {\n return customFetch<OutboundJob>(getScheduleJobUrl(voiceAgentId), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\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\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/agents/jobs`\n * @summary List outbound jobs\n */\nexport const getListJobsUrl = (params: ListJobsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\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\nexport const listJobs = async (\n params: ListJobsParams,\n options?: RequestInit\n): Promise<OutboundJobList> => {\n return customFetch<OutboundJobList>(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};\n/**\n * Cancel a pending or queued outbound job. Jobs that are already in progress or completed cannot be canceled.\n\nFor 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 getCancelJobUrl = (jobId: string) => {\n return `/v1/voice-agents/jobs/${jobId}/cancel`;\n};\n\nexport const cancelJob = async (\n jobId: string,\n options?: RequestInit\n): Promise<OutboundJob> => {\n return customFetch<OutboundJob>(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 v8.1.0 🍺\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, Profile } from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Retrieve the current user's profile information.\n * @summary Get profile\n */\nexport const getGetProfileUrl = () => {\n return `/v1/profile`;\n};\n\nexport const getProfile = async (options?: RequestInit): Promise<Profile> => {\n return customFetch<Profile>(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 v8.1.0 🍺\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 CodeToolCreated,\n CodeToolUpdated,\n CreateToolBody,\n ErrorResponse,\n ExecuteCodeBody,\n GetToolResponse,\n ListToolsParams,\n ToolExecutionResult,\n ToolList,\n UpdateToolBody,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a new code tool that can be attached to agents. Provide the tool's name, code, description, and optionally an API key.\n * @summary Create tool\n */\nexport const getCreateToolUrl = () => {\n return `/v1/tools`;\n};\n\nexport const createTool = async (\n createToolBody: CreateToolBody,\n options?: RequestInit\n): Promise<CodeToolCreated> => {\n return customFetch<CodeToolCreated>(getCreateToolUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createToolBody),\n });\n};\n\nexport const getCreateToolMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateToolBody }) => {\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,\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};\n/**\n * List all code tools with sorting.\n\nOptionally filter by `call_agent_id` to list only tools attached to a specific agent.\n * @summary List tools\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/tools?${stringifiedParams}`\n : `/v1/tools`;\n};\n\nexport const listTools = async (\n params?: ListToolsParams,\n options?: RequestInit\n): Promise<ToolList> => {\n return customFetch<ToolList>(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};\n/**\n * Execute a code tool with the given parameters. Returns the result, any errors, and execution traces.\n * @summary Execute tool\n */\nexport const getExecuteCodeUrl = (id: string) => {\n return `/v1/tools/${id}/execute`;\n};\n\nexport const executeCode = async (\n id: string,\n executeCodeBody: ExecuteCodeBody,\n options?: RequestInit\n): Promise<ToolExecutionResult> => {\n return customFetch<ToolExecutionResult>(getExecuteCodeUrl(id), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n/**\n * Retrieve a single tool by ID, including its code, schema, and description.\n * @summary Get tool\n */\nexport const getGetToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\nexport const getTool = async (\n id: string,\n options?: RequestInit\n): Promise<GetToolResponse> => {\n return customFetch<GetToolResponse>(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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Update a code tool's name, description, code, or API key. All fields are optional — only provided fields are updated.\n * @summary Update tool\n */\nexport const getUpdateToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\nexport const updateTool = async (\n id: string,\n updateToolBody: UpdateToolBody,\n options?: RequestInit\n): Promise<CodeToolUpdated> => {\n return customFetch<CodeToolUpdated>(getUpdateToolUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 AddToolsToVoiceAgentBody,\n AddToolsToVoiceAgentResponse,\n CreateVoiceAgentBody,\n CreateVoiceAgentResponse,\n DeleteToolsFromVoiceAgentBody,\n DeleteToolsFromVoiceAgentResponse,\n ErrorResponse,\n GetVoiceAgentResponse,\n ListVoiceAgentsParams,\n UpdateCallControlsBody,\n UpdateVoiceAgentCallControlsResponse,\n UpdateVoiceAgentModelsBody,\n UpdateVoiceAgentModelsResponse,\n VoiceAgentList,\n VoiceAgentPrompt,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * List all voice agents for your tenant.\n\n**Filtering:**\n\nFilter voice agents by name using the `agent_name` query parameter (exact match).\n\n**Response:**\n\nReturns an array of all voice agents with their configurations and a total count.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/agents`\n * @summary List voice agents\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\" : value.toString());\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\nexport const listVoiceAgents = async (\n params?: ListVoiceAgentsParams,\n options?: RequestInit\n): Promise<VoiceAgentList> => {\n return customFetch<VoiceAgentList>(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};\n/**\n * Create a new voice agent with the specified configuration.\n\n**Required fields:**\n\nAll fields in the request body are required except `phone_number_id` and `transfer_phone_number`.\n\n**Response:**\n\nReturns the created voice agent with its ID and configuration.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`POST /v1/agents`\n * @summary Create voice agent\n */\nexport const getCreateVoiceAgentUrl = () => {\n return `/v1/voice-agents`;\n};\n\nexport const createVoiceAgent = async (\n createVoiceAgentBody: CreateVoiceAgentBody,\n options?: RequestInit\n): Promise<CreateVoiceAgentResponse> => {\n return customFetch<CreateVoiceAgentResponse>(getCreateVoiceAgentUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createVoiceAgentBody),\n });\n};\n\nexport const getCreateVoiceAgentMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateVoiceAgentBody }) => {\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,\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};\n/**\n * Retrieve a single voice agent by its ID.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/agents/{id}`\n * @summary Get voice agent\n */\nexport const getGetVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}`;\n};\n\nexport const getVoiceAgent = async (\n voiceAgentId: string,\n options?: RequestInit\n): Promise<GetVoiceAgentResponse> => {\n return customFetch<GetVoiceAgentResponse>(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 = swrOptions?.enabled !== false && !!voiceAgentId;\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};\n/**\n * Add one or more tools to a voice agent by their IDs.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`POST /v1/agents/{id}/tools`\n * @summary Add tools to voice agent\n */\nexport const getAddToolsToVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/tools`;\n};\n\nexport const addToolsToVoiceAgent = async (\n voiceAgentId: string,\n addToolsToVoiceAgentBody: AddToolsToVoiceAgentBody,\n options?: RequestInit\n): Promise<AddToolsToVoiceAgentResponse> => {\n return customFetch<AddToolsToVoiceAgentResponse>(\n getAddToolsToVoiceAgentUrl(voiceAgentId),\n {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(addToolsToVoiceAgentBody),\n }\n );\n};\n\nexport const getAddToolsToVoiceAgentMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: AddToolsToVoiceAgentBody }) => {\n return addToolsToVoiceAgent(voiceAgentId, arg, options);\n };\n};\nexport const getAddToolsToVoiceAgentMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/tools`] as const;\n\nexport type AddToolsToVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof addToolsToVoiceAgent>>\n>;\n\n/**\n * @summary Add tools to voice agent\n */\nexport const useAddToolsToVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof addToolsToVoiceAgent>>,\n TError,\n Key,\n AddToolsToVoiceAgentBody,\n Awaited<ReturnType<typeof addToolsToVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getAddToolsToVoiceAgentMutationKey(voiceAgentId);\n const swrFn = getAddToolsToVoiceAgentMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * Remove one or more tools from a voice agent by their IDs.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`DELETE /v1/agents/{id}/tools`\n * @summary Remove tools from voice agent\n */\nexport const getDeleteToolsFromVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/tools`;\n};\n\nexport const deleteToolsFromVoiceAgent = async (\n voiceAgentId: string,\n deleteToolsFromVoiceAgentBody: DeleteToolsFromVoiceAgentBody,\n options?: RequestInit\n): Promise<DeleteToolsFromVoiceAgentResponse> => {\n return customFetch<DeleteToolsFromVoiceAgentResponse>(\n getDeleteToolsFromVoiceAgentUrl(voiceAgentId),\n {\n ...options,\n method: \"DELETE\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(deleteToolsFromVoiceAgentBody),\n }\n );\n};\n\nexport const getDeleteToolsFromVoiceAgentMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: DeleteToolsFromVoiceAgentBody }) => {\n return deleteToolsFromVoiceAgent(voiceAgentId, arg, options);\n };\n};\nexport const getDeleteToolsFromVoiceAgentMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/tools`] as const;\n\nexport type DeleteToolsFromVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteToolsFromVoiceAgent>>\n>;\n\n/**\n * @summary Remove tools from voice agent\n */\nexport const useDeleteToolsFromVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteToolsFromVoiceAgent>>,\n TError,\n Key,\n DeleteToolsFromVoiceAgentBody,\n Awaited<ReturnType<typeof deleteToolsFromVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getDeleteToolsFromVoiceAgentMutationKey(voiceAgentId);\n const swrFn = getDeleteToolsFromVoiceAgentMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * Retrieve the available placeholder variables for a voice agent.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/agents/{id}/prompt`\n * @summary Get voice agent prompt\n */\nexport const getGetVoiceAgentPromptUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/prompt`;\n};\n\nexport const getVoiceAgentPrompt = async (\n voiceAgentId: string,\n options?: RequestInit\n): Promise<VoiceAgentPrompt> => {\n return customFetch<VoiceAgentPrompt>(\n getGetVoiceAgentPromptUrl(voiceAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentPromptKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/prompt`] 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 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 = swrOptions?.enabled !== false && !!voiceAgentId;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetVoiceAgentPromptKey(voiceAgentId) : null));\n const swrFn = () => getVoiceAgentPrompt(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};\n/**\n * Update the LLM, TTS, and STT model configuration for a voice agent.\n\nFor 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 getUpdateVoiceAgentModelsUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/models`;\n};\n\nexport const updateVoiceAgentModels = async (\n voiceAgentId: string,\n updateVoiceAgentModelsBody: UpdateVoiceAgentModelsBody,\n options?: RequestInit\n): Promise<UpdateVoiceAgentModelsResponse> => {\n return customFetch<UpdateVoiceAgentModelsResponse>(\n getUpdateVoiceAgentModelsUrl(voiceAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n/**\n * Update call control settings for a voice agent.\n\nConfigure whether the voice agent supports dial pad input, can end calls, and set a transfer phone number.\n\nFor 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 getUpdateCallControlsUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/call-controls`;\n};\n\nexport const updateCallControls = async (\n voiceAgentId: string,\n updateCallControlsBody: UpdateCallControlsBody,\n options?: RequestInit\n): Promise<UpdateVoiceAgentCallControlsResponse> => {\n return customFetch<UpdateVoiceAgentCallControlsResponse>(\n getUpdateCallControlsUrl(voiceAgentId),\n {\n ...options,\n method: \"PUT\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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 v8.1.0 🍺\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 CreateExtractorWebhookBody,\n CreateInboxWebhookBody,\n DeleteWebhookResponse,\n ErrorResponse,\n ExtractorWebhookList,\n InboxWebhookList,\n ListWebhookDeliveriesParams,\n VoiceAgentWebhookList,\n Webhook,\n WebhookDeliveryList,\n WebhookTestResult,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a webhook that fires when events occur for the specified voice agent.\n\nFor 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 getCreateAgentWebhookUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/webhooks`;\n};\n\nexport const createAgentWebhook = async (\n voiceAgentId: string,\n createAgentWebhookBody: CreateAgentWebhookBody,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(getCreateAgentWebhookUrl(voiceAgentId), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createAgentWebhookBody),\n });\n};\n\nexport const getCreateAgentWebhookMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateAgentWebhookBody }) => {\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,\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};\n/**\n * List all webhooks configured for a specific voice agent.\n\nFor 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 getListAgentWebhooksUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/webhooks`;\n};\n\nexport const listAgentWebhooks = async (\n voiceAgentId: string,\n options?: RequestInit\n): Promise<VoiceAgentWebhookList> => {\n return customFetch<VoiceAgentWebhookList>(\n getListAgentWebhooksUrl(voiceAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListAgentWebhooksKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/webhooks`] 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 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 = swrOptions?.enabled !== false && !!voiceAgentId;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListAgentWebhooksKey(voiceAgentId) : null));\n const swrFn = () => listAgentWebhooks(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};\n/**\n * Create a webhook that fires when events occur for the specified inbox.\n\nFor 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 getCreateInboxWebhookUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}/webhooks`;\n};\n\nexport const createInboxWebhook = async (\n inboxId: string,\n createInboxWebhookBody: CreateInboxWebhookBody,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(getCreateInboxWebhookUrl(inboxId), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createInboxWebhookBody),\n });\n};\n\nexport const getCreateInboxWebhookMutationFetcher = (\n inboxId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateInboxWebhookBody }) => {\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,\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};\n/**\n * List all webhooks configured for a specific inbox.\n\nFor 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 getListInboxWebhooksUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}/webhooks`;\n};\n\nexport const listInboxWebhooks = async (\n inboxId: string,\n options?: RequestInit\n): Promise<InboxWebhookList> => {\n return customFetch<InboxWebhookList>(getListInboxWebhooksUrl(inboxId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListInboxWebhooksKey = (inboxId: string) =>\n [`/v1/inboxes/${inboxId}/webhooks`] 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 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 = swrOptions?.enabled !== false && !!inboxId;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListInboxWebhooksKey(inboxId) : null));\n const swrFn = () => listInboxWebhooks(inboxId, 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 * Create a webhook that fires when extraction events occur for the specified extractor.\n * @summary Create extractor webhook\n */\nexport const getCreateExtractorWebhookUrl = (id: string) => {\n return `/v1/extractors/${id}/webhooks`;\n};\n\nexport const createExtractorWebhook = async (\n id: string,\n createExtractorWebhookBody: CreateExtractorWebhookBody,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(getCreateExtractorWebhookUrl(id), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createExtractorWebhookBody),\n });\n};\n\nexport const getCreateExtractorWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorWebhookBody }) => {\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,\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};\n/**\n * List all webhooks configured for a specific extractor.\n * @summary List extractor webhooks\n */\nexport const getListWebhooksUrl = (id: string) => {\n return `/v1/extractors/${id}/webhooks`;\n};\n\nexport const listWebhooks = async (\n id: string,\n options?: RequestInit\n): Promise<ExtractorWebhookList> => {\n return customFetch<ExtractorWebhookList>(getListWebhooksUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWebhooksKey = (id: string) =>\n [`/v1/extractors/${id}/webhooks`] 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 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 = swrOptions?.enabled !== false && !!id;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListWebhooksKey(id) : null));\n const swrFn = () => listWebhooks(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 * Permanently delete a webhook. This action is irreversible.\n * @summary Delete webhook\n */\nexport const getDeleteWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\nexport const deleteWebhook = async (\n id: string,\n options?: RequestInit\n): Promise<DeleteWebhookResponse> => {\n return customFetch<DeleteWebhookResponse>(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};\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 getGetWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\nexport const getWebhook = async (\n id: string,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(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 = swrOptions?.enabled !== false && !!id;\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};\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 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\" : value.toString());\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\nexport const listWebhookDeliveries = async (\n id: string,\n params?: ListWebhookDeliveriesParams,\n options?: RequestInit\n): Promise<WebhookDeliveryList> => {\n return customFetch<WebhookDeliveryList>(\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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Send a test event to a webhook endpoint. Returns the HTTP status code, response time, and any errors.\n * @summary Test webhook\n */\nexport const getTestWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}/test`;\n};\n\nexport const testWebhook = async (\n id: string,\n options?: RequestInit\n): Promise<WebhookTestResult> => {\n return customFetch<WebhookTestResult>(getTestWebhookUrl(id), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getTestWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return testWebhook(id, 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 Arguments,\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 v8.1.0 🍺\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 CreateWorkerBody,\n ErrorResponse,\n ListWorkersParams,\n WorkerCreated,\n WorkerList,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a new agentic extractor worker with a name, E2B template, and instruction template.\n * @summary Create worker\n */\nexport const getCreateWorkerUrl = () => {\n return `/v1/workers`;\n};\n\nexport const createWorker = async (\n createWorkerBody: CreateWorkerBody,\n options?: RequestInit\n): Promise<WorkerCreated> => {\n return customFetch<WorkerCreated>(getCreateWorkerUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createWorkerBody),\n });\n};\n\nexport const getCreateWorkerMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerBody }) => {\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,\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};\n/**\n * List all agentic extractor workers with pagination, filtering, and sorting.\n\nFilter by name using the `name` query parameter.\n * @summary List workers\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers?${stringifiedParams}`\n : `/v1/workers`;\n};\n\nexport const listWorkers = async (\n params?: ListWorkersParams,\n options?: RequestInit\n): Promise<WorkerList> => {\n return customFetch<WorkerList>(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};\n/**\n * Retrieve a single agentic extractor worker by ID.\n * @summary Get worker\n */\nexport const getGetWorkerUrl = (workerId: string) => {\n return `/v1/workers/${workerId}`;\n};\n\nexport const getWorker = async (\n workerId: string,\n options?: RequestInit\n): Promise<WorkerCreated> => {\n return customFetch<WorkerCreated>(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 = swrOptions?.enabled !== false && !!workerId;\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateEmailBodyDirection =\n (typeof CreateEmailBodyDirection)[keyof typeof CreateEmailBodyDirection];\n\nexport const CreateEmailBodyDirection = {\n inbound: \"inbound\",\n outbound: \"outbound\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateExtractorJobBodyExtractorType =\n (typeof CreateExtractorJobBodyExtractorType)[keyof typeof CreateExtractorJobBodyExtractorType];\n\nexport const CreateExtractorJobBodyExtractorType = {\n basic: \"basic\",\n agentic: \"agentic\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailCreatedDirection =\n (typeof EmailCreatedDirection)[keyof typeof EmailCreatedDirection];\n\nexport const EmailCreatedDirection = {\n inbound: \"inbound\",\n outbound: \"outbound\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of extractor\n */\nexport type ExtractorJobExtractorType =\n (typeof ExtractorJobExtractorType)[keyof typeof ExtractorJobExtractorType];\n\nexport const ExtractorJobExtractorType = {\n basic: \"basic\",\n agentic: \"agentic\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 microsoft: \"microsoft\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListClaimsSortBy =\n (typeof ListClaimsSortBy)[keyof typeof ListClaimsSortBy];\n\nexport const ListClaimsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListClaimsSortOrder =\n (typeof ListClaimsSortOrder)[keyof typeof ListClaimsSortOrder];\n\nexport const ListClaimsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorJobsExtractorType =\n (typeof ListExtractorJobsExtractorType)[keyof typeof ListExtractorJobsExtractorType];\n\nexport const ListExtractorJobsExtractorType = {\n basic: \"basic\",\n agentic: \"agentic\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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"]}
1
+ {"version":3,"sources":["../src/fetcher.ts","../src/auth.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/claims/claims.ts","../generated/endpoints/emails/emails.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/jobs/jobs.ts","../generated/endpoints/profiles/profiles.ts","../generated/endpoints/tools/tools.ts","../generated/endpoints/voice-agents/voice-agents.ts","../generated/endpoints/webhooks/webhooks.ts","../generated/endpoints/workers/workers.ts","../generated/models/callDetailDirection.ts","../generated/models/callDirection.ts","../generated/models/createApiKeyBodyEnvironment.ts","../generated/models/createEmailBodyDirection.ts","../generated/models/createExtractorJobBodyExtractorType.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/emailCreatedDirection.ts","../generated/models/emailDetailDirection.ts","../generated/models/emailDirection.ts","../generated/models/extractorJobExtractorType.ts","../generated/models/getOAuthUrlCodeChallengeMethod.ts","../generated/models/getOAuthUrlProvider.ts","../generated/models/listApiKeysIncludeRevoked.ts","../generated/models/listArtifactsSortBy.ts","../generated/models/listArtifactsSortOrder.ts","../generated/models/listCallFeedbackSortBy.ts","../generated/models/listCallFeedbackSortOrder.ts","../generated/models/listCallsDirection.ts","../generated/models/listCallsSortBy.ts","../generated/models/listCallsSortOrder.ts","../generated/models/listCallsStatus.ts","../generated/models/listClaimsSortBy.ts","../generated/models/listClaimsSortOrder.ts","../generated/models/listEmailsSortBy.ts","../generated/models/listEmailsSortOrder.ts","../generated/models/listExtractorJobsExtractorType.ts","../generated/models/listExtractorJobsSortBy.ts","../generated/models/listExtractorJobsSortOrder.ts","../generated/models/listExtractorJobsStatus.ts","../generated/models/listExtractorsSortBy.ts","../generated/models/listExtractorsSortOrder.ts","../generated/models/listExtractsSortBy.ts","../generated/models/listExtractsSortOrder.ts","../generated/models/listInboxesSortBy.ts","../generated/models/listInboxesSortOrder.ts","../generated/models/listJobsStatusItem.ts","../generated/models/listToolsSortBy.ts","../generated/models/listToolsSortOrder.ts","../generated/models/listWebhookDeliveriesSortOrder.ts","../generated/models/listWorkersSortBy.ts","../generated/models/listWorkersSortOrder.ts","../generated/models/outboundJobStatus.ts","../generated/models/updateVoiceAgentModelsBodyLanguage.ts","../generated/models/updateVoiceAgentModelsBodyLlmModel.ts","../generated/models/updateVoiceAgentModelsBodySttModel.ts","../generated/models/updateVoiceAgentModelsBodyTtsModel.ts","../generated/models/updateVoiceAgentModelsBodyTtsProvider.ts","../generated/models/voiceAgentBackgroundSounds.ts","../generated/models/voiceAgentDirection.ts","../generated/models/voiceAgentLanguage.ts","../generated/models/voiceAgentLlmModel.ts","../generated/models/voiceAgentSttModel.ts","../generated/models/voiceAgentTtsModel.ts","../generated/models/voiceAgentTtsProvider.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\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 // Strip the API envelope ({ data, message }) — return payload directly\n return ((body as Record<string, unknown>)?.data ?? 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 v8.1.0 🍺\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 ApiKeyCreated,\n ApiKeyList,\n ConfirmationResponse,\n CreateApiKeyBody,\n ErrorResponse,\n ListApiKeysParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * List all API keys for your tenant.\n\nBy 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 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\" : value.toString());\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\nexport const listApiKeys = async (\n params?: ListApiKeysParams,\n options?: RequestInit\n): Promise<ApiKeyList> => {\n return customFetch<ApiKeyList>(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};\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\nKeys are scoped to an environment (`test` or `live`) and optionally accept an expiration date.\n * @summary Create an API key\n */\nexport const getCreateApiKeyUrl = () => {\n return `/platform/api-keys`;\n};\n\nexport const createApiKey = async (\n createApiKeyBody: CreateApiKeyBody,\n options?: RequestInit\n): Promise<ApiKeyCreated> => {\n return customFetch<ApiKeyCreated>(getCreateApiKeyUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createApiKeyBody),\n });\n};\n\nexport const getCreateApiKeyMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateApiKeyBody }) => {\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,\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};\n/**\n * Revoke an existing API key. Once revoked, the key can no longer be used for authentication.\n\nThis operation is irreversible — revoked keys cannot be re-enabled. Create a new key if needed.\n\nReturns 409 if the key is already revoked, 404 if the key does not exist.\n * @summary Revoke an API key\n */\nexport const getRevokeApiKeyUrl = (id: string) => {\n return `/platform/api-keys/${id}/revoke`;\n};\n\nexport const revokeApiKey = async (\n id: string,\n options?: RequestInit\n): Promise<ConfirmationResponse> => {\n return customFetch<ConfirmationResponse>(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};\n","/**\n * Generated by orval v8.1.0 🍺\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 ArtifactCreated,\n ArtifactDetail,\n ArtifactList,\n ArtifactMetadataKeys,\n CreateArtifactBody,\n ErrorResponse,\n GetArtifactMetadataKeysParams,\n GetArtifactUploadUrl200,\n GetArtifactUploadUrlBody,\n ListArtifactsParams,\n UpdateArtifactMetadataBody,\n UploadFileBody,\n UploadFileResponse,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Upload a document as a base64-encoded artifact for processing.\n\n**Limits:**\n\nMaximum 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 getCreateArtifactUrl = () => {\n return `/v1/artifacts`;\n};\n\nexport const createArtifact = async (\n createArtifactBody: CreateArtifactBody,\n options?: RequestInit\n): Promise<ArtifactCreated> => {\n return customFetch<ArtifactCreated>(getCreateArtifactUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createArtifactBody),\n });\n};\n\nexport const getCreateArtifactMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateArtifactBody }) => {\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,\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};\n/**\n * List all artifacts with pagination, filtering, and sorting.\n\n**Metadata Filtering:**\n\nUse bracket notation to filter by metadata keys:\n- `metadata[claim_id]=abc-123`\n- `metadata[source]=email`\n\nMultiple metadata filters can be combined (AND logic).\n * @summary List artifacts\n */\nexport const getListArtifactsUrl = (params?: ListArtifactsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/artifacts?${stringifiedParams}`\n : `/v1/artifacts`;\n};\n\nexport const listArtifacts = async (\n params?: ListArtifactsParams,\n options?: RequestInit\n): Promise<ArtifactList> => {\n return customFetch<ArtifactList>(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};\n/**\n * Retrieve a single artifact by ID, including its metadata, file URL, and extracted content.\n * @summary Get artifact\n */\nexport const getGetArtifactUrl = (id: string) => {\n return `/v1/artifacts/${id}`;\n};\n\nexport const getArtifact = async (\n id: string,\n options?: RequestInit\n): Promise<ArtifactDetail> => {\n return customFetch<ArtifactDetail>(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 = swrOptions?.enabled !== false && !!id;\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};\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 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\" : value.toString());\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\nexport const getArtifactMetadataKeys = async (\n params?: GetArtifactMetadataKeysParams,\n options?: RequestInit\n): Promise<ArtifactMetadataKeys> => {\n return customFetch<ArtifactMetadataKeys>(\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};\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 getGetArtifactUploadUrlUrl = () => {\n return `/v1/artifacts/get-upload-url`;\n};\n\nexport const getArtifactUploadUrl = async (\n getArtifactUploadUrlBody: GetArtifactUploadUrlBody,\n options?: RequestInit\n): Promise<GetArtifactUploadUrl200> => {\n return customFetch<GetArtifactUploadUrl200>(getGetArtifactUploadUrlUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(getArtifactUploadUrlBody),\n });\n};\n\nexport const getGetArtifactUploadUrlMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: GetArtifactUploadUrlBody }) => {\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,\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};\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 getUpdateArtifactMetadataUrl = (id: string) => {\n return `/v1/artifacts/${id}/metadata`;\n};\n\nexport const updateArtifactMetadata = async (\n id: string,\n updateArtifactMetadataBody: UpdateArtifactMetadataBody,\n options?: RequestInit\n): Promise<ArtifactDetail> => {\n return customFetch<ArtifactDetail>(getUpdateArtifactMetadataUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(updateArtifactMetadataBody),\n });\n};\n\nexport const getUpdateArtifactMetadataMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateArtifactMetadataBody }) => {\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,\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};\n/**\n * Upload a file for processing by passing a URL to a file. Use this for uploading larger files.\n\nThis 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 getUploadFileUrl = () => {\n return `/v1/upload-file`;\n};\n\nexport const uploadFile = async (\n uploadFileBody: UploadFileBody,\n options?: RequestInit\n): Promise<UploadFileResponse> => {\n return customFetch<UploadFileResponse>(getUploadFileUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(uploadFileBody),\n });\n};\n\nexport const getUploadFileMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UploadFileBody }) => {\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,\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 v8.1.0 🍺\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 AuthTokens,\n EmptyResponse,\n ErrorResponse,\n GetOAuthUrlParams,\n GetSessionToken200,\n GetSessionTokenBody,\n OAuthUrl,\n RefreshTokenBody,\n SignInBody,\n SignUpBody,\n} from \"../../models\";\n\nimport { customFetchNoAuth } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a new user account with email and password.\n * @summary Sign up\n */\nexport const getSignUpUrl = () => {\n return `/v1/auth/sign-up`;\n};\n\nexport const signUp = async (\n signUpBody: SignUpBody,\n options?: RequestInit\n): Promise<EmptyResponse> => {\n return customFetchNoAuth<EmptyResponse>(getSignUpUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(signUpBody),\n });\n};\n\nexport const getSignUpMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: SignUpBody }) => {\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,\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};\n/**\n * Authenticate using one of the supported methods:\n\n- **Password:** Email and password credentials\n- **OAuth:** Authorization code from OAuth flow\n- **Email OTP:** One-time password sent to email\n * @summary Sign in\n */\nexport const getSignInUrl = () => {\n return `/v1/auth/sign-in`;\n};\n\nexport const signIn = async (\n signInBody: SignInBody,\n options?: RequestInit\n): Promise<AuthTokens> => {\n return customFetchNoAuth<AuthTokens>(getSignInUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(signInBody),\n });\n};\n\nexport const getSignInMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: SignInBody }) => {\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,\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};\n/**\n * Exchange a valid access token and refresh token pair for new tokens.\n * @summary Refresh authentication token\n */\nexport const getRefreshTokenUrl = () => {\n return `/v1/auth/refresh-token`;\n};\n\nexport const refreshToken = async (\n refreshTokenBody: RefreshTokenBody,\n options?: RequestInit\n): Promise<AuthTokens> => {\n return customFetchNoAuth<AuthTokens>(getRefreshTokenUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(refreshTokenBody),\n });\n};\n\nexport const getRefreshTokenMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: RefreshTokenBody }) => {\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,\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};\n/**\n * Generate an OAuth authorization URL for a given provider. Use with PKCE flow.\n * @summary Get OAuth sign-in URL\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\" : value.toString());\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\nexport const getOAuthUrl = async (\n params: GetOAuthUrlParams,\n options?: RequestInit\n): Promise<OAuthUrl> => {\n return customFetchNoAuth<OAuthUrl>(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};\n/**\n * Exchange a Supabase 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.\n- If `tenant_id` is omitted, selects 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 getGetSessionTokenUrl = () => {\n return `/v1/auth/session`;\n};\n\nexport const getSessionToken = async (\n getSessionTokenBody: GetSessionTokenBody,\n options?: RequestInit\n): Promise<GetSessionToken200> => {\n return customFetchNoAuth<GetSessionToken200>(getGetSessionTokenUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(getSessionTokenBody),\n });\n};\n\nexport const getGetSessionTokenMutationFetcher = (\n options?: SecondParameter<typeof customFetchNoAuth>\n) => {\n return (_: Key, { arg }: { arg: GetSessionTokenBody }) => {\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,\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 CreateFeedbackRequest,\n ErrorResponse,\n Feedback,\n ListCallFeedbackParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create feedback for a specific message in a call. Author is derived from the authenticated user.\n * @summary Create feedback on a call message\n */\nexport const getCreateCallFeedbackUrl = (id: string) => {\n return `/v1/calls/${id}/feedback`;\n};\n\nexport const createCallFeedback = async (\n id: string,\n createFeedbackRequest: CreateFeedbackRequest,\n options?: RequestInit\n): Promise<Feedback> => {\n return customFetch<Feedback>(getCreateCallFeedbackUrl(id), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n/**\n * List all feedback for a call. Paginated.\n * @summary List feedback for a call\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\" : value.toString());\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\nexport const listCallFeedback = async (\n id: string,\n params?: ListCallFeedbackParams,\n options?: RequestInit\n): Promise<Feedback[]> => {\n return customFetch<Feedback[]>(getListCallFeedbackUrl(id, params), {\n ...options,\n method: \"GET\",\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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Delete a single feedback entry.\n * @summary Delete feedback\n */\nexport const getDeleteCallFeedbackUrl = (id: string, feedbackId: string) => {\n return `/v1/calls/${id}/feedback/${feedbackId}`;\n};\n\nexport const deleteCallFeedback = async (\n id: string,\n feedbackId: string,\n options?: RequestInit\n): Promise<null> => {\n return customFetch<null>(getDeleteCallFeedbackUrl(id, feedbackId), {\n ...options,\n method: \"DELETE\",\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 v8.1.0 🍺\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 CallAnalytics,\n CallDetail,\n CallEvaluation,\n CallList,\n ErrorResponse,\n GetCallAnalyticsParams,\n GetCallParams,\n ListCallsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * List all calls, with pagination, filtering, and sorting.\n\n**Filtering:**\n\nFilter by agent, direction, status, time range, phone number, and more. Phone number filter supports both exact E.164 matches and partial search.\n * @summary List calls\n */\nexport const getListCallsUrl = (params?: ListCallsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/calls?${stringifiedParams}`\n : `/v1/calls`;\n};\n\nexport const listCalls = async (\n params?: ListCallsParams,\n options?: RequestInit\n): Promise<CallList> => {\n return customFetch<CallList>(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};\n/**\n * Retrieve detailed information about a specific call.\n\nSet `include_messages=true` to include the full message transcript.\n * @summary Get call\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\" : value.toString());\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\nexport const getCall = async (\n id: string,\n params?: GetCallParams,\n options?: RequestInit\n): Promise<CallDetail> => {\n return customFetch<CallDetail>(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 = swrOptions?.enabled !== false && !!id;\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};\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 getGetCallEvaluationUrl = (id: string) => {\n return `/v1/calls/${id}/evaluation`;\n};\n\nexport const getCallEvaluation = async (\n id: string,\n options?: RequestInit\n): Promise<CallEvaluation> => {\n return customFetch<CallEvaluation>(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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Retrieve aggregated call analytics for a time range.\n\nIncludes summary statistics, call volume over time, evaluation scores, score and duration distributions, and per-metric performance.\n * @summary Get call analytics\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\" : value.toString());\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\nexport const getCallAnalytics = async (\n params: GetCallAnalyticsParams,\n options?: RequestInit\n): Promise<CallAnalytics> => {\n return customFetch<CallAnalytics>(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 v8.1.0 🍺\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 ClaimCreated,\n ClaimDetail,\n ClaimList,\n ErrorResponse,\n ListClaimsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a new empty claim. Returns the claim ID and the creation timestamp.\n * @summary Create claim\n */\nexport const getCreateClaimUrl = () => {\n return `/v1/claims`;\n};\n\nexport const createClaim = async (\n options?: RequestInit\n): Promise<ClaimCreated> => {\n return customFetch<ClaimCreated>(getCreateClaimUrl(), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getCreateClaimMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return createClaim(options);\n };\n};\nexport const getCreateClaimMutationKey = () => [`/v1/claims`] as const;\n\nexport type CreateClaimMutationResult = NonNullable<\n Awaited<ReturnType<typeof createClaim>>\n>;\n\n/**\n * @summary Create claim\n */\nexport const useCreateClaim = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createClaim>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof createClaim>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateClaimMutationKey();\n const swrFn = getCreateClaimMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * List all claims with pagination and sorting options.\n * @summary List claims\n */\nexport const getListClaimsUrl = (params?: ListClaimsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/claims?${stringifiedParams}`\n : `/v1/claims`;\n};\n\nexport const listClaims = async (\n params?: ListClaimsParams,\n options?: RequestInit\n): Promise<ClaimList> => {\n return customFetch<ClaimList>(getListClaimsUrl(params), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListClaimsKey = (params?: ListClaimsParams) =>\n [`/v1/claims`, ...(params ? [params] : [])] as const;\n\nexport type ListClaimsQueryResult = NonNullable<\n Awaited<ReturnType<typeof listClaims>>\n>;\n\n/**\n * @summary List claims\n */\nexport const useListClaims = <TError = ErrorType<ErrorResponse>>(\n params?: ListClaimsParams,\n options?: {\n swr?: SWRConfiguration<Awaited<ReturnType<typeof listClaims>>, 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 ? getListClaimsKey(params) : null));\n const swrFn = () => listClaims(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 * Retrieve detailed information about a claim, including its sources (emails), artifacts (documents), extractor job status, and extracted data.\n * @summary Get claim detail\n */\nexport const getGetClaimDetailUrl = (id: string) => {\n return `/v1/claims/${id}`;\n};\n\nexport const getClaimDetail = async (\n id: string,\n options?: RequestInit\n): Promise<ClaimDetail> => {\n return customFetch<ClaimDetail>(getGetClaimDetailUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getGetClaimDetailKey = (id: string) =>\n [`/v1/claims/${id}`] as const;\n\nexport type GetClaimDetailQueryResult = NonNullable<\n Awaited<ReturnType<typeof getClaimDetail>>\n>;\n\n/**\n * @summary Get claim detail\n */\nexport const useGetClaimDetail = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof getClaimDetail>>,\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 && !!id;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getGetClaimDetailKey(id) : null));\n const swrFn = () => getClaimDetail(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 v8.1.0 🍺\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 CreateEmailBody,\n EmailCreated,\n EmailDetail,\n EmailList,\n ErrorResponse,\n ListEmailsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Ingest an email into the system.\n\nOptionally associate the email with an existing claim via `claim_id`.\n * @summary Create email\n */\nexport const getCreateEmailUrl = () => {\n return `/v1/emails`;\n};\n\nexport const createEmail = async (\n createEmailBody: CreateEmailBody,\n options?: RequestInit\n): Promise<EmailCreated> => {\n return customFetch<EmailCreated>(getCreateEmailUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createEmailBody),\n });\n};\n\nexport const getCreateEmailMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateEmailBody }) => {\n return createEmail(arg, options);\n };\n};\nexport const getCreateEmailMutationKey = () => [`/v1/emails`] as const;\n\nexport type CreateEmailMutationResult = NonNullable<\n Awaited<ReturnType<typeof createEmail>>\n>;\n\n/**\n * @summary Create email\n */\nexport const useCreateEmail = <TError = ErrorType<ErrorResponse>>(options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof createEmail>>,\n TError,\n Key,\n CreateEmailBody,\n Awaited<ReturnType<typeof createEmail>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n}) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCreateEmailMutationKey();\n const swrFn = getCreateEmailMutationFetcher(requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * List all emails with pagination and filtering.\n\n**Filtering:**\n\nFilter by email agent, sender, recipient, or content search.\n * @summary List emails\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/emails?${stringifiedParams}`\n : `/v1/emails`;\n};\n\nexport const listEmails = async (\n params?: ListEmailsParams,\n options?: RequestInit\n): Promise<EmailList> => {\n return customFetch<EmailList>(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};\n/**\n * Retrieve detailed information about a specific email, including full body content.\n * @summary Get email\n */\nexport const getGetEmailUrl = (emailId: string) => {\n return `/v1/emails/${emailId}`;\n};\n\nexport const getEmail = async (\n emailId: string,\n options?: RequestInit\n): Promise<EmailDetail> => {\n return customFetch<EmailDetail>(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 = swrOptions?.enabled !== false && !!emailId;\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 AgenticJobMessageList,\n CanceledExtractorJob,\n CreateExtractorJobBody,\n ErrorResponse,\n ExtractorJobCreated,\n ExtractorJobList,\n GetExtractorJobResponse,\n ListAgenticJobMessagesParams,\n ListExtractorJobsParams,\n UpdateExtractorJobScopeBody,\n UpdatedExtractorJob,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * List all extraction jobs with pagination, filtering, and sorting.\n\n**Type Filtering:**\n\nFilter by `extractor_type` to see only `basic` or `agentic` jobs. Omit to return all types.\n\n**Scope Filtering:**\n\nUse bracket notation to filter by scope keys:\n- `scope[call_id]=abc-123`\n- `scope[email_id]=xyz-456`\n\nMultiple scope filters can be combined (AND logic).\n * @summary List extractor jobs\n */\nexport const getListExtractorJobsUrl = (params?: ListExtractorJobsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractor-jobs?${stringifiedParams}`\n : `/v1/extractor-jobs`;\n};\n\nexport const listExtractorJobs = async (\n params?: ListExtractorJobsParams,\n options?: RequestInit\n): Promise<ExtractorJobList> => {\n return customFetch<ExtractorJobList>(getListExtractorJobsUrl(params), {\n ...options,\n method: \"GET\",\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};\n/**\n * Create a new extraction job for the specified extractor.\n\nProvide 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 getCreateExtractorJobUrl = () => {\n return `/v1/extractor-jobs`;\n};\n\nexport const createExtractorJob = async (\n createExtractorJobBody: CreateExtractorJobBody,\n options?: RequestInit\n): Promise<ExtractorJobCreated> => {\n return customFetch<ExtractorJobCreated>(getCreateExtractorJobUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createExtractorJobBody),\n });\n};\n\nexport const getCreateExtractorJobMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorJobBody }) => {\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,\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};\n/**\n * Retrieve detailed information about a specific extractor job, including its status, timing, and result.\n * @summary Get extractor job\n */\nexport const getGetExtractorJobUrl = (id: string) => {\n return `/v1/extractor-jobs/${id}`;\n};\n\nexport const getExtractorJob = async (\n id: string,\n options?: RequestInit\n): Promise<GetExtractorJobResponse> => {\n return customFetch<GetExtractorJobResponse>(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 = swrOptions?.enabled !== false && !!id;\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 * Cancel a queued or in-progress extractor job. Returns the updated job with its new status.\n * @summary Cancel extractor job\n */\nexport const getCancelExtractorJobUrl = (id: string) => {\n return `/v1/extractor-jobs/${id}/cancel`;\n};\n\nexport const cancelExtractorJob = async (\n id: string,\n options?: RequestInit\n): Promise<CanceledExtractorJob> => {\n return customFetch<CanceledExtractorJob>(getCancelExtractorJobUrl(id), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getCancelExtractorJobMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return cancelExtractorJob(id, options);\n };\n};\nexport const getCancelExtractorJobMutationKey = (id: string) =>\n [`/v1/extractor-jobs/${id}/cancel`] as const;\n\nexport type CancelExtractorJobMutationResult = NonNullable<\n Awaited<ReturnType<typeof cancelExtractorJob>>\n>;\n\n/**\n * @summary Cancel extractor job\n */\nexport const useCancelExtractorJob = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof cancelExtractorJob>>,\n TError,\n Key,\n Arguments,\n Awaited<ReturnType<typeof cancelExtractorJob>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey = swrOptions?.swrKey ?? getCancelExtractorJobMutationKey(id);\n const swrFn = getCancelExtractorJobMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * Retrieve agent messages emitted during an agentic extractor job run, ordered by emission time. Supports cursor-style pagination via `after` and `count`.\n * @summary List agentic job messages\n */\nexport const getListAgenticJobMessagesUrl = (\n id: string,\n params?: ListAgenticJobMessagesParams\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractor-jobs/${id}/messages?${stringifiedParams}`\n : `/v1/extractor-jobs/${id}/messages`;\n};\n\nexport const listAgenticJobMessages = async (\n id: string,\n params?: ListAgenticJobMessagesParams,\n options?: RequestInit\n): Promise<AgenticJobMessageList> => {\n return customFetch<AgenticJobMessageList>(\n getListAgenticJobMessagesUrl(id, params),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListAgenticJobMessagesKey = (\n id: string,\n params?: ListAgenticJobMessagesParams\n) =>\n [`/v1/extractor-jobs/${id}/messages`, ...(params ? [params] : [])] as const;\n\nexport type ListAgenticJobMessagesQueryResult = NonNullable<\n Awaited<ReturnType<typeof listAgenticJobMessages>>\n>;\n\n/**\n * @summary List agentic job messages\n */\nexport const useListAgenticJobMessages = <TError = ErrorType<ErrorResponse>>(\n id: string,\n params?: ListAgenticJobMessagesParams,\n options?: {\n swr?: SWRConfiguration<\n Awaited<ReturnType<typeof listAgenticJobMessages>>,\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 && !!id;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListAgenticJobMessagesKey(id, params) : null));\n const swrFn = () => listAgenticJobMessages(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};\n/**\n * Merge-update scope on an existing extractor job. Provided keys are added or overwritten; other existing keys are preserved.\n * @summary Update extractor job scope\n */\nexport const getUpdateExtractorJobScopeUrl = (id: string) => {\n return `/v1/extractor-jobs/${id}/scope`;\n};\n\nexport const updateExtractorJobScope = async (\n id: string,\n updateExtractorJobScopeBody: UpdateExtractorJobScopeBody,\n options?: RequestInit\n): Promise<UpdatedExtractorJob> => {\n return customFetch<UpdatedExtractorJob>(getUpdateExtractorJobScopeUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(updateExtractorJobScopeBody),\n });\n};\n\nexport const getUpdateExtractorJobScopeMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: UpdateExtractorJobScopeBody }) => {\n return updateExtractorJobScope(id, arg, options);\n };\n};\nexport const getUpdateExtractorJobScopeMutationKey = (id: string) =>\n [`/v1/extractor-jobs/${id}/scope`] as const;\n\nexport type UpdateExtractorJobScopeMutationResult = NonNullable<\n Awaited<ReturnType<typeof updateExtractorJobScope>>\n>;\n\n/**\n * @summary Update extractor job scope\n */\nexport const useUpdateExtractorJobScope = <TError = ErrorType<ErrorResponse>>(\n id: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof updateExtractorJobScope>>,\n TError,\n Key,\n UpdateExtractorJobScopeBody,\n Awaited<ReturnType<typeof updateExtractorJobScope>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getUpdateExtractorJobScopeMutationKey(id);\n const swrFn = getUpdateExtractorJobScopeMutationFetcher(id, requestOptions);\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n","/**\n * Generated by orval v8.1.0 🍺\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 CreateExtractorBody,\n ErrorResponse,\n ExtractorCreated,\n ExtractorList,\n ExtractorUpdated,\n GetExtractorResponse,\n ListExtractorsParams,\n UpdateExtractorBody,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\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 getCreateExtractorUrl = () => {\n return `/v1/extractors`;\n};\n\nexport const createExtractor = async (\n createExtractorBody: CreateExtractorBody,\n options?: RequestInit\n): Promise<ExtractorCreated> => {\n return customFetch<ExtractorCreated>(getCreateExtractorUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createExtractorBody),\n });\n};\n\nexport const getCreateExtractorMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorBody }) => {\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,\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};\n/**\n * List all extractors with pagination, filtering, and sorting.\n\nFilter by name using the `name` query parameter.\n * @summary List extractors\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extractors?${stringifiedParams}`\n : `/v1/extractors`;\n};\n\nexport const listExtractors = async (\n params?: ListExtractorsParams,\n options?: RequestInit\n): Promise<ExtractorList> => {\n return customFetch<ExtractorList>(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};\n/**\n * Retrieve a single extractor by ID, including its schema and version.\n * @summary Get extractor\n */\nexport const getGetExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\nexport const getExtractor = async (\n id: string,\n options?: RequestInit\n): Promise<GetExtractorResponse> => {\n return customFetch<GetExtractorResponse>(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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Update an extractor's schema. This creates a new version of the extractor.\n * @summary Update extractor\n */\nexport const getUpdateExtractorUrl = (id: string) => {\n return `/v1/extractors/${id}`;\n};\n\nexport const updateExtractor = async (\n id: string,\n updateExtractorBody: UpdateExtractorBody,\n options?: RequestInit\n): Promise<ExtractorUpdated> => {\n return customFetch<ExtractorUpdated>(getUpdateExtractorUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 Extract,\n ExtractList,\n GetExtractCitations200,\n ListExtractsParams,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Retrieve a single extract by ID, including the extraction result data.\n * @summary Get extract\n */\nexport const getGetExtractUrl = (id: string) => {\n return `/v1/extracts/${id}`;\n};\n\nexport const getExtract = async (\n id: string,\n options?: RequestInit\n): Promise<Extract> => {\n return customFetch<Extract>(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 = swrOptions?.enabled !== false && !!id;\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};\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 getGetExtractCitationsUrl = (id: string) => {\n return `/v1/extracts/${id}/citations`;\n};\n\nexport const getExtractCitations = async (\n id: string,\n options?: RequestInit\n): Promise<GetExtractCitations200> => {\n return customFetch<GetExtractCitations200>(getGetExtractCitationsUrl(id), {\n ...options,\n method: \"GET\",\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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * List all extracts with pagination, filtering, and sorting.\n\n**Scope Filtering:**\n\nUse bracket notation to filter by scope keys:\n- `scope[claim_id]=abc-123`\n\nMultiple scope filters can be combined (AND logic).\n * @summary List extracts\n */\nexport const getListExtractsUrl = (params?: ListExtractsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/extracts?${stringifiedParams}`\n : `/v1/extracts`;\n};\n\nexport const listExtracts = async (\n params?: ListExtractsParams,\n options?: RequestInit\n): Promise<ExtractList> => {\n return customFetch<ExtractList>(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 v8.1.0 🍺\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 CheckInboxAvailabilityParams,\n CreateInboxBody,\n ErrorResponse,\n Inbox,\n InboxAvailability,\n InboxList,\n ListInboxesParams,\n UpdateInboxBody,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Check whether a given email username is available for creating a new inbox.\n\nFor 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 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\" : value.toString());\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\nexport const checkInboxAvailability = async (\n params: CheckInboxAvailabilityParams,\n options?: RequestInit\n): Promise<InboxAvailability> => {\n return customFetch<InboxAvailability>(getCheckInboxAvailabilityUrl(params), {\n ...options,\n method: \"GET\",\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};\n/**\n * Create a new inbox linked to an extractor.\n\nThe inbox will receive emails at the assigned address and automatically process attachments using the specified extractor.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`POST /v1/email-agents`\n * @summary Create inbox\n */\nexport const getCreateInboxUrl = () => {\n return `/v1/inboxes`;\n};\n\nexport const createInbox = async (\n createInboxBody: CreateInboxBody,\n options?: RequestInit\n): Promise<Inbox> => {\n return customFetch<Inbox>(getCreateInboxUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createInboxBody),\n });\n};\n\nexport const getCreateInboxMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateInboxBody }) => {\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,\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};\n/**\n * List all inboxes with pagination and sorting.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/email-agents`\n * @summary List inboxes\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/inboxes?${stringifiedParams}`\n : `/v1/inboxes`;\n};\n\nexport const listInboxes = async (\n params?: ListInboxesParams,\n options?: RequestInit\n): Promise<InboxList> => {\n return customFetch<InboxList>(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};\n/**\n * Update an inbox's configuration.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`PATCH /v1/email-agents/{id}`\n * @summary Update inbox\n */\nexport const getUpdateInboxUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}`;\n};\n\nexport const updateInbox = async (\n inboxId: string,\n updateInboxBody: UpdateInboxBody,\n options?: RequestInit\n): Promise<Inbox> => {\n return customFetch<Inbox>(getUpdateInboxUrl(inboxId), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 ListJobsParams,\n OutboundJob,\n OutboundJobList,\n ScheduleJobBody,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Schedule a new outbound call job for a voice agent.\n\nThe job can be scheduled for a future time or triggered immediately with `trigger_immediately: true`.\n\n**Scheduling:**\n\nWhen scheduling for a future time, provide `scheduled_at` (ISO 8601) and optionally `schedule_window_minutes` (minimum 10 minutes).\n\nFor 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 getScheduleJobUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/jobs`;\n};\n\nexport const scheduleJob = async (\n voiceAgentId: string,\n scheduleJobBody: ScheduleJobBody,\n options?: RequestInit\n): Promise<OutboundJob> => {\n return customFetch<OutboundJob>(getScheduleJobUrl(voiceAgentId), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\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\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/agents/jobs`\n * @summary List outbound jobs\n */\nexport const getListJobsUrl = (params: ListJobsParams) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? \"null\" : value.toString());\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\nexport const listJobs = async (\n params: ListJobsParams,\n options?: RequestInit\n): Promise<OutboundJobList> => {\n return customFetch<OutboundJobList>(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};\n/**\n * Cancel a pending or queued outbound job. Jobs that are already in progress or completed cannot be canceled.\n\nFor 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 getCancelJobUrl = (jobId: string) => {\n return `/v1/voice-agents/jobs/${jobId}/cancel`;\n};\n\nexport const cancelJob = async (\n jobId: string,\n options?: RequestInit\n): Promise<OutboundJob> => {\n return customFetch<OutboundJob>(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 v8.1.0 🍺\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, Profile } from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Retrieve the current user's profile information.\n * @summary Get profile\n */\nexport const getGetProfileUrl = () => {\n return `/v1/profile`;\n};\n\nexport const getProfile = async (options?: RequestInit): Promise<Profile> => {\n return customFetch<Profile>(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 v8.1.0 🍺\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 CodeToolCreated,\n CodeToolUpdated,\n CreateToolBody,\n ErrorResponse,\n ExecuteCodeBody,\n GetToolResponse,\n ListToolsParams,\n ToolExecutionResult,\n ToolList,\n UpdateToolBody,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a new code tool that can be attached to agents. Provide the tool's name, code, description, and optionally an API key.\n * @summary Create tool\n */\nexport const getCreateToolUrl = () => {\n return `/v1/tools`;\n};\n\nexport const createTool = async (\n createToolBody: CreateToolBody,\n options?: RequestInit\n): Promise<CodeToolCreated> => {\n return customFetch<CodeToolCreated>(getCreateToolUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createToolBody),\n });\n};\n\nexport const getCreateToolMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateToolBody }) => {\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,\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};\n/**\n * List all code tools with sorting.\n\nOptionally filter by `call_agent_id` to list only tools attached to a specific agent.\n * @summary List tools\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/tools?${stringifiedParams}`\n : `/v1/tools`;\n};\n\nexport const listTools = async (\n params?: ListToolsParams,\n options?: RequestInit\n): Promise<ToolList> => {\n return customFetch<ToolList>(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};\n/**\n * Execute a code tool with the given parameters. Returns the result, any errors, and execution traces.\n * @summary Execute tool\n */\nexport const getExecuteCodeUrl = (id: string) => {\n return `/v1/tools/${id}/execute`;\n};\n\nexport const executeCode = async (\n id: string,\n executeCodeBody: ExecuteCodeBody,\n options?: RequestInit\n): Promise<ToolExecutionResult> => {\n return customFetch<ToolExecutionResult>(getExecuteCodeUrl(id), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n/**\n * Retrieve a single tool by ID, including its code, schema, and description.\n * @summary Get tool\n */\nexport const getGetToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\nexport const getTool = async (\n id: string,\n options?: RequestInit\n): Promise<GetToolResponse> => {\n return customFetch<GetToolResponse>(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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Update a code tool's name, description, code, or API key. All fields are optional — only provided fields are updated.\n * @summary Update tool\n */\nexport const getUpdateToolUrl = (id: string) => {\n return `/v1/tools/${id}`;\n};\n\nexport const updateTool = async (\n id: string,\n updateToolBody: UpdateToolBody,\n options?: RequestInit\n): Promise<CodeToolUpdated> => {\n return customFetch<CodeToolUpdated>(getUpdateToolUrl(id), {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 AddToolsToVoiceAgentBody,\n AddToolsToVoiceAgentResponse,\n CreateVoiceAgentBody,\n CreateVoiceAgentResponse,\n DeleteToolsFromVoiceAgentBody,\n DeleteToolsFromVoiceAgentResponse,\n ErrorResponse,\n GetVoiceAgentResponse,\n ListVoiceAgentsParams,\n UpdateCallControlsBody,\n UpdateVoiceAgentCallControlsResponse,\n UpdateVoiceAgentModelsBody,\n UpdateVoiceAgentModelsResponse,\n VoiceAgentList,\n VoiceAgentPrompt,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * List all voice agents for your tenant.\n\n**Filtering:**\n\nFilter voice agents by name using the `agent_name` query parameter (exact match).\n\n**Response:**\n\nReturns an array of all voice agents with their configurations and a total count.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/agents`\n * @summary List voice agents\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\" : value.toString());\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\nexport const listVoiceAgents = async (\n params?: ListVoiceAgentsParams,\n options?: RequestInit\n): Promise<VoiceAgentList> => {\n return customFetch<VoiceAgentList>(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};\n/**\n * Create a new voice agent with the specified configuration.\n\n**Required fields:**\n\nAll fields in the request body are required except `phone_number_id` and `transfer_phone_number`.\n\n**Response:**\n\nReturns the created voice agent with its ID and configuration.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`POST /v1/agents`\n * @summary Create voice agent\n */\nexport const getCreateVoiceAgentUrl = () => {\n return `/v1/voice-agents`;\n};\n\nexport const createVoiceAgent = async (\n createVoiceAgentBody: CreateVoiceAgentBody,\n options?: RequestInit\n): Promise<CreateVoiceAgentResponse> => {\n return customFetch<CreateVoiceAgentResponse>(getCreateVoiceAgentUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createVoiceAgentBody),\n });\n};\n\nexport const getCreateVoiceAgentMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateVoiceAgentBody }) => {\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,\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};\n/**\n * Retrieve a single voice agent by its ID.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/agents/{id}`\n * @summary Get voice agent\n */\nexport const getGetVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}`;\n};\n\nexport const getVoiceAgent = async (\n voiceAgentId: string,\n options?: RequestInit\n): Promise<GetVoiceAgentResponse> => {\n return customFetch<GetVoiceAgentResponse>(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 = swrOptions?.enabled !== false && !!voiceAgentId;\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};\n/**\n * Add one or more tools to a voice agent by their IDs.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`POST /v1/agents/{id}/tools`\n * @summary Add tools to voice agent\n */\nexport const getAddToolsToVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/tools`;\n};\n\nexport const addToolsToVoiceAgent = async (\n voiceAgentId: string,\n addToolsToVoiceAgentBody: AddToolsToVoiceAgentBody,\n options?: RequestInit\n): Promise<AddToolsToVoiceAgentResponse> => {\n return customFetch<AddToolsToVoiceAgentResponse>(\n getAddToolsToVoiceAgentUrl(voiceAgentId),\n {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(addToolsToVoiceAgentBody),\n }\n );\n};\n\nexport const getAddToolsToVoiceAgentMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: AddToolsToVoiceAgentBody }) => {\n return addToolsToVoiceAgent(voiceAgentId, arg, options);\n };\n};\nexport const getAddToolsToVoiceAgentMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/tools`] as const;\n\nexport type AddToolsToVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof addToolsToVoiceAgent>>\n>;\n\n/**\n * @summary Add tools to voice agent\n */\nexport const useAddToolsToVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof addToolsToVoiceAgent>>,\n TError,\n Key,\n AddToolsToVoiceAgentBody,\n Awaited<ReturnType<typeof addToolsToVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getAddToolsToVoiceAgentMutationKey(voiceAgentId);\n const swrFn = getAddToolsToVoiceAgentMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * Remove one or more tools from a voice agent by their IDs.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`DELETE /v1/agents/{id}/tools`\n * @summary Remove tools from voice agent\n */\nexport const getDeleteToolsFromVoiceAgentUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/tools`;\n};\n\nexport const deleteToolsFromVoiceAgent = async (\n voiceAgentId: string,\n deleteToolsFromVoiceAgentBody: DeleteToolsFromVoiceAgentBody,\n options?: RequestInit\n): Promise<DeleteToolsFromVoiceAgentResponse> => {\n return customFetch<DeleteToolsFromVoiceAgentResponse>(\n getDeleteToolsFromVoiceAgentUrl(voiceAgentId),\n {\n ...options,\n method: \"DELETE\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(deleteToolsFromVoiceAgentBody),\n }\n );\n};\n\nexport const getDeleteToolsFromVoiceAgentMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: DeleteToolsFromVoiceAgentBody }) => {\n return deleteToolsFromVoiceAgent(voiceAgentId, arg, options);\n };\n};\nexport const getDeleteToolsFromVoiceAgentMutationKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/tools`] as const;\n\nexport type DeleteToolsFromVoiceAgentMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteToolsFromVoiceAgent>>\n>;\n\n/**\n * @summary Remove tools from voice agent\n */\nexport const useDeleteToolsFromVoiceAgent = <TError = ErrorType<ErrorResponse>>(\n voiceAgentId: string,\n options?: {\n swr?: SWRMutationConfiguration<\n Awaited<ReturnType<typeof deleteToolsFromVoiceAgent>>,\n TError,\n Key,\n DeleteToolsFromVoiceAgentBody,\n Awaited<ReturnType<typeof deleteToolsFromVoiceAgent>>\n > & { swrKey?: string };\n request?: SecondParameter<typeof customFetch>;\n }\n) => {\n const { swr: swrOptions, request: requestOptions } = options ?? {};\n\n const swrKey =\n swrOptions?.swrKey ?? getDeleteToolsFromVoiceAgentMutationKey(voiceAgentId);\n const swrFn = getDeleteToolsFromVoiceAgentMutationFetcher(\n voiceAgentId,\n requestOptions\n );\n\n const query = useSWRMutation(swrKey, swrFn, swrOptions);\n\n return {\n swrKey,\n ...query,\n };\n};\n/**\n * Retrieve the available placeholder variables for a voice agent.\n\nFor compatibility this endpoint is also available using the following (deprecated) paths:\n`GET /v1/agents/{id}/prompt`\n * @summary Get voice agent prompt\n */\nexport const getGetVoiceAgentPromptUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/prompt`;\n};\n\nexport const getVoiceAgentPrompt = async (\n voiceAgentId: string,\n options?: RequestInit\n): Promise<VoiceAgentPrompt> => {\n return customFetch<VoiceAgentPrompt>(\n getGetVoiceAgentPromptUrl(voiceAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getGetVoiceAgentPromptKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/prompt`] 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 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 = swrOptions?.enabled !== false && !!voiceAgentId;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getGetVoiceAgentPromptKey(voiceAgentId) : null));\n const swrFn = () => getVoiceAgentPrompt(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};\n/**\n * Update the LLM, TTS, and STT model configuration for a voice agent.\n\nFor 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 getUpdateVoiceAgentModelsUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/models`;\n};\n\nexport const updateVoiceAgentModels = async (\n voiceAgentId: string,\n updateVoiceAgentModelsBody: UpdateVoiceAgentModelsBody,\n options?: RequestInit\n): Promise<UpdateVoiceAgentModelsResponse> => {\n return customFetch<UpdateVoiceAgentModelsResponse>(\n getUpdateVoiceAgentModelsUrl(voiceAgentId),\n {\n ...options,\n method: \"PATCH\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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};\n/**\n * Update call control settings for a voice agent.\n\nConfigure whether the voice agent supports dial pad input, can end calls, and set a transfer phone number.\n\nFor 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 getUpdateCallControlsUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/call-controls`;\n};\n\nexport const updateCallControls = async (\n voiceAgentId: string,\n updateCallControlsBody: UpdateCallControlsBody,\n options?: RequestInit\n): Promise<UpdateVoiceAgentCallControlsResponse> => {\n return customFetch<UpdateVoiceAgentCallControlsResponse>(\n getUpdateCallControlsUrl(voiceAgentId),\n {\n ...options,\n method: \"PUT\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\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 }) => {\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,\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 v8.1.0 🍺\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 CreateExtractorWebhookBody,\n CreateInboxWebhookBody,\n CreateWorkerWebhookBody,\n DeleteWebhookResponse,\n ErrorResponse,\n ExtractorWebhookList,\n InboxWebhookList,\n ListWebhookDeliveriesParams,\n VoiceAgentWebhookList,\n Webhook,\n WebhookDeliveryList,\n WebhookTestResult,\n WorkerWebhookList,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a webhook that fires when events occur for the specified worker.\n * @summary Create worker webhook\n */\nexport const getCreateWorkerWebhookUrl = (workerId: string) => {\n return `/v1/workers/${workerId}/webhooks`;\n};\n\nexport const createWorkerWebhook = async (\n workerId: string,\n createWorkerWebhookBody: CreateWorkerWebhookBody,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(getCreateWorkerWebhookUrl(workerId), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createWorkerWebhookBody),\n });\n};\n\nexport const getCreateWorkerWebhookMutationFetcher = (\n workerId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerWebhookBody }) => {\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,\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};\n/**\n * List all webhooks configured for a specific worker.\n * @summary List worker webhooks\n */\nexport const getListWorkerWebhooksUrl = (workerId: string) => {\n return `/v1/workers/${workerId}/webhooks`;\n};\n\nexport const listWorkerWebhooks = async (\n workerId: string,\n options?: RequestInit\n): Promise<WorkerWebhookList> => {\n return customFetch<WorkerWebhookList>(getListWorkerWebhooksUrl(workerId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWorkerWebhooksKey = (workerId: string) =>\n [`/v1/workers/${workerId}/webhooks`] 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 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 = swrOptions?.enabled !== false && !!workerId;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListWorkerWebhooksKey(workerId) : null));\n const swrFn = () => listWorkerWebhooks(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};\n/**\n * Create a webhook that fires when events occur for the specified voice agent.\n\nFor 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 getCreateAgentWebhookUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/webhooks`;\n};\n\nexport const createAgentWebhook = async (\n voiceAgentId: string,\n createAgentWebhookBody: CreateAgentWebhookBody,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(getCreateAgentWebhookUrl(voiceAgentId), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createAgentWebhookBody),\n });\n};\n\nexport const getCreateAgentWebhookMutationFetcher = (\n voiceAgentId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateAgentWebhookBody }) => {\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,\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};\n/**\n * List all webhooks configured for a specific voice agent.\n\nFor 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 getListAgentWebhooksUrl = (voiceAgentId: string) => {\n return `/v1/voice-agents/${voiceAgentId}/webhooks`;\n};\n\nexport const listAgentWebhooks = async (\n voiceAgentId: string,\n options?: RequestInit\n): Promise<VoiceAgentWebhookList> => {\n return customFetch<VoiceAgentWebhookList>(\n getListAgentWebhooksUrl(voiceAgentId),\n {\n ...options,\n method: \"GET\",\n }\n );\n};\n\nexport const getListAgentWebhooksKey = (voiceAgentId: string) =>\n [`/v1/voice-agents/${voiceAgentId}/webhooks`] 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 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 = swrOptions?.enabled !== false && !!voiceAgentId;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListAgentWebhooksKey(voiceAgentId) : null));\n const swrFn = () => listAgentWebhooks(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};\n/**\n * Create a webhook that fires when events occur for the specified inbox.\n\nFor 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 getCreateInboxWebhookUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}/webhooks`;\n};\n\nexport const createInboxWebhook = async (\n inboxId: string,\n createInboxWebhookBody: CreateInboxWebhookBody,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(getCreateInboxWebhookUrl(inboxId), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createInboxWebhookBody),\n });\n};\n\nexport const getCreateInboxWebhookMutationFetcher = (\n inboxId: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateInboxWebhookBody }) => {\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,\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};\n/**\n * List all webhooks configured for a specific inbox.\n\nFor 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 getListInboxWebhooksUrl = (inboxId: string) => {\n return `/v1/inboxes/${inboxId}/webhooks`;\n};\n\nexport const listInboxWebhooks = async (\n inboxId: string,\n options?: RequestInit\n): Promise<InboxWebhookList> => {\n return customFetch<InboxWebhookList>(getListInboxWebhooksUrl(inboxId), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListInboxWebhooksKey = (inboxId: string) =>\n [`/v1/inboxes/${inboxId}/webhooks`] 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 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 = swrOptions?.enabled !== false && !!inboxId;\n const swrKey =\n swrOptions?.swrKey ??\n (() => (isEnabled ? getListInboxWebhooksKey(inboxId) : null));\n const swrFn = () => listInboxWebhooks(inboxId, 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 * Create a webhook that fires when extraction events occur for the specified extractor.\n * @summary Create extractor webhook\n */\nexport const getCreateExtractorWebhookUrl = (id: string) => {\n return `/v1/extractors/${id}/webhooks`;\n};\n\nexport const createExtractorWebhook = async (\n id: string,\n createExtractorWebhookBody: CreateExtractorWebhookBody,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(getCreateExtractorWebhookUrl(id), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createExtractorWebhookBody),\n });\n};\n\nexport const getCreateExtractorWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateExtractorWebhookBody }) => {\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,\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};\n/**\n * List all webhooks configured for a specific extractor.\n * @summary List extractor webhooks\n */\nexport const getListWebhooksUrl = (id: string) => {\n return `/v1/extractors/${id}/webhooks`;\n};\n\nexport const listWebhooks = async (\n id: string,\n options?: RequestInit\n): Promise<ExtractorWebhookList> => {\n return customFetch<ExtractorWebhookList>(getListWebhooksUrl(id), {\n ...options,\n method: \"GET\",\n });\n};\n\nexport const getListWebhooksKey = (id: string) =>\n [`/v1/extractors/${id}/webhooks`] 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 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 = swrOptions?.enabled !== false && !!id;\n const swrKey =\n swrOptions?.swrKey ?? (() => (isEnabled ? getListWebhooksKey(id) : null));\n const swrFn = () => listWebhooks(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 * Permanently delete a webhook. This action is irreversible.\n * @summary Delete webhook\n */\nexport const getDeleteWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\nexport const deleteWebhook = async (\n id: string,\n options?: RequestInit\n): Promise<DeleteWebhookResponse> => {\n return customFetch<DeleteWebhookResponse>(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};\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 getGetWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}`;\n};\n\nexport const getWebhook = async (\n id: string,\n options?: RequestInit\n): Promise<Webhook> => {\n return customFetch<Webhook>(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 = swrOptions?.enabled !== false && !!id;\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};\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 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\" : value.toString());\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\nexport const listWebhookDeliveries = async (\n id: string,\n params?: ListWebhookDeliveriesParams,\n options?: RequestInit\n): Promise<WebhookDeliveryList> => {\n return customFetch<WebhookDeliveryList>(\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 = swrOptions?.enabled !== false && !!id;\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};\n/**\n * Send a test event to a webhook endpoint. Returns the HTTP status code, response time, and any errors.\n * @summary Test webhook\n */\nexport const getTestWebhookUrl = (id: string) => {\n return `/v1/webhooks/${id}/test`;\n};\n\nexport const testWebhook = async (\n id: string,\n options?: RequestInit\n): Promise<WebhookTestResult> => {\n return customFetch<WebhookTestResult>(getTestWebhookUrl(id), {\n ...options,\n method: \"POST\",\n });\n};\n\nexport const getTestWebhookMutationFetcher = (\n id: string,\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, __: { arg: Arguments }) => {\n return testWebhook(id, 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 Arguments,\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 v8.1.0 🍺\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 CreateWorkerBody,\n ErrorResponse,\n ListWorkersParams,\n WorkerCreated,\n WorkerList,\n} from \"../../models\";\n\nimport { customFetch } from \"../../../src/fetcher\";\nimport type { ErrorType } from \"../../../src/fetcher\";\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n/**\n * Create a new agentic extractor worker with a name, E2B template, and instruction template.\n * @summary Create worker\n */\nexport const getCreateWorkerUrl = () => {\n return `/v1/workers`;\n};\n\nexport const createWorker = async (\n createWorkerBody: CreateWorkerBody,\n options?: RequestInit\n): Promise<WorkerCreated> => {\n return customFetch<WorkerCreated>(getCreateWorkerUrl(), {\n ...options,\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...options?.headers },\n body: JSON.stringify(createWorkerBody),\n });\n};\n\nexport const getCreateWorkerMutationFetcher = (\n options?: SecondParameter<typeof customFetch>\n) => {\n return (_: Key, { arg }: { arg: CreateWorkerBody }) => {\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,\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};\n/**\n * List all agentic extractor workers with pagination, filtering, and sorting.\n\nFilter by name using the `name` query parameter.\n * @summary List workers\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\" : value.toString());\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0\n ? `/v1/workers?${stringifiedParams}`\n : `/v1/workers`;\n};\n\nexport const listWorkers = async (\n params?: ListWorkersParams,\n options?: RequestInit\n): Promise<WorkerList> => {\n return customFetch<WorkerList>(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};\n/**\n * Retrieve a single agentic extractor worker by ID.\n * @summary Get worker\n */\nexport const getGetWorkerUrl = (workerId: string) => {\n return `/v1/workers/${workerId}`;\n};\n\nexport const getWorker = async (\n workerId: string,\n options?: RequestInit\n): Promise<WorkerCreated> => {\n return customFetch<WorkerCreated>(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 = swrOptions?.enabled !== false && !!workerId;\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};\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateEmailBodyDirection =\n (typeof CreateEmailBodyDirection)[keyof typeof CreateEmailBodyDirection];\n\nexport const CreateEmailBodyDirection = {\n inbound: \"inbound\",\n outbound: \"outbound\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateExtractorJobBodyExtractorType =\n (typeof CreateExtractorJobBodyExtractorType)[keyof typeof CreateExtractorJobBodyExtractorType];\n\nexport const CreateExtractorJobBodyExtractorType = {\n basic: \"basic\",\n agentic: \"agentic\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type EmailCreatedDirection =\n (typeof EmailCreatedDirection)[keyof typeof EmailCreatedDirection];\n\nexport const EmailCreatedDirection = {\n inbound: \"inbound\",\n outbound: \"outbound\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of extractor\n */\nexport type ExtractorJobExtractorType =\n (typeof ExtractorJobExtractorType)[keyof typeof ExtractorJobExtractorType];\n\nexport const ExtractorJobExtractorType = {\n basic: \"basic\",\n agentic: \"agentic\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 microsoft: \"microsoft\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListClaimsSortBy =\n (typeof ListClaimsSortBy)[keyof typeof ListClaimsSortBy];\n\nexport const ListClaimsSortBy = {\n created_at: \"created_at\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListClaimsSortOrder =\n (typeof ListClaimsSortOrder)[keyof typeof ListClaimsSortOrder];\n\nexport const ListClaimsSortOrder = {\n asc: \"asc\",\n desc: \"desc\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\n * Do not edit manually.\n * Avallon API\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListExtractorJobsExtractorType =\n (typeof ListExtractorJobsExtractorType)[keyof typeof ListExtractorJobsExtractorType];\n\nexport const ListExtractorJobsExtractorType = {\n basic: \"basic\",\n agentic: \"agentic\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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 v8.1.0 🍺\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} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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 chirp_3: \"chirp_3\",\n \"polly-neural\": \"polly-neural\",\n} as const;\n","/**\n * Generated by orval v8.1.0 🍺\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"]}