export interface TtsRequest {
    text: string;
    voice?: string;
    provider?: string;
}
export interface TtsResult {
    provider: string;
    mode: 'local' | 'remote';
    filePath: string;
    mediaType: string;
}
export interface TtsProvider {
    id: string;
    mode: 'local' | 'remote';
    synthesize(request: TtsRequest, outputPath: string, env?: NodeJS.ProcessEnv): TtsResult;
}
export declare const DEFAULT_TTS_PROVIDER = "edge";
export declare const DEFAULT_EDGE_TTS_VOICE = "en-GB-SoniaNeural";
export declare const MAX_TTS_TEXT_LENGTH = 2000;
export declare const TTS_OUTBOUND_DIR = "/workspace/group/.nanoclaw-outbound/tts";
export declare function getTtsOutboundDir(env?: NodeJS.ProcessEnv): string;
export declare function ensureTtsOutboundDir(env?: NodeJS.ProcessEnv): string;
export declare class EdgeTtsProvider implements TtsProvider {
    id: string;
    mode: 'remote';
    synthesize(request: TtsRequest, outputPath: string, env?: NodeJS.ProcessEnv): TtsResult;
}
export declare function resolveTtsProvider(providerId?: string, env?: NodeJS.ProcessEnv): TtsProvider;
export declare function synthesizeSpeech(request: TtsRequest, env?: NodeJS.ProcessEnv): TtsResult;
//# sourceMappingURL=tts.d.ts.map