import AudioStreamer, { AudioStreamConfig } from "./speech-audio-streamer"; import { RealtimeMessageAckAudio, RealtimeMessageAuthenticationToken, RealtimeMessageConnect, RealtimeMessageResult, RealtimeParameters } from "./ai-speech-api-client"; export declare enum RealtimeWebSocketState { "STOPPED" = 0, "RUNNING" = 1, "OPENING" = 2, "AUTHENTICATING" = 3, "ERROR" = 4 } export interface RealtimeClientListener { onClose(closeEvent: CloseEvent): any; onConnect(openEvent: Event): any; onError(errorEvent: Error): any; onConnectMessage(connectMessage: RealtimeMessageConnect): any; onResult(resultMessage: RealtimeMessageResult): any; onAckAudio(ackMessage: RealtimeMessageAckAudio): any; } export declare class AIServiceSpeechRealtimeApi { constructor(realtimeClientListener: RealtimeClientListener, token: string, compartmentId: string, realtimeEndpoint?: string, realtimeParameters?: RealtimeParameters); token: string; realtimeEndpoint: string; realtimeWebSocketClient: WebSocket; realtimeWebSocketState: RealtimeWebSocketState; realtimeParameters: RealtimeParameters; audioStreamer: AudioStreamer; audioStreamConfig: AudioStreamConfig; mediaStream: MediaStream; realtimeAuthPayload: RealtimeMessageAuthenticationToken; compartmentId: string; realtimeClientListener: RealtimeClientListener; private onWebsocketOpen; private onWebsocketClose; private onWebsocketMessage; private onWebsocketError; private initAudio; private parseParameters; private createAuthenticationPayload; connect: () => void; close: () => void; getWebSocketState: () => RealtimeWebSocketState; setWebSocketState: (state: RealtimeWebSocketState) => void; requestFinalResult: () => void; }