import { NgZone } from '@angular/core';
import { Subject } from 'rxjs';
import { TranslateService } from '@ngx-translate/core';
import { LocaleService } from '@seniorsistemas/angular-components/locale';
import { ToastService } from '@seniorsistemas/angular-components/toast';
import * as i0 from "@angular/core";
export type MicrophoneStatus = 'active' | 'inactive';
export interface SpeechResult {
    text: string;
    isFinal: boolean;
}
export declare class SpeechRecognitionService {
    private readonly localeService;
    private readonly ngZone;
    private readonly toastService;
    private translateService;
    hasSupportSpeechRecognition: boolean;
    isListening: boolean;
    readonly microphoneStatus$: Subject<MicrophoneStatus>;
    private recognition;
    private readonly TIMEOUT_NO_MESSAGE;
    constructor(localeService: LocaleService, ngZone: NgZone, toastService: ToastService, translateService: TranslateService);
    listen(): Subject<SpeechResult>;
    stop(): void;
    private setRecognition;
    private get hasMicrophoneAccess();
    static ɵfac: i0.ɵɵFactoryDeclaration<SpeechRecognitionService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<SpeechRecognitionService>;
}
