/**
 * ElevenLabs TTS Provider
 *
 * Uses ElevenLabs' API for ultra-realistic text-to-speech synthesis.
 * Supports voice cloning and advanced voice settings.
 */
import type { TTSProviderConfig, Voice, SynthesisOptions, SynthesisResult } from '../types.js';
import type { ITTSProvider } from '../tts-manager.js';
/**
 * ElevenLabs TTS Provider
 */
export declare class ElevenLabsProvider implements ITTSProvider {
    readonly id: "elevenlabs";
    private config;
    private initialized;
    private cachedVoices;
    initialize(config: TTSProviderConfig): Promise<void>;
    isAvailable(): Promise<boolean>;
    listVoices(): Promise<Voice[]>;
    /**
     * Fetch voices from ElevenLabs API
     */
    private fetchVoices;
    synthesize(text: string, options?: SynthesisOptions): Promise<SynthesisResult>;
    shutdown(): Promise<void>;
    /**
     * Clone a voice from audio samples
     */
    cloneVoice(name: string, description: string, samples: Buffer[], labels?: Record<string, string>): Promise<Voice>;
    /**
     * Delete a cloned voice
     */
    deleteVoice(voiceId: string): Promise<boolean>;
    /**
     * Extract ElevenLabs voice ID from options
     */
    private extractVoiceId;
    /**
     * Detect language from voice labels
     */
    private detectLanguage;
    /**
     * Parse gender from label
     */
    private parseGender;
}
export default ElevenLabsProvider;
