/**
 * This file was auto-generated by Fern from our API Definition.
 */
import * as environments from "./environments.mjs";
import * as core from "./core/index.mjs";
import { Tts } from "./api/resources/tts/client/Client.mjs";
import { Voices } from "./api/resources/voices/client/Client.mjs";
export declare namespace RespeecherClient {
    interface Options {
        environment?: core.Supplier<environments.RespeecherEnvironment | environments.RespeecherEnvironmentUrls>;
        /** Specify a custom URL to connect the client to. */
        baseUrl?: core.Supplier<string>;
        apiKey?: core.Supplier<string>;
        /** Additional headers to include in requests. */
        headers?: Record<string, string | core.Supplier<string | undefined> | undefined>;
    }
    interface RequestOptions {
        /** The maximum time to wait for a response in seconds. */
        timeoutInSeconds?: number;
        /** The number of times to retry the request. Defaults to 2. */
        maxRetries?: number;
        /** A hook to abort the request. */
        abortSignal?: AbortSignal;
        /** Additional headers to include in the request. */
        headers?: Record<string, string | core.Supplier<string | undefined> | undefined>;
    }
}
export declare class RespeecherClient {
    protected readonly _options: RespeecherClient.Options;
    protected _tts: Tts | undefined;
    protected _voices: Voices | undefined;
    constructor(_options?: RespeecherClient.Options);
    get tts(): Tts;
    get voices(): Voices;
}
