/** * @fileoverview Type definitions for text-to-speech providers */ export type TTSProvider = "kokoro" | "deepgram"; export interface TTSOptions { text: string; provider?: TTSProvider; voice?: string; } export interface TTSResult { audio: ArrayBuffer; contentType: string; } export declare const KOKORO_VOICES: readonly ["af_heart", "af_alloy", "af_aoede", "af_bella", "af_jessica", "af_kore", "af_nicole", "af_nova", "af_river", "af_sarah", "af_sky", "am_adam", "am_echo", "am_eric", "am_fenrir", "am_liam", "am_michael", "am_onyx", "am_puck", "am_santa", "bf_alice", "bf_emma", "bf_isabella", "bf_lily", "bm_daniel", "bm_fable", "bm_george", "bm_lewis"]; export type KokoroVoice = (typeof KOKORO_VOICES)[number]; export interface KokoroVoiceDescription { id: string; /** Display name, e.g. `Heart` for `af_heart`. */ name: string; /** `American English` or `British English`. */ accent: string; gender: "Female" | "Male"; } /** * Describes a voice from its id, so listings (`--list-voices`, a voice picker) * do not need a hand-maintained table that can drift from `KOKORO_VOICES`. */ export declare function describeKokoroVoice(id: string): KokoroVoiceDescription; export declare const DEEPGRAM_SPEAKERS: readonly ["angus", "asteria", "arcas", "orion", "orpheus", "athena", "luna", "zeus", "perseus", "helios", "hera", "stella"]; export type DeepgramSpeaker = (typeof DEEPGRAM_SPEAKERS)[number];