import type { CurrentRecordingStatus, GenericResponse, RecordingData, RecordingOptions } from './definitions'; declare const POSSIBLE_MIME_TYPES: { 'audio/aac': string; 'audio/mp4': string; 'audio/webm;codecs=opus': string; 'audio/webm': string; 'audio/ogg;codecs=opus': string; }; export declare class VoiceRecorderImpl { private mediaRecorder; private chunks; private pendingResult; static canDeviceVoiceRecord(): Promise; startRecording(options?: RecordingOptions): Promise; stopRecording(): Promise; static hasAudioRecordingPermission(): Promise; static requestAudioRecordingPermission(): Promise; pauseRecording(): Promise; resumeRecording(): Promise; getCurrentStatus(): Promise; static getSupportedMimeType(): T | null; private onSuccessfullyStartedRecording; private onFailedToStartRecording; private static blobToBase64; private prepareInstanceForNextOperation; } export {};