UNPKG

@charisma-ai/react

Version:
38 lines (37 loc) 1.79 kB
import React, { ReactNode } from "react"; import { type AudioTrack, type AudioOutputsServicePlayOptions, type AudioManagerOptions as OriginalAudioManagerOptions } from "@charisma-ai/sdk"; type AudioManagerContextType = { isListening: boolean; isBrowserSupported: boolean; initialise: () => void; transcript: string; interimTranscript: string; liveTranscript: string; recordingStatus: RecordingStatus; clearTranscript: () => void; startListening: (timeout?: number) => void; stopListening: () => void; connect: (token: string, playerSessionId: string) => void; disconnect: () => void; resetTimeout: (timeout: number) => void; playCharacterSpeech: (audio: ArrayBuffer, playOptions: boolean | AudioOutputsServicePlayOptions) => Promise<void> | undefined; getCharacterSpeechAnalyserNode: () => AnalyserNode | undefined | null; characterSpeechVolume: number; setCharacterSpeechVolume: (volume: number) => void; characterSpeechIsMuted: boolean; setCharacterSpeechMuted: (muted: boolean) => void; playMediaAudio: (audioTracks: AudioTrack[]) => void; mediaAudioVolume: number; setMediaAudioVolume: (volume: number) => void; mediaAudioIsMuted: boolean; setMediaAudioMuted: (muted: boolean) => void; stopAllMedia: () => void; }; export type ModifiedAudioManagerOptions = Omit<OriginalAudioManagerOptions, "handleTranscript" | "handleInterimTranscript" | "handleStartSTT" | "handleStopSTT">; export type RecordingStatus = "OFF" | "STARTING" | "RECORDING"; export declare const AudioManagerProvider: ({ children, options, }: { children: ReactNode; options: ModifiedAudioManagerOptions; }) => React.JSX.Element; export declare const useAudioManager: () => AudioManagerContextType; export {};