import { ConfigurationService } from '../../configuration'; import { MediaStreamService } from '../../media-stream'; import { TranscriptionService } from '../transcription.service'; import { MediaErrorEvent } from '../../types'; import { TranscriptCallback, TranscriptionState, TranscriptionStateChangeCallback, TranscriptItem } from '../transcription.types'; export declare class TranscriptionController { private configService; private transcriptionService; private mediaStreamService; private stateCallbacks; private transcriptCallbacks; private errorCallbacks; private unsubscribers; constructor(configService: ConfigurationService, transcriptionService: TranscriptionService, mediaStreamService: MediaStreamService); private setupEventListeners; private handleConfigurationChange; start: () => Promise; stop: () => void; toggle: () => Promise; updateLanguage: (language: string) => void; getTranscripts: () => TranscriptItem[]; clearTranscripts: () => void; private restart; get state(): TranscriptionState; onTranscript: (callback: TranscriptCallback) => VoidFunction; onStateChange: (callback: TranscriptionStateChangeCallback) => VoidFunction; onError: (callback: (error: MediaErrorEvent) => void) => VoidFunction; private _notifyTranscript; private _notifyStateChange; private _notifyError; destroy(): void; }