| /** | |
| * Web Speech API type declarations. | |
| * These are not included in the default TypeScript DOM lib. | |
| */ | |
| interface SpeechRecognitionEvent extends Event { | |
| readonly results: SpeechRecognitionResultList; | |
| readonly resultIndex: number; | |
| } | |
| interface SpeechRecognitionResultList { | |
| readonly length: number; | |
| item(index: number): SpeechRecognitionResult; | |
| [index: number]: SpeechRecognitionResult; | |
| } | |
| interface SpeechRecognitionResult { | |
| readonly length: number; | |
| readonly isFinal: boolean; | |
| item(index: number): SpeechRecognitionAlternative; | |
| [index: number]: SpeechRecognitionAlternative; | |
| } | |
| interface SpeechRecognitionAlternative { | |
| readonly transcript: string; | |
| readonly confidence: number; | |
| } | |
| interface SpeechRecognition extends EventTarget { | |
| continuous: boolean; | |
| interimResults: boolean; | |
| lang: string; | |
| onresult: ((event: SpeechRecognitionEvent) => void) | null; | |
| onend: (() => void) | null; | |
| onerror: ((event: Event) => void) | null; | |
| start(): void; | |
| stop(): void; | |
| abort(): void; | |
| } | |
| interface SpeechRecognitionConstructor { | |
| new (): SpeechRecognition; | |
| } | |
| interface Window { | |
| SpeechRecognition?: SpeechRecognitionConstructor; | |
| webkitSpeechRecognition?: SpeechRecognitionConstructor; | |
| } | |