export interface AudioSegment { audio: Float32Array; start: number; end: number; } export declare class AudioRecorder { private vad; private mediaRecorder; private audioChunks; private isRecording; private onSegmentCallback?; private onTranscriptCallback?; private baseUrl; private token; private currentStream; constructor(baseUrl: string, token: string); initialize(): Promise; startRecording(onSegment?: (segment: AudioSegment) => void, onTranscript?: (transcript: string) => void): Promise; stopRecording(): void; private processAudioSegment; private float32ArrayToWav; private transcribeAudio; blobToBase64(audioBlob: Blob): Promise; destroy(): void; } export declare class TTSManager { private synth; private currentUtterance; private isEnabled; constructor(); enable(): void; disable(): void; speak(text: string, options?: { rate?: number; pitch?: number; volume?: number; voice?: SpeechSynthesisVoice; }): void; stop(): void; isSpeaking(): boolean; getVoices(): SpeechSynthesisVoice[]; private cleanTextForSpeech; }