import { Detector } from "./Detector"; import { PeerConnectionMonitor } from "../monitors/PeerConnectionMonitor"; import { ClientMonitorEvents } from "../ClientMonitorEvents"; export type CongestionIssuePayload = { peerConnectionId: string; availableIncomingBitrate: number; availableOutgoingBitrate: number; maxAvailableIncomingBitrate: number; maxAvailableOutgoingBitrate: number; maxReceivingBitrate: number; maxSendingBitrate: number; durationInMs?: number; }; export type CongestionDecetorEvent = ClientMonitorEvents['congestion']; export type CongestionDetectorConfig = { sensitivity: 'low' | 'medium' | 'high'; }; export declare class CongestionDetector implements Detector { readonly peerConnection: PeerConnectionMonitor; static readonly ISSUE_TYPE = "congestion"; readonly name = "congestion-detector"; disabled: boolean; includeIssueInSample: boolean; private _maxAvailableIncomingBitrate; private _maxReceivingBitrate; private _maxAvailableOutgoingBitrate; private _maxSendingBitrate; private readonly issueKey; private _startedCongestionAt?; constructor(peerConnection: PeerConnectionMonitor); private get config(); update(): void; private _raise; private _resolve; }