/** * Voice Module - Unified Voice/Speech Integration for NeuroLink * * Provides TTS (Text-to-Speech), STT (Speech-to-Text), and * Realtime Voice capabilities across multiple providers. * * Use TTSProcessor (src/lib/utils/ttsProcessor.ts) for TTS. * Use STTProcessor (src/lib/utils/sttProcessor.ts) for STT. * Use RealtimeProcessor for realtime voice sessions. * * Importing this module also auto-registers every shipped TTS / STT / * Realtime handler whose backing API key is present in `process.env`. * Registration is idempotent and silently skipped on failure. * * @module voice */ export { AUDIO_FORMAT_DETAILS, DEFAULT_REALTIME_CONFIG, DEFAULT_STT_OPTIONS, isSTTResult, isTranscriptionSegment, isValidRealtimeConfig, isValidSTTOptions, REALTIME_ERROR_CODES, STT_ERROR_CODES, VOICE_ERROR_CODES, } from "../types/index.js"; export { RealtimeError, STTError, VoiceError } from "./errors.js"; export { BaseRealtimeHandler, RealtimeProcessor } from "./RealtimeVoiceAPI.js"; export { AUDIO_SIGNATURES, calculateDuration, convertAudioFormat, createPcmBuffer, createWavFile, createWavHeader, detectAudioFormat, extractPcmSamples, getFileExtension, getMimeType, MIME_TYPES, normalizeAudio, resamplePcm, splitIntoChunks, } from "./audio-utils.js"; export { asyncIterableToStream, ChunkedAudioStream, StreamHandler, StreamMerger, StreamSplitter, streamToAsyncIterable, } from "./stream-handler.js"; export { GoogleTTSHandler } from "../adapters/tts/googleTTSHandler.js"; export { AzureTTS, AzureTTS as AzureTTSHandler } from "./providers/AzureTTS.js"; export { CartesiaTTS, CartesiaTTS as CartesiaTTSHandler, } from "./providers/CartesiaTTS.js"; export { ElevenLabsTTS, ElevenLabsTTS as ElevenLabsTTSHandler, } from "./providers/ElevenLabsTTS.js"; export { FishAudioTTS, FishAudioTTS as FishAudioTTSHandler, } from "./providers/FishAudioTTS.js"; export { OpenAITTS, OpenAITTS as OpenAITTSHandler, } from "./providers/OpenAITTS.js"; export { AzureSTT, AzureSTT as AzureSTTHandler } from "./providers/AzureSTT.js"; export { DeepgramSTT, DeepgramSTT as DeepgramSTTHandler, } from "./providers/DeepgramSTT.js"; export { GoogleSTT, GoogleSTT as GoogleSTTHandler, } from "./providers/GoogleSTT.js"; export { OpenAISTT, OpenAISTTHandler, WhisperSTT, WhisperSTTHandler, } from "./providers/OpenAISTT.js"; export { GeminiLive, GeminiLive as GeminiLiveHandler, } from "./providers/GeminiLive.js"; export { OpenAIRealtime, OpenAIRealtime as OpenAIRealtimeHandler, } from "./providers/OpenAIRealtime.js"; /** * Register every shipped TTS handler whose backing credentials are * present in the environment. Safe to call multiple times. */ export declare function registerDefaultTTSHandlers(): void; /** * Register every shipped STT handler whose backing credentials are * present in the environment. Safe to call multiple times. */ export declare function registerDefaultSTTHandlers(): void; /** * Register every shipped Realtime handler. Realtime handlers don't gate * registration on isConfigured() because session-time API keys can be * supplied per-call; missing creds surface when `connect()` is invoked. */ export declare function registerDefaultRealtimeHandlers(): void;