/** * OpenAI Realtime Voice API Handler * * Implementation of bidirectional voice communication using OpenAI's Realtime API. * * @module voice/providers/OpenAIRealtime */ import { BaseRealtimeHandler } from "../RealtimeVoiceAPI.js"; import type { TTSAudioFormat, RealtimeAudioChunk, RealtimeConfig, RealtimeSession } from "../../types/index.js"; /** * OpenAI Realtime API Handler * * Implements bidirectional voice communication with OpenAI's Realtime API. * * @see https://platform.openai.com/docs/api-reference/realtime */ export declare class OpenAIRealtime extends BaseRealtimeHandler { readonly name = "openai-realtime"; private readonly apiKey; private ws; private audioChunkIndex; constructor(apiKey?: string); isConfigured(): boolean; getSupportedFormats(): TTSAudioFormat[]; connect(config: RealtimeConfig): Promise; disconnect(): Promise; sendAudio(audio: Buffer | RealtimeAudioChunk): Promise; sendText(text: string): Promise; triggerResponse(): Promise; cancelResponse(): Promise; /** * Send session update with configuration */ private sendSessionUpdate; /** * Wait for session.created event */ private waitForSessionCreated; /** * Handle incoming WebSocket messages */ private handleMessage; /** * Handle function call from model */ private handleFunctionCall; }