UNPKG

@anam-ai/js-sdk

Version:

Client side JavaScript SDK for Anam AI

39 lines 1.73 kB
import { AnamClientOptions, AnamEvent, EventCallbacks, InputAudioState, PersonaConfig } from './types'; import { TalkMessageStream } from './types/TalkMessageStream'; export default class AnamClient { private publicEventEmitter; private internalEventEmitter; private readonly messageHistoryClient; private personaConfig; private clientOptions; private inputAudioState; private sessionId; private streamingClient; private apiClient; private _isStreaming; constructor(sessionToken: string | undefined, personaConfig?: PersonaConfig, options?: AnamClientOptions); private decodeJwt; private validateClientConfig; private buildStartSessionOptionsForClient; private startSession; private startSessionIfNeeded; stream(userProvidedAudioStream?: MediaStream): Promise<MediaStream[]>; streamToVideoAndAudioElements(videoElementId: string, audioElementId: string, userProvidedMediaStream?: MediaStream): Promise<void>; talk(content: string): Promise<void>; sendDataMessage(message: string): void; stopStreaming(): Promise<void>; isStreaming(): boolean; setPersonaConfig(personaConfig: PersonaConfig): void; getPersonaConfig(): PersonaConfig | undefined; getInputAudioState(): InputAudioState; muteInputAudio(): InputAudioState; unmuteInputAudio(): InputAudioState; createTalkMessageStream(correlationId?: string): TalkMessageStream; /** * Event handling */ addListener<K extends AnamEvent>(event: K, callback: EventCallbacks[K]): void; removeListener<K extends AnamEvent>(event: K, callback: EventCallbacks[K]): void; getActiveSessionId(): string | null; } //# sourceMappingURL=AnamClient.d.ts.map