import * as vue from 'vue'; import { I as IOptions } from './shared/use-audio-record.68911257.cjs'; declare function useAudioRecorder(options?: IOptions): { mimeType: string | undefined; sampleRate: number; stream: vue.Ref<{ readonly active: boolean; readonly id: string; onaddtrack: ((this: MediaStream, ev: MediaStreamTrackEvent) => any) | null; onremovetrack: ((this: MediaStream, ev: MediaStreamTrackEvent) => any) | null; addTrack: (track: MediaStreamTrack) => void; clone: () => MediaStream; getAudioTracks: () => MediaStreamTrack[]; getTrackById: (trackId: string) => MediaStreamTrack | null; getTracks: () => MediaStreamTrack[]; getVideoTracks: () => MediaStreamTrack[]; removeTrack: (track: MediaStreamTrack) => void; addEventListener: { (type: K, listener: (this: MediaStream, ev: MediaStreamEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void; (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void; }; removeEventListener: { (type: K_1, listener: (this: MediaStream, ev: MediaStreamEventMap[K_1]) => any, options?: boolean | EventListenerOptions | undefined): void; (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void; }; dispatchEvent: (event: Event) => boolean; } | null>; mediaRecorder: vue.Ref<{ readonly audioBitsPerSecond: number; readonly mimeType: string; ondataavailable: ((this: MediaRecorder, ev: BlobEvent) => any) | null; onerror: ((this: MediaRecorder, ev: Event) => any) | null; onpause: ((this: MediaRecorder, ev: Event) => any) | null; onresume: ((this: MediaRecorder, ev: Event) => any) | null; onstart: ((this: MediaRecorder, ev: Event) => any) | null; onstop: ((this: MediaRecorder, ev: Event) => any) | null; readonly state: RecordingState; readonly stream: { readonly active: boolean; readonly id: string; onaddtrack: ((this: MediaStream, ev: MediaStreamTrackEvent) => any) | null; onremovetrack: ((this: MediaStream, ev: MediaStreamTrackEvent) => any) | null; addTrack: (track: MediaStreamTrack) => void; clone: () => MediaStream; getAudioTracks: () => MediaStreamTrack[]; getTrackById: (trackId: string) => MediaStreamTrack | null; getTracks: () => MediaStreamTrack[]; getVideoTracks: () => MediaStreamTrack[]; removeTrack: (track: MediaStreamTrack) => void; addEventListener: { (type: K, listener: (this: MediaStream, ev: MediaStreamEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void; (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void; }; removeEventListener: { (type: K_1, listener: (this: MediaStream, ev: MediaStreamEventMap[K_1]) => any, options?: boolean | EventListenerOptions | undefined): void; (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void; }; dispatchEvent: (event: Event) => boolean; }; readonly videoBitsPerSecond: number; pause: () => void; requestData: () => void; resume: () => void; start: (timeslice?: number | undefined) => void; stop: () => void; addEventListener: { (type: K, listener: (this: MediaRecorder, ev: MediaRecorderEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void; (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void; }; removeEventListener: { (type: K_1, listener: (this: MediaRecorder, ev: MediaRecorderEventMap[K_1]) => any, options?: boolean | EventListenerOptions | undefined): void; (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void; }; dispatchEvent: (event: Event) => boolean; } | null>; recording: vue.Ref; duration: vue.Ref; recordedBlob: vue.Ref<{ readonly size: number; readonly type: string; arrayBuffer: () => Promise; slice: (start?: number | undefined, end?: number | undefined, contentType?: string | undefined) => Blob; stream: () => ReadableStream; text: () => Promise; } | null>; recordedAudioBuffer: vue.Ref; chunks: vue.Ref<{ readonly size: number; readonly type: string; arrayBuffer: () => Promise; slice: (start?: number | undefined, end?: number | undefined, contentType?: string | undefined) => Blob; stream: () => ReadableStream; text: () => Promise; }[]>; initRecorder: () => Promise; startRecording: (completeCallback?: () => void) => Promise; stopRecording: () => void; handleToggleRecording: (completeCallback?: () => void) => void; }; export { useAudioRecorder };