import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient.mjs"; import { type NormalizedClientOptionsWithAuth } from "../../../../BaseClient.mjs"; import * as core from "../../../../core/index.mjs"; import * as Corti from "../../../index.mjs"; export declare namespace TranscriptsClient { type Options = BaseClientOptions; interface RequestOptions extends BaseRequestOptions { } } export declare class TranscriptsClient { protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: TranscriptsClient.Options); /** * Retrieves a list of transcripts for a given interaction. Transcripts are ordered based on their creation time. Default ordering (desc) will return the most recent transcript first in the list. Use query parameter `direction` to define the order of the list (`asc` for ascending and `desc` for descending). * * @param {Corti.Uuid} id - The unique identifier of the interaction. Must be a valid UUID. * @param {Corti.TranscriptsListRequest} request * @param {TranscriptsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Corti.BadRequestError} * @throws {@link Corti.UnauthorizedError} * @throws {@link Corti.ForbiddenError} * @throws {@link Corti.InternalServerError} * @throws {@link Corti.GatewayTimeoutError} * * @example * await client.transcripts.list("f47ac10b-58cc-4372-a567-0e02b2c3d479") */ list(id: Corti.Uuid, request?: Corti.TranscriptsListRequest, requestOptions?: TranscriptsClient.RequestOptions): core.HttpResponsePromise; private __list; /** * Create a transcript from an audio file uploaded to the interaction via `/recordings` endpoint.
Each interaction may have more than one audio file and transcript associated with it. Audio files up to 120 minutes in total audio duration and 150 MB in size may be used.

By default, requests will process synchronously for 25 seconds before timeout, upon which processing will continue asynchronously. Set the `async` parameter to true to receive the location header immediately and process the request asynchronously. Read more [here](https://docs.corti.ai/stt/transcripts).
* * @param {Corti.Uuid} id - The unique identifier of the interaction. Must be a valid UUID. * @param {Corti.TranscriptsCreateRequest} request * @param {TranscriptsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Corti.BadRequestError} * @throws {@link Corti.UnauthorizedError} * @throws {@link Corti.ForbiddenError} * @throws {@link Corti.InternalServerError} * @throws {@link Corti.GatewayTimeoutError} * * @example * await client.transcripts.create("f47ac10b-58cc-4372-a567-0e02b2c3d479", { * recordingId: "f47ac10b-58cc-4372-a567-0e02b2c3d479", * primaryLanguage: "en" * }) */ create(id: Corti.Uuid, request: Corti.TranscriptsCreateRequest, requestOptions?: TranscriptsClient.RequestOptions): core.HttpResponsePromise; private __create; /** * Retrieve a transcript from a specific interaction.
Each interaction may have more than one transcript associated with it. Use the List Transcript request (`GET /interactions/{id}/transcripts/`) to see all transcriptIds available for the interaction.

The client can poll this Get Transcript endpoint (`GET /interactions/{id}/transcripts/{transcriptId}/status`) for transcript status changes:
- `200 OK` with status `processing`, `completed`, or `failed`
- `404 Not Found` if the `interactionId` or `transcriptId` are invalid

Status of `completed` indicates the transcript is finalized. If the transcript is retrieved while status is `processing`, then it will be incomplete.
* * @param {Corti.Uuid} id - The unique identifier of the interaction. Must be a valid UUID. * @param {Corti.Uuid} transcriptId - The unique identifier of the transcript. Must be a valid UUID. * @param {TranscriptsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Corti.BadRequestError} * @throws {@link Corti.UnauthorizedError} * @throws {@link Corti.ForbiddenError} * @throws {@link Corti.InternalServerError} * @throws {@link Corti.GatewayTimeoutError} * * @example * await client.transcripts.get("f47ac10b-58cc-4372-a567-0e02b2c3d479", "f47ac10b-58cc-4372-a567-0e02b2c3d479") */ get(id: Corti.Uuid, transcriptId: Corti.Uuid, requestOptions?: TranscriptsClient.RequestOptions): core.HttpResponsePromise; private __get; /** * Deletes a specific transcript associated with an interaction. * * @param {Corti.Uuid} id - The unique identifier of the interaction. Must be a valid UUID. * @param {Corti.Uuid} transcriptId - The unique identifier of the transcript. Must be a valid UUID. * @param {TranscriptsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Corti.BadRequestError} * @throws {@link Corti.UnauthorizedError} * @throws {@link Corti.ForbiddenError} * @throws {@link Corti.InternalServerError} * @throws {@link Corti.GatewayTimeoutError} * * @example * await client.transcripts.delete("f47ac10b-58cc-4372-a567-0e02b2c3d479", "f47ac10b-58cc-4372-a567-0e02b2c3d479") */ delete(id: Corti.Uuid, transcriptId: Corti.Uuid, requestOptions?: TranscriptsClient.RequestOptions): core.HttpResponsePromise; private __delete; /** * Poll for transcript creation status.
Status of `completed` indicates the transcript is finalized.
If the transcript is retrieved while status is `processing`, then it will be incomplete.
Status of `failed` indicate the transcript was not created successfully; please retry.
* * @param {Corti.Uuid} id - The unique identifier of the interaction. Must be a valid UUID. * @param {Corti.Uuid} transcriptId - The unique identifier of the transcript. Must be a valid UUID. * @param {TranscriptsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Corti.NotFoundError} * * @example * await client.transcripts.getStatus("f47ac10b-58cc-4372-a567-0e02b2c3d479", "f47ac10b-58cc-4372-a567-0e02b2c3d479") */ getStatus(id: Corti.Uuid, transcriptId: Corti.Uuid, requestOptions?: TranscriptsClient.RequestOptions): core.HttpResponsePromise; private __getStatus; }