import { AgoraObservable } from '../../../../imports'; import { SourceStateControl, SourceStateControlImpl, SourceStateControlObserver } from './source-state-control'; export interface MicrophoneStateControlObserver extends SourceStateControlObserver { onMicrophoneVolumeIndicationUpdated(sourceId: string, volume: number): void; } export interface MicrophoneStateControl extends SourceStateControl { get keepRecording(): boolean; setKeepAudioRecording(keepRecording: boolean): void; microphoneVolumeIndicationUpdated(volume: number): void; } export declare class MicrophoneStateControlImpl extends SourceStateControlImpl implements MicrophoneStateControl { protected readonly observable: AgoraObservable; protected _keepRecording: boolean; get keepRecording(): boolean; release(): number; getSourceCaptureEnabled(sourceId: string): boolean; setKeepAudioRecording(keepRecording: boolean): void; microphoneVolumeIndicationUpdated(volume: number): void; }