UNPKG

@varunmhajan/hom-i-voice-ai

Version:

Voice AI utilities for home loan assistance with India-specific formatting

52 lines 1.89 kB
import { VoiceRecorder, RecorderConfig, RecorderState, AudioChunk } from '../../core/VoiceRecorder'; export interface UseVoiceRecorderOptions extends Partial<RecorderConfig> { autoInitialize?: boolean; enableDebugLogs?: boolean; onRecordingStart?: () => void; onRecordingStop?: (audioBlob: Blob) => void; onVoiceStart?: () => void; onVoiceEnd?: () => void; onAudioLevel?: (level: number) => void; onError?: (error: any) => void; onAudioChunk?: (chunk: AudioChunk) => void; } export interface VoiceRecorderState extends RecorderState { isSupported: boolean; isInitialized: boolean; supportedMimeTypes: string[]; } /** * React hook for VoiceRecorder with optimized state management */ export declare const useVoiceRecorder: (options?: UseVoiceRecorderOptions) => { startRecording: () => Promise<void>; stopRecording: () => Promise<Blob>; toggleRecording: () => Promise<Blob | void>; clearError: () => void; updateConfig: (updates: Partial<RecorderConfig>) => void; getRecorderState: () => RecorderState | null; getConfig: () => RecorderConfig | null; getPerformanceMetrics: () => { totalRecordings: number; averageRecordingDuration: number; vadAccuracy: number; processingLatency: number; } | null; reinitialize: (newOptions?: Partial<RecorderConfig>) => Promise<void>; formatDuration: (milliseconds: number) => string; recorder: VoiceRecorder | null; isReady: boolean; canRecord: boolean; canStop: boolean; formattedDuration: string; isSupported: boolean; isInitialized: boolean; supportedMimeTypes: string[]; isRecording: boolean; isProcessing: boolean; voiceActivityDetected: boolean; audioLevel: number; recordingDuration: number; error: string | null; }; //# sourceMappingURL=useVoiceRecorder.d.ts.map