import { BehaviorSubject } from 'rxjs'; import { Contact } from '../../models/contact.model'; import { Service } from '../../services/service'; export declare const SPEECH_RECOGNITION_SVC = "SpeechRecognitionService"; export declare class SpeechRecognitionMessage { id: string; text: string; timeout: any; user: Contact; service: SpeechRecognitionService; static create(id: string, text: string, user: Contact, service: SpeechRecognitionService): SpeechRecognitionMessage; update(text: string): void; } export interface ISpeechRecognitionService { init(type: string, stream: MediaStream, roomJid?: string): Promise; stop(): void; startTranscription(): void; stopTranscription(): void; } export declare class SpeechRecognitionModelInfo { name: string; lang: string; url: string; bufferSize: number; _selected: boolean; static create(name: string, lang: string, url: string, bufferSize?: number): SpeechRecognitionModelInfo; private constructor(); } export declare class SpeechRecognitionModel { name: string; modelsInfo: SpeechRecognitionModelInfo[]; static create(name: string, modelsInfo: SpeechRecognitionModelInfo[]): SpeechRecognitionModel; private constructor(); } export declare class SpeechRecognitionTranscription { messages: any[]; reset(): void; static create(): SpeechRecognitionTranscription; addMessage(user: Contact, text: string): void; } export declare class SpeechRecognitionService extends Service implements ISpeechRecognitionService { private stream; private websocket; private audioContext; private logger; private xmppService; private contactService; private webConferenceService; private roomJid; private models; private currentModel; private xmppHandler; private subscription; private type; private buffer; transcription: BehaviorSubject; transcriptionOn: BehaviorSubject; speechRecognitionMessages: BehaviorSubject; peer?: string; started: boolean; muted: boolean; /** * @function getInstance * @static * @private * @description Get the SpeechRecognitionService singleton * @returns {SpeechRecognitionService} the SpeechRecognitionService singleton */ static getInstance(): SpeechRecognitionService; static build(): SpeechRecognitionService; private constructor(); init(type: string, stream: MediaStream, roomJid?: string, modelInfo?: SpeechRecognitionModelInfo): Promise; stop(): void; startTranscription(): void; stopTranscription(): void; getModels(): Promise; getCurrentModel(): SpeechRecognitionModelInfo; mute(mute: boolean): void; private getModelsFromServer; setModel(modelInfo: SpeechRecognitionModelInfo): Promise; private createWebSocket; private recorderProcess; private convertFloat32ToInt16; private onSpeechMessage; private subscribeToASRMessages; } //# sourceMappingURL=speechRecognition.service.d.ts.map