export type DeepgramSttOptions = { apiKey: string; /** Default `nova-3`. */ model?: string; /** Language code for transcription (default `multi` so Spanish + English work). */ language?: string; /** Default `https://api.deepgram.com`. */ baseUrl?: string; /** Sample rate of the PCM we'll send (default 8000 for telephony, 48000 for Discord). */ sampleRateHz?: number; }; export type DeepgramSttEvents = { /** Final (utterance-complete) transcript. */ final: (transcript: string) => void | Promise; /** Interim partial transcript (every word, fast). */ partial: (transcript: string) => void | Promise; /** WS open. */ open: () => void | Promise; /** WS closed normally. */ close: (code: number, reason: string) => void | Promise; /** Adapter or WS error. */ error: (err: Error) => void | Promise; }; export type DeepgramSttSession = { send: (pcmSamples: Int16Array) => void; finish: () => Promise; on: (event: K, handler: DeepgramSttEvents[K]) => () => void; }; /** * Open a Deepgram listen WebSocket. Caller pumps in 8 kHz linear16 frames via * `send()` and consumes `final` transcripts to drive the next LLM turn. */ export declare const openDeepgramStt: (options: DeepgramSttOptions) => DeepgramSttSession; //# sourceMappingURL=deepgramStt.d.ts.map