UNPKG

targetai-client-js-sdk

Version:

JavaScript SDK for TargetAI WebRTC voice agent communication

34 lines (33 loc) 1.21 kB
import { TargetAIConfig } from '../types'; export interface WebRTCManagerEvents { connectionStateChange: (state: RTCPeerConnectionState) => void; dataChannelOpen: () => void; dataChannelClose: () => void; dataChannelMessage: (data: any) => void; audioTrack: (stream: MediaStream) => void; error: (error: Error) => void; } declare class SimpleEventEmitter { private events; on(event: string, listener: Function): this; emit(event: string, ...args: any[]): boolean; removeAllListeners(): this; } export declare class WebRTCManager extends SimpleEventEmitter { private peerConnection; private dataChannel; private config; constructor(config: TargetAIConfig); createPeerConnection(): Promise<RTCPeerConnection>; addMediaStream(stream: MediaStream): void; createOffer(): Promise<RTCSessionDescriptionInit>; setRemoteDescription(answer: RTCSessionDescriptionInit): Promise<void>; sendMessage(message: any): boolean; isConnected(): boolean; getConnectionState(): RTCPeerConnectionState | null; cleanup(): void; private setupPeerConnectionListeners; private setupDataChannel; private waitForICEGathering; } export {};