import { ConnectivityState, StreamingState } from '../../../types';
import { VideoRTCStatsReport } from './report';

export interface AudioArmContext {
    sttLatency?: number;
    serviceLatency?: number;
}
export declare function createAudioStatsDetector(getStats: () => Promise<RTCStatsReport | undefined>, onFirstAudioDetected: (context: AudioArmContext) => void): {
    arm(context?: AudioArmContext): void;
    destroy(): void;
};
export declare function createVideoStatsMonitor(getStats: () => Promise<RTCStatsReport | undefined>, getIsConnected: () => boolean, onConnected: () => void, onVideoStateChange?: (state: StreamingState, statsReport?: VideoRTCStatsReport) => void, onConnectivityStateChange?: (state: ConnectivityState) => void): {
    start: () => void;
    stop: () => void;
    getReport: () => VideoRTCStatsReport;
};
