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<void>;
