import { BaseSpeechRecognitionEngine } from './base-engine'; import { SpeechRecognitionConfig, SpeechRecognitionResult, AudioInputConfig } from '../types'; declare global { interface Window { SpeechRecognition: any; webkitSpeechRecognition: any; } } /** * Web Speech API engine for browser environments */ export declare class WebSpeechEngine extends BaseSpeechRecognitionEngine { private recognition; private mediaRecorder; private audioChunks; constructor(); /** * Check if Web Speech API is available */ isAvailable(): boolean; /** * Get supported languages (common languages supported by most browsers) */ getSupportedLanguages(): string[]; /** * Initialize the speech recognition engine */ initialize(_config?: SpeechRecognitionConfig): Promise; /** * Start listening for speech */ startListening(config?: SpeechRecognitionConfig): Promise; /** * Stop listening for speech */ stopListening(): Promise; /** * Start speech recognition */ start(audioConfig: AudioInputConfig, recognitionConfig?: SpeechRecognitionConfig): Promise; /** * Initialize speech recognition instance */ private initializeRecognition; /** * Start microphone recognition */ private startMicrophoneRecognition; /** * Process audio file (requires MediaRecorder API) */ private processAudioFile; /** * Stop speech recognition */ stop(): Promise; /** * Abort speech recognition */ abort(): Promise; /** * Process audio file directly (not supported by Web Speech API) */ processFile(_file: File, _config?: SpeechRecognitionConfig): Promise; /** * Process audio stream (not supported by Web Speech API) */ processStream(_stream: NodeJS.ReadableStream, _config?: SpeechRecognitionConfig): Promise; /** * Get available audio input devices */ static getAudioDevices(): Promise; /** * Check browser compatibility */ static getBrowserSupport(): { supported: boolean; features: string[]; }; } //# sourceMappingURL=web-speech-engine.d.ts.map