import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient.js"; import { type NormalizedClientOptionsWithAuth } from "../../../../BaseClient.js"; import * as core from "../../../../core/index.js"; import * as Hedra from "../../../index.js"; export declare namespace ModelsClient { type Options = BaseClientOptions; interface RequestOptions extends BaseRequestOptions { } } /** * Discover models and estimate cost. */ export declare class ModelsClient { protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options?: ModelsClient.Options); /** * @param {Hedra.ModelsListRequest} request * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Hedra.BadRequestError} * @throws {@link Hedra.ForbiddenError} * @throws {@link Hedra.NotFoundError} * @throws {@link Hedra.TooManyRequestsError} * @throws {@link Hedra.InternalServerError} * @throws {@link errors.HedraError} * @throws {@link errors.HedraTimeoutError} * * @example * await client.models.list() */ list(request?: Hedra.ModelsListRequest, requestOptions?: ModelsClient.RequestOptions): core.HttpResponsePromise; private __list; /** * @param {string} model - The model's public id (`GET /v3/models`). * @param {Hedra.ModelsGetRequest} request * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Hedra.BadRequestError} * @throws {@link Hedra.ForbiddenError} * @throws {@link Hedra.NotFoundError} * @throws {@link Hedra.TooManyRequestsError} * @throws {@link Hedra.InternalServerError} * @throws {@link errors.HedraError} * @throws {@link errors.HedraTimeoutError} * * @example * await client.models.get("model") */ get(model: string, request?: Hedra.ModelsGetRequest, requestOptions?: ModelsClient.RequestOptions): core.HttpResponsePromise; private __get; /** * @param {string} model - The model's public id (`GET /v3/models`). * @param {Hedra.ModelsListModelJobsRequest} request * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Hedra.BadRequestError} * @throws {@link Hedra.UnauthorizedError} * @throws {@link Hedra.ForbiddenError} * @throws {@link Hedra.NotFoundError} * @throws {@link Hedra.TooManyRequestsError} * @throws {@link Hedra.InternalServerError} * @throws {@link errors.HedraError} * @throws {@link errors.HedraTimeoutError} * * @example * await client.models.listModelJobs("model") */ listModelJobs(model: string, request?: Hedra.ModelsListModelJobsRequest, requestOptions?: ModelsClient.RequestOptions): Promise>; /** * Voices this model accepts — the shared library, plus the caller's own cloned voices when the request carries credentials. * * @param {string} model - The model's public id (`GET /v3/models`). * @param {Hedra.ModelsListVoicesRequest} request * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Hedra.BadRequestError} * @throws {@link Hedra.UnauthorizedError} * @throws {@link Hedra.ForbiddenError} * @throws {@link Hedra.NotFoundError} * @throws {@link Hedra.TooManyRequestsError} * @throws {@link Hedra.InternalServerError} * @throws {@link errors.HedraError} * @throws {@link errors.HedraTimeoutError} * * @example * await client.models.listVoices("model") */ listVoices(model: string, request?: Hedra.ModelsListVoicesRequest, requestOptions?: ModelsClient.RequestOptions): core.HttpResponsePromise; private __listVoices; /** * The voices this model accepts, ranked against a description — the whole shared library, including the voices the listing does not return. * * @param {string} model - The model's public id (`GET /v3/models`). * @param {Hedra.ModelsSearchVoicesRequest} request * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Hedra.BadRequestError} * @throws {@link Hedra.UnauthorizedError} * @throws {@link Hedra.ForbiddenError} * @throws {@link Hedra.NotFoundError} * @throws {@link Hedra.TooManyRequestsError} * @throws {@link Hedra.InternalServerError} * @throws {@link errors.HedraError} * @throws {@link errors.HedraTimeoutError} * * @example * await client.models.searchVoices("model", { * q: "q" * }) */ searchVoices(model: string, request: Hedra.ModelsSearchVoicesRequest, requestOptions?: ModelsClient.RequestOptions): core.HttpResponsePromise; private __searchVoices; /** * A standalone one-operation OpenAPI spec for this model's submit call. * * @param {string} model - The model's public id (`GET /v3/models`). * @param {Hedra.ModelsGetOpenapiRequest} request * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Hedra.BadRequestError} * @throws {@link Hedra.ForbiddenError} * @throws {@link Hedra.NotFoundError} * @throws {@link Hedra.TooManyRequestsError} * @throws {@link Hedra.InternalServerError} * @throws {@link errors.HedraError} * @throws {@link errors.HedraTimeoutError} * * @example * await client.models.getOpenapi("model") */ getOpenapi(model: string, request?: Hedra.ModelsGetOpenapiRequest, requestOptions?: ModelsClient.RequestOptions): core.HttpResponsePromise>; private __getOpenapi; /** * Return what `POST /v3/models/{model}` would charge for this `input`. * * Validates `input` against the model's input schema and returns the price in * US dollars. Creates no job, charges nothing, and does not check the wallet * balance. The response includes no completion time: a job's * `estimated_completion_at` appears on the submit response, on * `GET /v3/jobs/{job_id}/status`, and on `GET /v3/jobs/{job_id}/stream`. * * @param {string} model - The model's public id (`GET /v3/models`). * @param {Hedra.EstimateRequest} request * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Hedra.BadRequestError} * @throws {@link Hedra.UnauthorizedError} * @throws {@link Hedra.ForbiddenError} * @throws {@link Hedra.NotFoundError} * @throws {@link Hedra.TooManyRequestsError} * @throws {@link Hedra.InternalServerError} * @throws {@link errors.HedraError} * @throws {@link errors.HedraTimeoutError} * * @example * await client.models.estimate("model") */ estimate(model: string, request?: Hedra.EstimateRequest, requestOptions?: ModelsClient.RequestOptions): core.HttpResponsePromise; private __estimate; }