@otterlabs/blocx 0.1.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.
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/generated/core/bodySerializer.gen.ts","../src/generated/core/serverSentEvents.gen.ts","../src/generated/core/pathSerializer.gen.ts","../src/generated/core/utils.gen.ts","../src/generated/core/auth.gen.ts","../src/generated/client/utils.gen.ts","../src/generated/client/client.gen.ts","../src/generated/client.gen.ts","../src/generated/sdk.gen.ts","../src/index.ts"],"names":["joinedValues","config","request","url"],"mappings":"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","file":"index.cjs","sourcesContent":["// This file is auto-generated by @hey-api/openapi-ts\n\nimport type {\n ArrayStyle,\n ObjectStyle,\n SerializerOptions,\n} from \"./pathSerializer.gen.js\";\n\nexport type QuerySerializer = (query: Record<string, unknown>) => string;\n\nexport type BodySerializer = (body: any) => any;\n\nexport interface QuerySerializerOptions {\n allowReserved?: boolean;\n array?: SerializerOptions<ArrayStyle>;\n object?: SerializerOptions<ObjectStyle>;\n}\n\nconst serializeFormDataPair = (\n data: FormData,\n key: string,\n value: unknown,\n): void => {\n if (typeof value === \"string\" || value instanceof Blob) {\n data.append(key, value);\n } else if (value instanceof Date) {\n data.append(key, value.toISOString());\n } else {\n data.append(key, JSON.stringify(value));\n }\n};\n\nconst serializeUrlSearchParamsPair = (\n data: URLSearchParams,\n key: string,\n value: unknown,\n): void => {\n if (typeof value === \"string\") {\n data.append(key, value);\n } else {\n data.append(key, JSON.stringify(value));\n }\n};\n\nexport const formDataBodySerializer = {\n bodySerializer: <T extends Record<string, any> | Array<Record<string, any>>>(\n body: T,\n ): FormData => {\n const data = new FormData();\n\n Object.entries(body).forEach(([key, value]) => {\n if (value === undefined || value === null) {\n return;\n }\n if (Array.isArray(value)) {\n value.forEach((v) => serializeFormDataPair(data, key, v));\n } else {\n serializeFormDataPair(data, key, value);\n }\n });\n\n return data;\n },\n};\n\nexport const jsonBodySerializer = {\n bodySerializer: <T>(body: T): string =>\n JSON.stringify(body, (_key, value) =>\n typeof value === \"bigint\" ? value.toString() : value,\n ),\n};\n\nexport const urlSearchParamsBodySerializer = {\n bodySerializer: <T extends Record<string, any> | Array<Record<string, any>>>(\n body: T,\n ): string => {\n const data = new URLSearchParams();\n\n Object.entries(body).forEach(([key, value]) => {\n if (value === undefined || value === null) {\n return;\n }\n if (Array.isArray(value)) {\n value.forEach((v) => serializeUrlSearchParamsPair(data, key, v));\n } else {\n serializeUrlSearchParamsPair(data, key, value);\n }\n });\n\n return data.toString();\n },\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { Config } from \"./types.gen.js\";\n\nexport type ServerSentEventsOptions<TData = unknown> = Omit<\n RequestInit,\n \"method\"\n> &\n Pick<Config, \"method\" | \"responseTransformer\" | \"responseValidator\"> & {\n /**\n * Fetch API implementation. You can use this option to provide a custom\n * fetch instance.\n *\n * @default globalThis.fetch\n */\n fetch?: typeof fetch;\n /**\n * Implementing clients can call request interceptors inside this hook.\n */\n onRequest?: (url: string, init: RequestInit) => Promise<Request>;\n /**\n * Callback invoked when a network or parsing error occurs during streaming.\n *\n * This option applies only if the endpoint returns a stream of events.\n *\n * @param error The error that occurred.\n */\n onSseError?: (error: unknown) => void;\n /**\n * Callback invoked when an event is streamed from the server.\n *\n * This option applies only if the endpoint returns a stream of events.\n *\n * @param event Event streamed from the server.\n * @returns Nothing (void).\n */\n onSseEvent?: (event: StreamEvent<TData>) => void;\n serializedBody?: RequestInit[\"body\"];\n /**\n * Default retry delay in milliseconds.\n *\n * This option applies only if the endpoint returns a stream of events.\n *\n * @default 3000\n */\n sseDefaultRetryDelay?: number;\n /**\n * Maximum number of retry attempts before giving up.\n */\n sseMaxRetryAttempts?: number;\n /**\n * Maximum retry delay in milliseconds.\n *\n * Applies only when exponential backoff is used.\n *\n * This option applies only if the endpoint returns a stream of events.\n *\n * @default 30000\n */\n sseMaxRetryDelay?: number;\n /**\n * Optional sleep function for retry backoff.\n *\n * Defaults to using `setTimeout`.\n */\n sseSleepFn?: (ms: number) => Promise<void>;\n url: string;\n };\n\nexport interface StreamEvent<TData = unknown> {\n data: TData;\n event?: string;\n id?: string;\n retry?: number;\n}\n\nexport type ServerSentEventsResult<\n TData = unknown,\n TReturn = void,\n TNext = unknown,\n> = {\n stream: AsyncGenerator<\n TData extends Record<string, unknown> ? TData[keyof TData] : TData,\n TReturn,\n TNext\n >;\n};\n\nexport const createSseClient = <TData = unknown>({\n onRequest,\n onSseError,\n onSseEvent,\n responseTransformer,\n responseValidator,\n sseDefaultRetryDelay,\n sseMaxRetryAttempts,\n sseMaxRetryDelay,\n sseSleepFn,\n url,\n ...options\n}: ServerSentEventsOptions): ServerSentEventsResult<TData> => {\n let lastEventId: string | undefined;\n\n const sleep =\n sseSleepFn ??\n ((ms: number) => new Promise((resolve) => setTimeout(resolve, ms)));\n\n const createStream = async function* () {\n let retryDelay: number = sseDefaultRetryDelay ?? 3000;\n let attempt = 0;\n const signal = options.signal ?? new AbortController().signal;\n\n while (true) {\n if (signal.aborted) break;\n\n attempt++;\n\n const headers =\n options.headers instanceof Headers\n ? options.headers\n : new Headers(options.headers as Record<string, string> | undefined);\n\n if (lastEventId !== undefined) {\n headers.set(\"Last-Event-ID\", lastEventId);\n }\n\n try {\n const requestInit: RequestInit = {\n redirect: \"follow\",\n ...options,\n body: options.serializedBody,\n headers,\n signal,\n };\n let request = new Request(url, requestInit);\n if (onRequest) {\n request = await onRequest(url, requestInit);\n }\n // fetch must be assigned here, otherwise it would throw the error:\n // TypeError: Failed to execute 'fetch' on 'Window': Illegal invocation\n const _fetch = options.fetch ?? globalThis.fetch;\n const response = await _fetch(request);\n\n if (!response.ok)\n throw new Error(\n `SSE failed: ${response.status} ${response.statusText}`,\n );\n\n if (!response.body) throw new Error(\"No body in SSE response\");\n\n const reader = response.body\n .pipeThrough(new TextDecoderStream())\n .getReader();\n\n let buffer = \"\";\n\n const abortHandler = () => {\n try {\n reader.cancel();\n } catch {\n // noop\n }\n };\n\n signal.addEventListener(\"abort\", abortHandler);\n\n try {\n while (true) {\n const { done, value } = await reader.read();\n if (done) break;\n buffer += value;\n\n const chunks = buffer.split(\"\\n\\n\");\n buffer = chunks.pop() ?? \"\";\n\n for (const chunk of chunks) {\n const lines = chunk.split(\"\\n\");\n const dataLines: Array<string> = [];\n let eventName: string | undefined;\n\n for (const line of lines) {\n if (line.startsWith(\"data:\")) {\n dataLines.push(line.replace(/^data:\\s*/, \"\"));\n } else if (line.startsWith(\"event:\")) {\n eventName = line.replace(/^event:\\s*/, \"\");\n } else if (line.startsWith(\"id:\")) {\n lastEventId = line.replace(/^id:\\s*/, \"\");\n } else if (line.startsWith(\"retry:\")) {\n const parsed = Number.parseInt(\n line.replace(/^retry:\\s*/, \"\"),\n 10,\n );\n if (!Number.isNaN(parsed)) {\n retryDelay = parsed;\n }\n }\n }\n\n let data: unknown;\n let parsedJson = false;\n\n if (dataLines.length) {\n const rawData = dataLines.join(\"\\n\");\n try {\n data = JSON.parse(rawData);\n parsedJson = true;\n } catch {\n data = rawData;\n }\n }\n\n if (parsedJson) {\n if (responseValidator) {\n await responseValidator(data);\n }\n\n if (responseTransformer) {\n data = await responseTransformer(data);\n }\n }\n\n onSseEvent?.({\n data,\n event: eventName,\n id: lastEventId,\n retry: retryDelay,\n });\n\n if (dataLines.length) {\n yield data as any;\n }\n }\n }\n } finally {\n signal.removeEventListener(\"abort\", abortHandler);\n reader.releaseLock();\n }\n\n break; // exit loop on normal completion\n } catch (error) {\n // connection failed or aborted; retry after delay\n onSseError?.(error);\n\n if (\n sseMaxRetryAttempts !== undefined &&\n attempt >= sseMaxRetryAttempts\n ) {\n break; // stop after firing error\n }\n\n // exponential backoff: double retry each attempt, cap at 30s\n const backoff = Math.min(\n retryDelay * 2 ** (attempt - 1),\n sseMaxRetryDelay ?? 30000,\n );\n await sleep(backoff);\n }\n }\n };\n\n const stream = createStream();\n\n return { stream };\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\ninterface SerializeOptions<T>\n extends SerializePrimitiveOptions, SerializerOptions<T> {}\n\ninterface SerializePrimitiveOptions {\n allowReserved?: boolean;\n name: string;\n}\n\nexport interface SerializerOptions<T> {\n /**\n * @default true\n */\n explode: boolean;\n style: T;\n}\n\nexport type ArrayStyle = \"form\" | \"spaceDelimited\" | \"pipeDelimited\";\nexport type ArraySeparatorStyle = ArrayStyle | MatrixStyle;\ntype MatrixStyle = \"label\" | \"matrix\" | \"simple\";\nexport type ObjectStyle = \"form\" | \"deepObject\";\ntype ObjectSeparatorStyle = ObjectStyle | MatrixStyle;\n\ninterface SerializePrimitiveParam extends SerializePrimitiveOptions {\n value: string;\n}\n\nexport const separatorArrayExplode = (style: ArraySeparatorStyle) => {\n switch (style) {\n case \"label\":\n return \".\";\n case \"matrix\":\n return \";\";\n case \"simple\":\n return \",\";\n default:\n return \"&\";\n }\n};\n\nexport const separatorArrayNoExplode = (style: ArraySeparatorStyle) => {\n switch (style) {\n case \"form\":\n return \",\";\n case \"pipeDelimited\":\n return \"|\";\n case \"spaceDelimited\":\n return \"%20\";\n default:\n return \",\";\n }\n};\n\nexport const separatorObjectExplode = (style: ObjectSeparatorStyle) => {\n switch (style) {\n case \"label\":\n return \".\";\n case \"matrix\":\n return \";\";\n case \"simple\":\n return \",\";\n default:\n return \"&\";\n }\n};\n\nexport const serializeArrayParam = ({\n allowReserved,\n explode,\n name,\n style,\n value,\n}: SerializeOptions<ArraySeparatorStyle> & {\n value: unknown[];\n}) => {\n if (!explode) {\n const joinedValues = (\n allowReserved ? value : value.map((v) => encodeURIComponent(v as string))\n ).join(separatorArrayNoExplode(style));\n switch (style) {\n case \"label\":\n return `.${joinedValues}`;\n case \"matrix\":\n return `;${name}=${joinedValues}`;\n case \"simple\":\n return joinedValues;\n default:\n return `${name}=${joinedValues}`;\n }\n }\n\n const separator = separatorArrayExplode(style);\n const joinedValues = value\n .map((v) => {\n if (style === \"label\" || style === \"simple\") {\n return allowReserved ? v : encodeURIComponent(v as string);\n }\n\n return serializePrimitiveParam({\n allowReserved,\n name,\n value: v as string,\n });\n })\n .join(separator);\n return style === \"label\" || style === \"matrix\"\n ? separator + joinedValues\n : joinedValues;\n};\n\nexport const serializePrimitiveParam = ({\n allowReserved,\n name,\n value,\n}: SerializePrimitiveParam) => {\n if (value === undefined || value === null) {\n return \"\";\n }\n\n if (typeof value === \"object\") {\n throw new Error(\n \"Deeply-nested arrays/objects aren’t supported. Provide your own `querySerializer()` to handle these.\",\n );\n }\n\n return `${name}=${allowReserved ? value : encodeURIComponent(value)}`;\n};\n\nexport const serializeObjectParam = ({\n allowReserved,\n explode,\n name,\n style,\n value,\n valueOnly,\n}: SerializeOptions<ObjectSeparatorStyle> & {\n value: Record<string, unknown> | Date;\n valueOnly?: boolean;\n}) => {\n if (value instanceof Date) {\n return valueOnly ? value.toISOString() : `${name}=${value.toISOString()}`;\n }\n\n if (style !== \"deepObject\" && !explode) {\n let values: string[] = [];\n Object.entries(value).forEach(([key, v]) => {\n values = [\n ...values,\n key,\n allowReserved ? (v as string) : encodeURIComponent(v as string),\n ];\n });\n const joinedValues = values.join(\",\");\n switch (style) {\n case \"form\":\n return `${name}=${joinedValues}`;\n case \"label\":\n return `.${joinedValues}`;\n case \"matrix\":\n return `;${name}=${joinedValues}`;\n default:\n return joinedValues;\n }\n }\n\n const separator = separatorObjectExplode(style);\n const joinedValues = Object.entries(value)\n .map(([key, v]) =>\n serializePrimitiveParam({\n allowReserved,\n name: style === \"deepObject\" ? `${name}[${key}]` : key,\n value: v as string,\n }),\n )\n .join(separator);\n return style === \"label\" || style === \"matrix\"\n ? separator + joinedValues\n : joinedValues;\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { BodySerializer, QuerySerializer } from \"./bodySerializer.gen.js\";\nimport {\n type ArraySeparatorStyle,\n serializeArrayParam,\n serializeObjectParam,\n serializePrimitiveParam,\n} from \"./pathSerializer.gen.js\";\n\nexport interface PathSerializer {\n path: Record<string, unknown>;\n url: string;\n}\n\nexport const PATH_PARAM_RE = /\\{[^{}]+\\}/g;\n\nexport const defaultPathSerializer = ({ path, url: _url }: PathSerializer) => {\n let url = _url;\n const matches = _url.match(PATH_PARAM_RE);\n if (matches) {\n for (const match of matches) {\n let explode = false;\n let name = match.substring(1, match.length - 1);\n let style: ArraySeparatorStyle = \"simple\";\n\n if (name.endsWith(\"*\")) {\n explode = true;\n name = name.substring(0, name.length - 1);\n }\n\n if (name.startsWith(\".\")) {\n name = name.substring(1);\n style = \"label\";\n } else if (name.startsWith(\";\")) {\n name = name.substring(1);\n style = \"matrix\";\n }\n\n const value = path[name];\n\n if (value === undefined || value === null) {\n continue;\n }\n\n if (Array.isArray(value)) {\n url = url.replace(\n match,\n serializeArrayParam({ explode, name, style, value }),\n );\n continue;\n }\n\n if (typeof value === \"object\") {\n url = url.replace(\n match,\n serializeObjectParam({\n explode,\n name,\n style,\n value: value as Record<string, unknown>,\n valueOnly: true,\n }),\n );\n continue;\n }\n\n if (style === \"matrix\") {\n url = url.replace(\n match,\n `;${serializePrimitiveParam({\n name,\n value: value as string,\n })}`,\n );\n continue;\n }\n\n const replaceValue = encodeURIComponent(\n style === \"label\" ? `.${value as string}` : (value as string),\n );\n url = url.replace(match, replaceValue);\n }\n }\n return url;\n};\n\nexport const getUrl = ({\n baseUrl,\n path,\n query,\n querySerializer,\n url: _url,\n}: {\n baseUrl?: string;\n path?: Record<string, unknown>;\n query?: Record<string, unknown>;\n querySerializer: QuerySerializer;\n url: string;\n}) => {\n const pathUrl = _url.startsWith(\"/\") ? _url : `/${_url}`;\n let url = (baseUrl ?? \"\") + pathUrl;\n if (path) {\n url = defaultPathSerializer({ path, url });\n }\n let search = query ? querySerializer(query) : \"\";\n if (search.startsWith(\"?\")) {\n search = search.substring(1);\n }\n if (search) {\n url += `?${search}`;\n }\n return url;\n};\n\nexport function getValidRequestBody(options: {\n body?: unknown;\n bodySerializer?: BodySerializer | null;\n serializedBody?: unknown;\n}) {\n const hasBody = options.body !== undefined;\n const isSerializedBody = hasBody && options.bodySerializer;\n\n if (isSerializedBody) {\n if (\"serializedBody\" in options) {\n const hasSerializedBody =\n options.serializedBody !== undefined && options.serializedBody !== \"\";\n\n return hasSerializedBody ? options.serializedBody : null;\n }\n\n // not all clients implement a serializedBody property (i.e. client-axios)\n return options.body !== \"\" ? options.body : null;\n }\n\n // plain/text body\n if (hasBody) {\n return options.body;\n }\n\n // no body was provided\n return undefined;\n}\n","// This file is auto-generated by @hey-api/openapi-ts\n\nexport type AuthToken = string | undefined;\n\nexport interface Auth {\n /**\n * Which part of the request do we use to send the auth?\n *\n * @default 'header'\n */\n in?: \"header\" | \"query\" | \"cookie\";\n /**\n * Header or query parameter name.\n *\n * @default 'Authorization'\n */\n name?: string;\n scheme?: \"basic\" | \"bearer\";\n type: \"apiKey\" | \"http\";\n}\n\nexport const getAuthToken = async (\n auth: Auth,\n callback: ((auth: Auth) => Promise<AuthToken> | AuthToken) | AuthToken,\n): Promise<string | undefined> => {\n const token =\n typeof callback === \"function\" ? await callback(auth) : callback;\n\n if (!token) {\n return;\n }\n\n if (auth.scheme === \"bearer\") {\n return `Bearer ${token}`;\n }\n\n if (auth.scheme === \"basic\") {\n return `Basic ${btoa(token)}`;\n }\n\n return token;\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { getAuthToken } from \"../core/auth.gen.js\";\nimport type { QuerySerializerOptions } from \"../core/bodySerializer.gen.js\";\nimport { jsonBodySerializer } from \"../core/bodySerializer.gen.js\";\nimport {\n serializeArrayParam,\n serializeObjectParam,\n serializePrimitiveParam,\n} from \"../core/pathSerializer.gen.js\";\nimport { getUrl } from \"../core/utils.gen.js\";\nimport type {\n Client,\n ClientOptions,\n Config,\n RequestOptions,\n} from \"./types.gen.js\";\n\nexport const createQuerySerializer = <T = unknown>({\n allowReserved,\n array,\n object,\n}: QuerySerializerOptions = {}) => {\n const querySerializer = (queryParams: T) => {\n const search: string[] = [];\n if (queryParams && typeof queryParams === \"object\") {\n for (const name in queryParams) {\n const value = queryParams[name];\n\n if (value === undefined || value === null) {\n continue;\n }\n\n if (Array.isArray(value)) {\n const serializedArray = serializeArrayParam({\n allowReserved,\n explode: true,\n name,\n style: \"form\",\n value,\n ...array,\n });\n if (serializedArray) search.push(serializedArray);\n } else if (typeof value === \"object\") {\n const serializedObject = serializeObjectParam({\n allowReserved,\n explode: true,\n name,\n style: \"deepObject\",\n value: value as Record<string, unknown>,\n ...object,\n });\n if (serializedObject) search.push(serializedObject);\n } else {\n const serializedPrimitive = serializePrimitiveParam({\n allowReserved,\n name,\n value: value as string,\n });\n if (serializedPrimitive) search.push(serializedPrimitive);\n }\n }\n }\n return search.join(\"&\");\n };\n return querySerializer;\n};\n\n/**\n * Infers parseAs value from provided Content-Type header.\n */\nexport const getParseAs = (\n contentType: string | null,\n): Exclude<Config[\"parseAs\"], \"auto\"> => {\n if (!contentType) {\n // If no Content-Type header is provided, the best we can do is return the raw response body,\n // which is effectively the same as the 'stream' option.\n return \"stream\";\n }\n\n const cleanContent = contentType.split(\";\")[0]?.trim();\n\n if (!cleanContent) {\n return;\n }\n\n if (\n cleanContent.startsWith(\"application/json\") ||\n cleanContent.endsWith(\"+json\")\n ) {\n return \"json\";\n }\n\n if (cleanContent === \"multipart/form-data\") {\n return \"formData\";\n }\n\n if (\n [\"application/\", \"audio/\", \"image/\", \"video/\"].some((type) =>\n cleanContent.startsWith(type),\n )\n ) {\n return \"blob\";\n }\n\n if (cleanContent.startsWith(\"text/\")) {\n return \"text\";\n }\n\n return;\n};\n\nconst checkForExistence = (\n options: Pick<RequestOptions, \"auth\" | \"query\"> & {\n headers: Headers;\n },\n name?: string,\n): boolean => {\n if (!name) {\n return false;\n }\n if (\n options.headers.has(name) ||\n options.query?.[name] ||\n options.headers.get(\"Cookie\")?.includes(`${name}=`)\n ) {\n return true;\n }\n return false;\n};\n\nexport const setAuthParams = async ({\n security,\n ...options\n}: Pick<Required<RequestOptions>, \"security\"> &\n Pick<RequestOptions, \"auth\" | \"query\"> & {\n headers: Headers;\n }) => {\n for (const auth of security) {\n if (checkForExistence(options, auth.name)) {\n continue;\n }\n\n const token = await getAuthToken(auth, options.auth);\n\n if (!token) {\n continue;\n }\n\n const name = auth.name ?? \"Authorization\";\n\n switch (auth.in) {\n case \"query\":\n if (!options.query) {\n options.query = {};\n }\n options.query[name] = token;\n break;\n case \"cookie\":\n options.headers.append(\"Cookie\", `${name}=${token}`);\n break;\n case \"header\":\n default:\n options.headers.set(name, token);\n break;\n }\n }\n};\n\nexport const buildUrl: Client[\"buildUrl\"] = (options) =>\n getUrl({\n baseUrl: options.baseUrl as string,\n path: options.path,\n query: options.query,\n querySerializer:\n typeof options.querySerializer === \"function\"\n ? options.querySerializer\n : createQuerySerializer(options.querySerializer),\n url: options.url,\n });\n\nexport const mergeConfigs = (a: Config, b: Config): Config => {\n const config = { ...a, ...b };\n if (config.baseUrl?.endsWith(\"/\")) {\n config.baseUrl = config.baseUrl.substring(0, config.baseUrl.length - 1);\n }\n config.headers = mergeHeaders(a.headers, b.headers);\n return config;\n};\n\nconst headersEntries = (headers: Headers): Array<[string, string]> => {\n const entries: Array<[string, string]> = [];\n headers.forEach((value, key) => {\n entries.push([key, value]);\n });\n return entries;\n};\n\nexport const mergeHeaders = (\n ...headers: Array<Required<Config>[\"headers\"] | undefined>\n): Headers => {\n const mergedHeaders = new Headers();\n for (const header of headers) {\n if (!header) {\n continue;\n }\n\n const iterator =\n header instanceof Headers\n ? headersEntries(header)\n : Object.entries(header);\n\n for (const [key, value] of iterator) {\n if (value === null) {\n mergedHeaders.delete(key);\n } else if (Array.isArray(value)) {\n for (const v of value) {\n mergedHeaders.append(key, v as string);\n }\n } else if (value !== undefined) {\n // assume object headers are meant to be JSON stringified, i.e. their\n // content value in OpenAPI specification is 'application/json'\n mergedHeaders.set(\n key,\n typeof value === \"object\" ? JSON.stringify(value) : (value as string),\n );\n }\n }\n }\n return mergedHeaders;\n};\n\ntype ErrInterceptor<Err, Res, Req, Options> = (\n error: Err,\n response: Res,\n request: Req,\n options: Options,\n) => Err | Promise<Err>;\n\ntype ReqInterceptor<Req, Options> = (\n request: Req,\n options: Options,\n) => Req | Promise<Req>;\n\ntype ResInterceptor<Res, Req, Options> = (\n response: Res,\n request: Req,\n options: Options,\n) => Res | Promise<Res>;\n\nclass Interceptors<Interceptor> {\n fns: Array<Interceptor | null> = [];\n\n clear(): void {\n this.fns = [];\n }\n\n eject(id: number | Interceptor): void {\n const index = this.getInterceptorIndex(id);\n if (this.fns[index]) {\n this.fns[index] = null;\n }\n }\n\n exists(id: number | Interceptor): boolean {\n const index = this.getInterceptorIndex(id);\n return Boolean(this.fns[index]);\n }\n\n getInterceptorIndex(id: number | Interceptor): number {\n if (typeof id === \"number\") {\n return this.fns[id] ? id : -1;\n }\n return this.fns.indexOf(id);\n }\n\n update(\n id: number | Interceptor,\n fn: Interceptor,\n ): number | Interceptor | false {\n const index = this.getInterceptorIndex(id);\n if (this.fns[index]) {\n this.fns[index] = fn;\n return id;\n }\n return false;\n }\n\n use(fn: Interceptor): number {\n this.fns.push(fn);\n return this.fns.length - 1;\n }\n}\n\nexport interface Middleware<Req, Res, Err, Options> {\n error: Interceptors<ErrInterceptor<Err, Res, Req, Options>>;\n request: Interceptors<ReqInterceptor<Req, Options>>;\n response: Interceptors<ResInterceptor<Res, Req, Options>>;\n}\n\nexport const createInterceptors = <Req, Res, Err, Options>(): Middleware<\n Req,\n Res,\n Err,\n Options\n> => ({\n error: new Interceptors<ErrInterceptor<Err, Res, Req, Options>>(),\n request: new Interceptors<ReqInterceptor<Req, Options>>(),\n response: new Interceptors<ResInterceptor<Res, Req, Options>>(),\n});\n\nconst defaultQuerySerializer = createQuerySerializer({\n allowReserved: false,\n array: {\n explode: true,\n style: \"form\",\n },\n object: {\n explode: true,\n style: \"deepObject\",\n },\n});\n\nconst defaultHeaders = {\n \"Content-Type\": \"application/json\",\n};\n\nexport const createConfig = <T extends ClientOptions = ClientOptions>(\n override: Config<Omit<ClientOptions, keyof T> & T> = {},\n): Config<Omit<ClientOptions, keyof T> & T> => ({\n ...jsonBodySerializer,\n headers: defaultHeaders,\n parseAs: \"auto\",\n querySerializer: defaultQuerySerializer,\n ...override,\n});\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { createSseClient } from \"../core/serverSentEvents.gen.js\";\nimport type { HttpMethod } from \"../core/types.gen.js\";\nimport { getValidRequestBody } from \"../core/utils.gen.js\";\nimport type {\n Client,\n Config,\n RequestOptions,\n ResolvedRequestOptions,\n} from \"./types.gen.js\";\nimport {\n buildUrl,\n createConfig,\n createInterceptors,\n getParseAs,\n mergeConfigs,\n mergeHeaders,\n setAuthParams,\n} from \"./utils.gen.js\";\n\ntype ReqInit = Omit<RequestInit, \"body\" | \"headers\"> & {\n body?: any;\n headers: ReturnType<typeof mergeHeaders>;\n};\n\nexport const createClient = (config: Config = {}): Client => {\n let _config = mergeConfigs(createConfig(), config);\n\n const getConfig = (): Config => ({ ..._config });\n\n const setConfig = (config: Config): Config => {\n _config = mergeConfigs(_config, config);\n return getConfig();\n };\n\n const interceptors = createInterceptors<\n Request,\n Response,\n unknown,\n ResolvedRequestOptions\n >();\n\n const beforeRequest = async (options: RequestOptions) => {\n const opts = {\n ..._config,\n ...options,\n fetch: options.fetch ?? _config.fetch ?? globalThis.fetch,\n headers: mergeHeaders(_config.headers, options.headers),\n serializedBody: undefined,\n };\n\n if (opts.security) {\n await setAuthParams({\n ...opts,\n security: opts.security,\n });\n }\n\n if (opts.requestValidator) {\n await opts.requestValidator(opts);\n }\n\n if (opts.body !== undefined && opts.bodySerializer) {\n opts.serializedBody = opts.bodySerializer(opts.body);\n }\n\n // remove Content-Type header if body is empty to avoid sending invalid requests\n if (opts.body === undefined || opts.serializedBody === \"\") {\n opts.headers.delete(\"Content-Type\");\n }\n\n const url = buildUrl(opts);\n\n return { opts, url };\n };\n\n const request: Client[\"request\"] = async (options) => {\n // @ts-expect-error\n const { opts, url } = await beforeRequest(options);\n const requestInit: ReqInit = {\n redirect: \"follow\",\n ...opts,\n body: getValidRequestBody(opts),\n };\n\n let request = new Request(url, requestInit);\n\n for (const fn of interceptors.request.fns) {\n if (fn) {\n request = await fn(request, opts);\n }\n }\n\n // fetch must be assigned here, otherwise it would throw the error:\n // TypeError: Failed to execute 'fetch' on 'Window': Illegal invocation\n const _fetch = opts.fetch!;\n let response = await _fetch(request);\n\n for (const fn of interceptors.response.fns) {\n if (fn) {\n response = await fn(response, request, opts);\n }\n }\n\n const result = {\n request,\n response,\n };\n\n if (response.ok) {\n const parseAs =\n (opts.parseAs === \"auto\"\n ? getParseAs(response.headers.get(\"Content-Type\"))\n : opts.parseAs) ?? \"json\";\n\n if (\n response.status === 204 ||\n response.headers.get(\"Content-Length\") === \"0\"\n ) {\n let emptyData: any;\n switch (parseAs) {\n case \"arrayBuffer\":\n case \"blob\":\n case \"text\":\n emptyData = await response[parseAs]();\n break;\n case \"formData\":\n emptyData = new FormData();\n break;\n case \"stream\":\n emptyData = response.body;\n break;\n case \"json\":\n default:\n emptyData = {};\n break;\n }\n return opts.responseStyle === \"data\"\n ? emptyData\n : {\n data: emptyData,\n ...result,\n };\n }\n\n let data: any;\n switch (parseAs) {\n case \"arrayBuffer\":\n case \"blob\":\n case \"formData\":\n case \"json\":\n case \"text\":\n data = await response[parseAs]();\n break;\n case \"stream\":\n return opts.responseStyle === \"data\"\n ? response.body\n : {\n data: response.body,\n ...result,\n };\n }\n\n if (parseAs === \"json\") {\n if (opts.responseValidator) {\n await opts.responseValidator(data);\n }\n\n if (opts.responseTransformer) {\n data = await opts.responseTransformer(data);\n }\n }\n\n return opts.responseStyle === \"data\"\n ? data\n : {\n data,\n ...result,\n };\n }\n\n const textError = await response.text();\n let jsonError: unknown;\n\n try {\n jsonError = JSON.parse(textError);\n } catch {\n // noop\n }\n\n const error = jsonError ?? textError;\n let finalError = error;\n\n for (const fn of interceptors.error.fns) {\n if (fn) {\n finalError = (await fn(error, response, request, opts)) as string;\n }\n }\n\n finalError = finalError || ({} as string);\n\n if (opts.throwOnError) {\n throw finalError;\n }\n\n // TODO: we probably want to return error and improve types\n return opts.responseStyle === \"data\"\n ? undefined\n : {\n error: finalError,\n ...result,\n };\n };\n\n const makeMethodFn =\n (method: Uppercase<HttpMethod>) => (options: RequestOptions) =>\n request({ ...options, method });\n\n const makeSseFn =\n (method: Uppercase<HttpMethod>) => async (options: RequestOptions) => {\n const { opts, url } = await beforeRequest(options);\n return createSseClient({\n ...opts,\n body: opts.body as BodyInit | null | undefined,\n headers: opts.headers as unknown as Record<string, string>,\n method,\n onRequest: async (url, init) => {\n let request = new Request(url, init);\n for (const fn of interceptors.request.fns) {\n if (fn) {\n request = await fn(request, opts);\n }\n }\n return request;\n },\n url,\n });\n };\n\n return {\n buildUrl,\n connect: makeMethodFn(\"CONNECT\"),\n delete: makeMethodFn(\"DELETE\"),\n get: makeMethodFn(\"GET\"),\n getConfig,\n head: makeMethodFn(\"HEAD\"),\n interceptors,\n options: makeMethodFn(\"OPTIONS\"),\n patch: makeMethodFn(\"PATCH\"),\n post: makeMethodFn(\"POST\"),\n put: makeMethodFn(\"PUT\"),\n request,\n setConfig,\n sse: {\n connect: makeSseFn(\"CONNECT\"),\n delete: makeSseFn(\"DELETE\"),\n get: makeSseFn(\"GET\"),\n head: makeSseFn(\"HEAD\"),\n options: makeSseFn(\"OPTIONS\"),\n patch: makeSseFn(\"PATCH\"),\n post: makeSseFn(\"POST\"),\n put: makeSseFn(\"PUT\"),\n trace: makeSseFn(\"TRACE\"),\n },\n trace: makeMethodFn(\"TRACE\"),\n } as Client;\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport {\n type ClientOptions,\n type Config,\n createClient,\n createConfig,\n} from \"./client/index.js\";\nimport type { ClientOptions as ClientOptions2 } from \"./types.gen.js\";\n\n/**\n * The `createClientConfig()` function will be called on client initialization\n * and the returned object will become the client's initial configuration.\n *\n * You may want to initialize your client this way instead of calling\n * `setConfig()`. This is useful for example if you're using Next.js\n * to ensure your client always has the correct values.\n */\nexport type CreateClientConfig<T extends ClientOptions = ClientOptions2> = (\n override?: Config<ClientOptions & T>,\n) => Config<Required<ClientOptions> & T>;\n\nexport const client = createClient(createConfig<ClientOptions2>());\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { client } from \"./client.gen.js\";\nimport type {\n Client,\n Options as Options2,\n TDataShape,\n} from \"./client/index.js\";\nimport type {\n AssignMessagingProfileNumbersData,\n AssignMessagingProfileNumbersResponses,\n BulkAssignPhoneNumbersData,\n BulkAssignPhoneNumbersResponses,\n BulkUnassignPhoneNumbersData,\n BulkUnassignPhoneNumbersResponses,\n CheckVerificationData,\n CheckVerificationErrors,\n CheckVerificationResponses,\n CreateBrandData,\n CreateBrandResponses,\n CreateCampaignData,\n CreateCampaignResponses,\n CreateEmailIdentityData,\n CreateEmailIdentityErrors,\n CreateEmailIdentityResponses,\n CreateMessagingProfileData,\n CreateMessagingProfileResponses,\n CreatePhoneOrderData,\n CreatePhoneOrderErrors,\n CreatePhoneOrderResponses,\n CreateQuotaIncreaseRequestData,\n CreateQuotaIncreaseRequestErrors,\n CreateQuotaIncreaseRequestResponses,\n CreateTwofaTemplateData,\n CreateTwofaTemplateResponses,\n CreateVerificationData,\n CreateVerificationErrors,\n CreateVerificationResponses,\n DeleteEmailIdentityData,\n DeleteEmailIdentityErrors,\n DeleteEmailIdentityResponses,\n DeleteMessagingProfileData,\n DeleteMessagingProfileErrors,\n DeleteMessagingProfileResponses,\n DeleteTwofaTemplateData,\n DeleteTwofaTemplateErrors,\n DeleteTwofaTemplateResponses,\n EnableEmailData,\n EnableEmailResponses,\n GetBalanceData,\n GetBalanceHistoryData,\n GetBalanceHistoryResponses,\n GetBalanceResponses,\n GetBalanceUsageData,\n GetBalanceUsageResponses,\n GetBrandData,\n GetBrandErrors,\n GetBrandFeedbackData,\n GetBrandFeedbackErrors,\n GetBrandFeedbackResponses,\n GetBrandResponses,\n GetCampaignData,\n GetCampaignErrors,\n GetCampaignMnoStatusData,\n GetCampaignMnoStatusResponses,\n GetCampaignResponses,\n GetCampaignSharingData,\n GetCampaignSharingResponses,\n GetComplianceEventData,\n GetComplianceEventErrors,\n GetComplianceEventResponses,\n GetEmailHistoryData,\n GetEmailHistoryResponses,\n GetEmailIdentityData,\n GetEmailIdentityErrors,\n GetEmailIdentityResponses,\n GetEmailStatusData,\n GetEmailStatusResponses,\n GetMessagingProfileData,\n GetMessagingProfileErrors,\n GetMessagingProfileResponses,\n GetPhoneNumberData,\n GetPhoneNumberErrors,\n GetPhoneNumberResponses,\n GetPhoneOrderData,\n GetPhoneOrderErrors,\n GetPhoneOrderResponses,\n GetQualifiedUseCasesData,\n GetQualifiedUseCasesResponses,\n GetQuotaIncreaseRequestData,\n GetQuotaIncreaseRequestErrors,\n GetQuotaIncreaseRequestResponses,\n GetTwofaTemplateData,\n GetTwofaTemplateErrors,\n GetTwofaTemplateResponses,\n ListBrandsData,\n ListBrandsResponses,\n ListCampaignsData,\n ListCampaignsResponses,\n ListComplianceEventsData,\n ListComplianceEventsResponses,\n ListEmailIdentitiesData,\n ListEmailIdentitiesResponses,\n ListMessagingProfilesData,\n ListMessagingProfilesResponses,\n ListPhoneNumbersData,\n ListPhoneNumbersResponses,\n ListPhoneOrdersData,\n ListPhoneOrdersResponses,\n ListQuotaIncreaseRequestsData,\n ListQuotaIncreaseRequestsResponses,\n ListQuotasData,\n ListQuotasResponses,\n ListTwofaTemplatesData,\n ListTwofaTemplatesResponses,\n SearchPhoneNumbersData,\n SearchPhoneNumbersErrors,\n SearchPhoneNumbersResponses,\n SendEmailData,\n SendEmailErrors,\n SendEmailIdentityTestData,\n SendEmailIdentityTestErrors,\n SendEmailIdentityTestResponses,\n SendEmailResponses,\n SendMessageData,\n SendMessageErrors,\n SendMessageResponses,\n ShareCampaignData,\n ShareCampaignResponses,\n SubmitTwofaTemplateData,\n SubmitTwofaTemplateErrors,\n SubmitTwofaTemplateResponses,\n UnassignMessagingProfileNumbersData,\n UnassignMessagingProfileNumbersResponses,\n UpdateMessagingProfileData,\n UpdateMessagingProfileErrors,\n UpdateMessagingProfileResponses,\n UpdatePhoneNumberData,\n UpdatePhoneNumberErrors,\n UpdatePhoneNumberResponses,\n UpdateTwofaTemplateData,\n UpdateTwofaTemplateErrors,\n UpdateTwofaTemplateResponses,\n VerifyEmailIdentityDnsData,\n VerifyEmailIdentityDnsResponses,\n} from \"./types.gen.js\";\n\nexport type Options<\n TData extends TDataShape = TDataShape,\n ThrowOnError extends boolean = boolean,\n> = Options2<TData, ThrowOnError> & {\n /**\n * You can provide a client instance returned by `createClient()` instead of\n * individual options. This might be also useful if you want to implement a\n * custom client.\n */\n client?: Client;\n /**\n * You can pass arbitrary values through the `meta` object. This can be\n * used to access values that aren't defined as part of the SDK function.\n */\n meta?: Record<string, unknown>;\n};\n\nexport class Brands {\n /**\n * List brands\n *\n * List all registered 10DLC brands.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static listBrands<ThrowOnError extends boolean = false>(\n options?: Options<ListBrandsData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListBrandsResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/brands\",\n ...options,\n });\n }\n\n /**\n * Register brand\n *\n * Register a 10DLC brand. Created as `PENDING_REGISTRATION`, processed async. $4.50 fee charged on completion.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static createBrand<ThrowOnError extends boolean = false>(\n options?: Options<CreateBrandData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n CreateBrandResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/brands\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Get brand\n *\n * Get brand details including campaigns.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getBrand<ThrowOnError extends boolean = false>(\n options?: Options<GetBrandData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetBrandResponses,\n GetBrandErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/brands/{id}\",\n ...options,\n });\n }\n\n /**\n * Get brand feedback\n *\n * Get TCR identity feedback (reasons for UNVERIFIED).\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getBrandFeedback<ThrowOnError extends boolean = false>(\n options?: Options<GetBrandFeedbackData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetBrandFeedbackResponses,\n GetBrandFeedbackErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/brands/{id}/feedback\",\n ...options,\n });\n }\n}\n\nexport class Campaigns {\n /**\n * List campaigns\n *\n * List all 10DLC campaigns.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static listCampaigns<ThrowOnError extends boolean = false>(\n options?: Options<ListCampaignsData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListCampaignsResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/campaigns\",\n ...options,\n });\n }\n\n /**\n * Create campaign\n *\n * Register a 10DLC campaign. Created as `PENDING_REGISTRATION`, processed async. Fee varies by use case.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static createCampaign<ThrowOnError extends boolean = false>(\n options?: Options<CreateCampaignData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n CreateCampaignResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/campaigns\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Get campaign\n *\n * Get campaign details.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getCampaign<ThrowOnError extends boolean = false>(\n options?: Options<GetCampaignData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetCampaignResponses,\n GetCampaignErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/campaigns/{id}\",\n ...options,\n });\n }\n\n /**\n * Get qualified use cases\n *\n * Get use cases a brand qualifies for.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getQualifiedUseCases<ThrowOnError extends boolean = false>(\n options?: Options<GetQualifiedUseCasesData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetQualifiedUseCasesResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/campaigns/usecases/{brandId}\",\n ...options,\n });\n }\n\n /**\n * Share campaign\n *\n * Share with upstream CNP/DCA.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static shareCampaign<ThrowOnError extends boolean = false>(\n options?: Options<ShareCampaignData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n ShareCampaignResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/campaigns/{id}/share\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Get sharing status\n *\n * Get campaign sharing status with upstream CNPs.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getCampaignSharing<ThrowOnError extends boolean = false>(\n options?: Options<GetCampaignSharingData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetCampaignSharingResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/campaigns/{id}/sharing\",\n ...options,\n });\n }\n\n /**\n * Get MNO status\n *\n * Get per-carrier approval status.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getCampaignMnoStatus<ThrowOnError extends boolean = false>(\n options?: Options<GetCampaignMnoStatusData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetCampaignMnoStatusResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/campaigns/{id}/operation-status\",\n ...options,\n });\n }\n}\n\nexport class Compliance {\n /**\n * List compliance events\n *\n * List compliance events. Created automatically on brand/campaign status changes.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static listComplianceEvents<ThrowOnError extends boolean = false>(\n options?: Options<ListComplianceEventsData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListComplianceEventsResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/compliance\",\n ...options,\n });\n }\n\n /**\n * Get compliance event\n *\n * Get event with messages and comments. Auto-marks as read.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getComplianceEvent<ThrowOnError extends boolean = false>(\n options?: Options<GetComplianceEventData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetComplianceEventResponses,\n GetComplianceEventErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/compliance/{id}\",\n ...options,\n });\n }\n}\n\nexport class Email {\n /**\n * Get email status\n *\n * Check if email is enabled.\n */\n public static getEmailStatus<ThrowOnError extends boolean = false>(\n options?: Options<GetEmailStatusData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetEmailStatusResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/status\",\n ...options,\n });\n }\n\n /**\n * Enable email\n *\n * Enable email sending. Async — poll `GET /email/status` until `enabled` is `true`.\n */\n public static enableEmail<ThrowOnError extends boolean = false>(\n options?: Options<EnableEmailData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n EnableEmailResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/enable\",\n ...options,\n });\n }\n\n /**\n * List identities\n *\n * List email domain identities.\n */\n public static listEmailIdentities<ThrowOnError extends boolean = false>(\n options?: Options<ListEmailIdentitiesData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListEmailIdentitiesResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/identities\",\n ...options,\n });\n }\n\n /**\n * Add domain\n *\n * Add a sending domain. DNS records appear once processing completes.\n *\n * **Plan**: Adding a second (or further) verified domain requires the `multiple_email_domains` capability — included in the **Email** and **All Services** plans.\n */\n public static createEmailIdentity<ThrowOnError extends boolean = false>(\n options?: Options<CreateEmailIdentityData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n CreateEmailIdentityResponses,\n CreateEmailIdentityErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/identities\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Delete identity\n *\n * Remove a domain identity.\n */\n public static deleteEmailIdentity<ThrowOnError extends boolean = false>(\n options?: Options<DeleteEmailIdentityData, ThrowOnError>,\n ) {\n return (options?.client ?? client).delete<\n DeleteEmailIdentityResponses,\n DeleteEmailIdentityErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/identities/{id}\",\n ...options,\n });\n }\n\n /**\n * Get identity\n *\n * Get identity with DNS records.\n */\n public static getEmailIdentity<ThrowOnError extends boolean = false>(\n options?: Options<GetEmailIdentityData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetEmailIdentityResponses,\n GetEmailIdentityErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/identities/{id}\",\n ...options,\n });\n }\n\n /**\n * Verify DNS\n *\n * Trigger DNS verification check.\n */\n public static verifyEmailIdentityDns<ThrowOnError extends boolean = false>(\n options?: Options<VerifyEmailIdentityDnsData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n VerifyEmailIdentityDnsResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/identities/{id}/check-dns\",\n ...options,\n });\n }\n\n /**\n * Send test email\n *\n * Send a test email from a verified domain.\n */\n public static sendEmailIdentityTest<ThrowOnError extends boolean = false>(\n options?: Options<SendEmailIdentityTestData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n SendEmailIdentityTestResponses,\n SendEmailIdentityTestErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/identities/{id}/send-test\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Get sent emails\n *\n * Sent email history, newest first. Cursor-paginated.\n */\n public static getEmailHistory<ThrowOnError extends boolean = false>(\n options?: Options<GetEmailHistoryData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetEmailHistoryResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/history\",\n ...options,\n });\n }\n\n /**\n * Send email\n *\n * Send an email. The `from` domain must be verified. Rate limit headers are included: `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset`.\n */\n public static sendEmail<ThrowOnError extends boolean = false>(\n options?: Options<SendEmailData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n SendEmailResponses,\n SendEmailErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/email/send\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n}\n\nexport class Balance {\n /**\n * Get balance\n *\n * Current balance in microdollars (1 dollar = 1,000,000).\n */\n public static getBalance<ThrowOnError extends boolean = false>(\n options?: Options<GetBalanceData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetBalanceResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/balance\",\n ...options,\n });\n }\n\n /**\n * Get history\n *\n * Paginated transaction history.\n */\n public static getBalanceHistory<ThrowOnError extends boolean = false>(\n options?: Options<GetBalanceHistoryData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetBalanceHistoryResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/balance/history\",\n ...options,\n });\n }\n\n /**\n * Get usage\n *\n * Current month debit summary.\n */\n public static getBalanceUsage<ThrowOnError extends boolean = false>(\n options?: Options<GetBalanceUsageData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetBalanceUsageResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/balance/usage\",\n ...options,\n });\n }\n}\n\nexport class Messaging {\n /**\n * Send message\n *\n * Send an SMS or MMS. Rate limit headers are included: `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static sendMessage<ThrowOnError extends boolean = false>(\n options?: Options<SendMessageData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n SendMessageResponses,\n SendMessageErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/messaging/send\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n}\n\nexport class FaVerifications {\n /**\n * Send verification code\n *\n * Send a 6-digit verification code via email or SMS. Rate limit headers are included: `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset`.\n *\n * Requires permission: `twofa.create`.\n *\n * **Plan**: Requires the `twofa` capability — included in the **All Services** plan.\n *\n * **Rate limits**: 60/min per account, 1/min per recipient, 5/hour per tenant+recipient.\n *\n * **Note**: This endpoint is served by the 2FA service, not the main API. Base URL differs in production.\n */\n public static createVerification<ThrowOnError extends boolean = false>(\n options?: Options<CreateVerificationData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n CreateVerificationResponses,\n CreateVerificationErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/twofa/verifications\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Check verification code\n *\n * Verify a submitted code. Returns the verification status.\n *\n * Requires permission: `twofa.check`.\n *\n * **Plan**: Requires the `twofa` capability — included in the **All Services** plan.\n *\n * After 5 wrong attempts the verification is permanently `failed`. Codes expire after 10 minutes.\n *\n * **Terminal statuses** (`approved`, `failed`, `expired`) reject further checks.\n */\n public static checkVerification<ThrowOnError extends boolean = false>(\n options: Options<CheckVerificationData, ThrowOnError>,\n ) {\n return (options.client ?? client).post<\n CheckVerificationResponses,\n CheckVerificationErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/twofa/verifications/{id}/check\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options.headers,\n },\n });\n }\n}\n\nexport class FaTemplates {\n /**\n * List templates\n *\n * List all 2FA templates (email and SMS) for the account.\n *\n * Requires permission: `twofa_templates.read`.\n *\n * **Plan**: Requires the `twofa` capability — included in the **All Services** plan.\n */\n public static listTwofaTemplates<ThrowOnError extends boolean = false>(\n options?: Options<ListTwofaTemplatesData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListTwofaTemplatesResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/twofa/templates\",\n ...options,\n });\n }\n\n /**\n * Create template\n *\n * Create a new 2FA template. Set `channel` to `EMAIL` (with `subject` + `bodyType`) or `SMS` (body-only). Starts in `DRAFT` status. Body must contain the `{{code}}` placeholder.\n *\n * Requires permission: `twofa_templates.write`.\n *\n * **Plan**: Requires the `twofa` capability — included in the **All Services** plan.\n */\n public static createTwofaTemplate<ThrowOnError extends boolean = false>(\n options?: Options<CreateTwofaTemplateData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n CreateTwofaTemplateResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/twofa/templates\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Delete template\n *\n * Delete a template. Cannot delete while in `PENDING_REVIEW` status.\n *\n * Requires permission: `twofa_templates.write`.\n *\n * **Plan**: Requires the `twofa` capability — included in the **All Services** plan.\n */\n public static deleteTwofaTemplate<ThrowOnError extends boolean = false>(\n options: Options<DeleteTwofaTemplateData, ThrowOnError>,\n ) {\n return (options.client ?? client).delete<\n DeleteTwofaTemplateResponses,\n DeleteTwofaTemplateErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/twofa/templates/{id}\",\n ...options,\n });\n }\n\n /**\n * Get template\n *\n * Get a single template by ID.\n *\n * Requires permission: `twofa_templates.read`.\n *\n * **Plan**: Requires the `twofa` capability — included in the **All Services** plan.\n */\n public static getTwofaTemplate<ThrowOnError extends boolean = false>(\n options: Options<GetTwofaTemplateData, ThrowOnError>,\n ) {\n return (options.client ?? client).get<\n GetTwofaTemplateResponses,\n GetTwofaTemplateErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/twofa/templates/{id}\",\n ...options,\n });\n }\n\n /**\n * Update template\n *\n * Update a template. The `channel` field must match the existing template — channel cannot be changed. Only editable in `DRAFT` or `REJECTED` status. Editing resets status to `DRAFT`.\n *\n * Requires permission: `twofa_templates.write`.\n *\n * **Plan**: Requires the `twofa` capability — included in the **All Services** plan.\n */\n public static updateTwofaTemplate<ThrowOnError extends boolean = false>(\n options: Options<UpdateTwofaTemplateData, ThrowOnError>,\n ) {\n return (options.client ?? client).patch<\n UpdateTwofaTemplateResponses,\n UpdateTwofaTemplateErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/twofa/templates/{id}\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options.headers,\n },\n });\n }\n\n /**\n * Submit for review\n *\n * Submit a `DRAFT` or `REJECTED` template for admin review. Once submitted, edits are locked until the template is approved or rejected.\n *\n * Requires permission: `twofa_templates.write`.\n *\n * **Plan**: Requires the `twofa` capability — included in the **All Services** plan.\n *\n * **Approval flow**: `DRAFT` → `PENDING_REVIEW` → `APPROVED` or `REJECTED`. Only `APPROVED` templates can be used in verification API calls.\n */\n public static submitTwofaTemplate<ThrowOnError extends boolean = false>(\n options: Options<SubmitTwofaTemplateData, ThrowOnError>,\n ) {\n return (options.client ?? client).post<\n SubmitTwofaTemplateResponses,\n SubmitTwofaTemplateErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/twofa/templates/{id}/submit\",\n ...options,\n });\n }\n}\n\nexport class Quotas {\n /**\n * List account quotas\n *\n * Get all rate limits and quotas for the account. Shows both defaults and any admin-set overrides.\n *\n * Requires permission: `quotas.read`.\n */\n public static listQuotas<ThrowOnError extends boolean = false>(\n options?: Options<ListQuotasData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListQuotasResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/quotas\",\n ...options,\n });\n }\n\n /**\n * List increase requests\n *\n * List all quota increase requests for the account.\n *\n * Requires permission: `quotas.read`.\n */\n public static listQuotaIncreaseRequests<ThrowOnError extends boolean = false>(\n options?: Options<ListQuotaIncreaseRequestsData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListQuotaIncreaseRequestsResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/quotas/increase-requests\",\n ...options,\n });\n }\n\n /**\n * Request quota increase\n *\n * Submit a request to increase a specific quota. Only one pending request per resource/action/window is allowed. The requested limit must exceed the current limit.\n *\n * Requires permission: `quotas.request_increase`.\n *\n * Admin will review and either approve (automatically applies the new limit) or reject (with a note).\n */\n public static createQuotaIncreaseRequest<\n ThrowOnError extends boolean = false,\n >(options?: Options<CreateQuotaIncreaseRequestData, ThrowOnError>) {\n return (options?.client ?? client).post<\n CreateQuotaIncreaseRequestResponses,\n CreateQuotaIncreaseRequestErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/quotas/increase-requests\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Get increase request\n *\n * Get a single quota increase request by ID.\n *\n * Requires permission: `quotas.read`.\n */\n public static getQuotaIncreaseRequest<ThrowOnError extends boolean = false>(\n options?: Options<GetQuotaIncreaseRequestData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetQuotaIncreaseRequestResponses,\n GetQuotaIncreaseRequestErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/quotas/increase-requests/{id}\",\n ...options,\n });\n }\n}\n\nexport class MessagingProfiles {\n /**\n * List messaging profiles\n *\n * List all messaging profiles for the account. Supports pagination and search.\n *\n * Requires permission: `messaging_profiles.read`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static listMessagingProfiles<ThrowOnError extends boolean = false>(\n options?: Options<ListMessagingProfilesData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListMessagingProfilesResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/messaging-profiles\",\n ...options,\n });\n }\n\n /**\n * Create messaging profile\n *\n * Create a new messaging profile. Default allowed destination is US.\n *\n * Requires permission: `messaging_profiles.write`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static createMessagingProfile<ThrowOnError extends boolean = false>(\n options?: Options<CreateMessagingProfileData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n CreateMessagingProfileResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/messaging-profiles\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Delete messaging profile\n *\n * Delete a messaging profile. All phone numbers must be unassigned first — deletion is blocked while numbers are still associated.\n *\n * Requires permission: `messaging_profiles.write`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static deleteMessagingProfile<ThrowOnError extends boolean = false>(\n options?: Options<DeleteMessagingProfileData, ThrowOnError>,\n ) {\n return (options?.client ?? client).delete<\n DeleteMessagingProfileResponses,\n DeleteMessagingProfileErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/messaging-profiles/{id}\",\n ...options,\n });\n }\n\n /**\n * Get messaging profile\n *\n * Get a messaging profile by ID with full configuration.\n *\n * Requires permission: `messaging_profiles.read`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getMessagingProfile<ThrowOnError extends boolean = false>(\n options?: Options<GetMessagingProfileData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetMessagingProfileResponses,\n GetMessagingProfileErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/messaging-profiles/{id}\",\n ...options,\n });\n }\n\n /**\n * Update messaging profile\n *\n * Update a messaging profile. Changes to auto-response keywords are applied automatically.\n *\n * Requires permission: `messaging_profiles.write`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static updateMessagingProfile<ThrowOnError extends boolean = false>(\n options?: Options<UpdateMessagingProfileData, ThrowOnError>,\n ) {\n return (options?.client ?? client).put<\n UpdateMessagingProfileResponses,\n UpdateMessagingProfileErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/messaging-profiles/{id}\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Assign numbers to profile\n *\n * Assign phone numbers to a messaging profile. Numbers that fail to assign are skipped and reported in the response.\n *\n * Requires permission: `messaging_profiles.write`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static assignMessagingProfileNumbers<\n ThrowOnError extends boolean = false,\n >(options?: Options<AssignMessagingProfileNumbersData, ThrowOnError>) {\n return (options?.client ?? client).post<\n AssignMessagingProfileNumbersResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/messaging-profiles/{id}/assign\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Unassign numbers from profile\n *\n * Unassign phone numbers from a messaging profile. Numbers revert to `UNASSIGNED` status.\n *\n * Requires permission: `messaging_profiles.write`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static unassignMessagingProfileNumbers<\n ThrowOnError extends boolean = false,\n >(options?: Options<UnassignMessagingProfileNumbersData, ThrowOnError>) {\n return (options?.client ?? client).post<\n UnassignMessagingProfileNumbersResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/messaging-profiles/{id}/unassign\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n}\n\nexport class PhoneNumbers {\n /**\n * Search available numbers\n *\n * Search for available phone numbers to purchase. Rate limit headers are included: `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset`.\n *\n * Requires permission: `numbers.search`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n *\n * **Rate limit**: 30 searches/min per account.\n */\n public static searchPhoneNumbers<ThrowOnError extends boolean = false>(\n options?: Options<SearchPhoneNumbersData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n SearchPhoneNumbersResponses,\n SearchPhoneNumbersErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-numbers/search\",\n ...options,\n });\n }\n\n /**\n * List phone numbers\n *\n * List all phone numbers for the account. Supports filtering by status, capabilities, messaging profile, tags, and country.\n *\n * Requires permission: `numbers.read`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static listPhoneNumbers<ThrowOnError extends boolean = false>(\n options?: Options<ListPhoneNumbersData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListPhoneNumbersResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-numbers\",\n ...options,\n });\n }\n\n /**\n * Get phone number\n *\n * Get a single phone number by ID.\n *\n * Requires permission: `numbers.read`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getPhoneNumber<ThrowOnError extends boolean = false>(\n options?: Options<GetPhoneNumberData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetPhoneNumberResponses,\n GetPhoneNumberErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-numbers/{id}\",\n ...options,\n });\n }\n\n /**\n * Update phone number\n *\n * Update a phone number (messaging profile assignment, tags). If a messaging profile assignment fails, the update is rejected.\n *\n * Requires permission: `numbers.write`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static updatePhoneNumber<ThrowOnError extends boolean = false>(\n options?: Options<UpdatePhoneNumberData, ThrowOnError>,\n ) {\n return (options?.client ?? client).put<\n UpdatePhoneNumberResponses,\n UpdatePhoneNumberErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-numbers/{id}\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Bulk assign to profile\n *\n * Assign multiple phone numbers to a messaging profile. Numbers that fail to assign are skipped and reported in the response.\n *\n * Requires permission: `numbers.write`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static bulkAssignPhoneNumbers<ThrowOnError extends boolean = false>(\n options?: Options<BulkAssignPhoneNumbersData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n BulkAssignPhoneNumbersResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-numbers/bulk-assign\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Bulk unassign from profile\n *\n * Unassign multiple phone numbers from their messaging profiles. Numbers revert to `UNASSIGNED` status.\n *\n * Requires permission: `numbers.write`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static bulkUnassignPhoneNumbers<ThrowOnError extends boolean = false>(\n options?: Options<BulkUnassignPhoneNumbersData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n BulkUnassignPhoneNumbersResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-numbers/bulk-unassign\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n}\n\nexport class PhoneOrders {\n /**\n * List phone orders\n *\n * List all phone number orders. Supports pagination and filtering by status.\n *\n * Requires permission: `numbers.read`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static listPhoneOrders<ThrowOnError extends boolean = false>(\n options?: Options<ListPhoneOrdersData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n ListPhoneOrdersResponses,\n unknown,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-orders\",\n ...options,\n });\n }\n\n /**\n * Place phone number order\n *\n * Purchase phone numbers. Creates a PhoneOrder with items, provisions the numbers, charges the account balance, and optionally assigns to a messaging profile.\n *\n * Requires permission: `numbers.buy`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static createPhoneOrder<ThrowOnError extends boolean = false>(\n options?: Options<CreatePhoneOrderData, ThrowOnError>,\n ) {\n return (options?.client ?? client).post<\n CreatePhoneOrderResponses,\n CreatePhoneOrderErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-orders\",\n ...options,\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n }\n\n /**\n * Get phone order\n *\n * Get a single phone order with items.\n *\n * Requires permission: `numbers.read`.\n *\n * **Plan**: Requires the `sms` capability — included in the **All Services** plan.\n */\n public static getPhoneOrder<ThrowOnError extends boolean = false>(\n options?: Options<GetPhoneOrderData, ThrowOnError>,\n ) {\n return (options?.client ?? client).get<\n GetPhoneOrderResponses,\n GetPhoneOrderErrors,\n ThrowOnError\n >({\n security: [\n {\n name: \"x-access-key-id\",\n type: \"apiKey\",\n },\n {\n name: \"x-secret-access-key\",\n type: \"apiKey\",\n },\n ],\n url: \"/phone-orders/{id}\",\n ...options,\n });\n }\n}\n","import { client as defaultClient } from './generated/client.gen.js'\nimport { createClient } from './generated/client/index.js'\nimport type { Client, Config } from './generated/client/index.js'\n\nexport * from './generated/index.js'\n\nexport interface BlocxConfig {\n /** API access key ID (sent as `x-access-key-id`). */\n accessKeyId: string\n /** API secret access key (sent as `x-secret-access-key`). */\n secretAccessKey: string\n /** Override the API base URL. Defaults to https://api.blocx.com. */\n baseUrl?: string\n /** Optional custom fetch implementation. */\n fetch?: typeof globalThis.fetch\n /** Additional headers to merge into every request. */\n headers?: Record<string, string>\n}\n\nfunction buildConfig(options: BlocxConfig): Config {\n const { accessKeyId, secretAccessKey, baseUrl, fetch, headers } = options\n const config: Config = {\n baseUrl: baseUrl ?? 'https://api.blocx.com',\n headers: {\n 'x-access-key-id': accessKeyId,\n 'x-secret-access-key': secretAccessKey,\n ...headers,\n },\n }\n if (fetch) config.fetch = fetch\n return config\n}\n\n/**\n * Create a configured Blocx SDK client. Pass the returned `client` into any\n * generated SDK call via the `client` option, or call `setDefault()` to make\n * it the default for every call in the process.\n */\nexport function createBlocxClient(options: BlocxConfig): {\n client: Client\n setDefault: () => Client\n} {\n const config = buildConfig(options)\n const instance = createClient(config)\n\n return {\n client: instance,\n setDefault() {\n defaultClient.setConfig(config)\n return instance\n },\n }\n}\n"]}