import { TrackConnectStatus, RtpParameters } from "../../types"; import { Track } from "./track"; import { ConnectionTransport } from "../Connection/transport"; import Consumer from "../Connection/Consumer"; import { StatsReportType } from "../../libs/getStats"; export interface audioStateMsg { audioLevel: number; type: StatsReportType; lowVolumeError: boolean; equalVolumeError: boolean; trackIdentifier: string; } export declare class PCTrack { track?: Track; consumer?: Consumer; trackId?: string; mid?: string; onConnectStatusChange?: (prev: TrackConnectStatus, curr: TrackConnectStatus) => any; private _connectStatus; private direction; private _audioStateHistory; private audioVolumeIntervalId; private transport; constructor(transport: ConnectionTransport, direction: "send" | "recv", track?: Track, trackId?: string, mid?: string); connectStatus: TrackConnectStatus; startConnect(): Promise; appendConsumner(rtpparms: RtpParameters, kind: "audio" | "video"): void; setMute(muted: boolean): void; addTrackId(trackid: string): void; registerAudioVolumeReport(id: string): void; unregisterAudioVolumeReport(): Promise; private checkAudioActive; release(): void; }