import { Logger } from "../../log/Logger"; export interface AudioStreamEnergyMonitor { start(stream: MediaStream): void; stop(): void; destroy(): void; } export declare class DefaultAudioStreamEnergyMonitor implements AudioStreamEnergyMonitor { private onAudioEnergyDetected; private logger; private callId; private audioContext; private analyser; private source; private dataArray; private analyserInterval; private clonedTrack; private readonly throttledEmitAudioEnergyDetected; private constructor(); static create(onAudioEnergyDetected: () => void, logger: Logger, callId: string): AudioStreamEnergyMonitor | null; start(stream: MediaStream): void; stop(): void; destroy(): void; private swapClonedTrack; private startAudioEnergyDetection; private clearAnalyserInterval; private startAnalyserInterval; private checkEnergy; private rms; private removeClonedTrack; private addClonedTrack; }