export interface TTSOptions { voiceId?: string; gender?: 'female' | 'male'; pitchOffset?: number; rateOffset?: number; outputDir?: string; timeoutMs?: number; maxRetries?: number; [key: string]: any; } export interface TTSSynthesizeResult { audioPath: string; duration: number; format: string; voiceId: string; diagnostics?: Record; fallbackUsed?: boolean; } import { TaviTTSError, TaviProviderError } from '../errors/index.d.ts'; export declare class TTSError extends TaviTTSError { code: string; details: Record; constructor(code: string, message: string, details?: Record); } export declare class FactoryError extends TaviProviderError { code: string; provider: string | null; fallbackAttempted: boolean; details: Record; cause?: Error; constructor(code: string, message: string, details?: Record); } export declare class TTSProvider { options: Record; providerId?: string; engine?: string; constructor(options?: Record); synthesize(text: string, language: string, options?: TTSOptions): Promise; supportsLanguage(language: string): boolean; } export declare class NodeTTSProvider extends TTSProvider { constructor(options?: Record); } export declare class EdgeTTSProvider extends TTSProvider { constructor(options?: Record); supportsVoice(voiceId: string): boolean; } export declare class AzureNeuralTTSProvider extends TTSProvider { constructor(options?: Record); } export declare class AutoTTSProvider extends TTSProvider { constructor(options?: Record); } export declare class ExplicitFallbackTTSProvider extends TTSProvider { constructor(params: { primaryProvider: TTSProvider; primaryProviderId: string; fallbackConfig: Record; factoryOptions: Record; }); } export declare function normalizeTTSProviderId(rawMode: string): string | null; export declare function getTTSProviderCapabilities(): Record; export declare function resolveTTSProvider(options?: Record | string): TTSProvider; export declare function createTTSProvider(options?: Record | string): TTSProvider; export declare const CLOUD_PROVIDERS: ReadonlySet; export declare const LOCAL_PROVIDERS: ReadonlySet; export declare function isNeuralLanguageSupported(language: string): boolean; export declare function isNeuralVoiceSupported(voiceId: string): boolean; export declare function resolveNeuralVoice(language: string, options?: Record): { voiceId: string; locale: string; gender: string; name: string; } | null; export { PiperTTSAdapter, PiperTTSAdapterOptions, PiperSynthesizeOptions, PiperSynthesizeResult, PiperProcessParams, PiperError, findPiperExecutable, verifyPiperExecutable, validateWavOutput } from './PiperTTSAdapter.js'; export { KokoroTTSAdapter, KokoroTTSAdapterOptions, KokoroSynthesizeOptions, KokoroSynthesizeResult, KokoroProcessParams, KokoroError, findKokoroRuntime, verifyKokoroRuntime } from './KokoroTTSAdapter.js'; export { MmsTTSAdapter, MmsTTSAdapterOptions, MmsSynthesizeOptions, MmsSynthesizeResult, MmsProcessParams, MmsError, findMmsRuntime, verifyMmsRuntime } from './MmsTTSAdapter.js';