@voxket-ai/voxket-live
Version:
A React widget for embedding Voxket-powered audio/video/chat experiences.
42 lines (41 loc) • 1.29 kB
TypeScript
import { Track } from 'livekit-client';
import { TrackReferenceOrPlaceholder } from '@livekit/components-react';
export interface ControlBarControls {
microphone?: boolean;
screenShare?: boolean;
chat?: boolean;
camera?: boolean;
leave?: boolean;
}
export interface UseAgentControlBarProps {
controls?: ControlBarControls;
saveUserChoices?: boolean;
onDeviceError?: (error: {
source: Track.Source;
error: Error;
}) => void;
client?: any;
}
export interface UseAgentControlBarReturn {
micTrackRef: TrackReferenceOrPlaceholder;
visibleControls: ControlBarControls;
microphoneToggle: {
enabled: boolean;
pending: boolean;
toggle: (enabled?: boolean) => Promise<void>;
};
cameraToggle: {
enabled: boolean;
pending: boolean;
toggle: (enabled?: boolean) => Promise<void>;
};
screenShareToggle: {
enabled: boolean;
pending: boolean;
toggle: (enabled?: boolean) => Promise<void>;
};
handleDisconnect: () => void;
handleAudioDeviceChange: (deviceId: string) => void;
handleVideoDeviceChange: (deviceId: string) => void;
}
export declare function useAgentControlBar(props?: UseAgentControlBarProps): UseAgentControlBarReturn;