import { Talk } from '../types/voice'; import { VoiceEngine } from './VoiceEngine'; export type ElevenLabsApplyTextNormalization = 'auto' | 'on' | 'off'; export interface ElevenLabsVoiceSettingsOptions { stability?: number; similarityBoost?: number; style?: number; useSpeakerBoost?: boolean; speed?: number; } /** * ElevenLabs text-to-speech engine. */ export declare class ElevenLabsEngine implements VoiceEngine { private apiEndpoint; private model; private outputFormat; private languageCode?; private voiceSettings; private seed?; private previousText?; private nextText?; private applyTextNormalization?; private applyLanguageTextNormalization?; private enableLogging?; /** * Set ElevenLabs text-to-speech API base endpoint. */ setApiEndpoint(apiUrl: string): void; /** * Set ElevenLabs model ID. */ setModel(model: string): void; /** * Set output format, such as mp3_44100_128. */ setOutputFormat(outputFormat?: string): void; /** * Set optional language code. */ setLanguageCode(languageCode?: string): void; /** * Set voice settings. */ setVoiceSettings(settings: ElevenLabsVoiceSettingsOptions): void; setStability(value?: number): void; setSimilarityBoost(value?: number): void; setStyle(value?: number): void; setUseSpeakerBoost(value?: boolean): void; setSpeed(value?: number): void; setSeed(value?: number): void; setPreviousText(value?: string): void; setNextText(value?: string): void; setApplyTextNormalization(value?: ElevenLabsApplyTextNormalization): void; setApplyLanguageTextNormalization(value?: boolean): void; setEnableLogging(value?: boolean): void; fetchAudio(input: Talk, speaker: string, apiKey?: string): Promise; getTestMessage(textVoiceText?: string): string; private createRequestUrl; private createApiVoiceSettings; private normalizeVoiceSettings; private updateVoiceSetting; private clampZeroToOne; private clampNumber; private isApplyTextNormalization; }