export type NoAudioDetectorOptions = { /** * Defines how often the detector should check whether audio is present. * Defaults to 350ms. */ detectionFrequencyInMs?: number; /** * Duration of continuous no-audio (in ms) before emitting the first event. */ noAudioThresholdMs: number; /** * How often to emit events while no-audio continues (in ms). * After the initial no-audio threshold is met, events will be emitted at this interval. * Defaults to the same value as noAudioThresholdMs. */ emitIntervalMs: number; /** * See https://developer.mozilla.org/en-US/docs/web/api/analysernode/fftsize * * Defaults to 512. * Only applies to browser implementation. */ fftSize?: number; /** * A callback which is called when the audio capture status changes. * Called periodically while no audio is detected, and once when audio is detected. */ onCaptureStatusChange: (capturesAudio: boolean) => void; }; /** * Creates a new no-audio detector that monitors continuous absence of audio on an audio stream. * * @param audioStream the audio stream to observe. * @param options custom options for the no-audio detector. * @returns a cleanup function which once invoked stops the no-audio detector. */ export declare const createNoAudioDetector: (audioStream: MediaStream, options: NoAudioDetectorOptions) => () => Promise;