import { NarrationParagraph, VoiceSettings } from './narration-script';
export interface AudioGenerationOptions {
    outputFilePath: string;
}
export interface TtsService {
    generateSSML(paragraph: NarrationParagraph): Promise<string>;
    generateAudio(ssml: string, options: AudioGenerationOptions): Promise<void>;
}
export declare enum TtsServiceType {
    Azure = "azure"
}
export declare abstract class BaseTtsService implements TtsService {
    generateSSML(paragraph: NarrationParagraph): Promise<string>;
    protected validateXML(xml: string, lineOffset: number): void;
    protected buildSpeakStartTag(voiceSettings: VoiceSettings): string;
    protected buildVoiceStartTag(voiceSettings: VoiceSettings): string;
    protected buildProsodyStartTag(prosodySettings: Exclude<VoiceSettings['prosody'], undefined>): string;
    protected buildMsttsExpressAsStartTag(msttsExpressAsSettings: Exclude<VoiceSettings['msttsExpressAs'], undefined>): string;
    protected generateSsmlWithoutValidation(paragraph: NarrationParagraph): {
        lineOffset: number;
        ssml: string;
    };
    generateAudio(_ssml: string, _options: AudioGenerationOptions): Promise<void>;
}
//# sourceMappingURL=tts-service.d.ts.map