import { ClientMonitor } from "..";
import { PeerConnectionMonitor } from "../monitors/PeerConnectionMonitor";
import * as mediasoup from 'mediasoup-client';
export declare class Sources {
    readonly monitor: ClientMonitor;
    mediaDevicesAreWatched: boolean;
    userAgentMetaDataSent: boolean;
    userAgentStatsAdapterAdded: boolean;
    mediasoupStatsAdapterAdded: boolean;
    private readonly _peerConnectionBindings;
    private readonly _mediasoupTransportBindings;
    private _mediasoupDeviceBindings;
    constructor(monitor: ClientMonitor);
    addRTCPeerConnection(params: {
        peerConnectionId?: string;
        peerConnection: RTCPeerConnection;
    }): void;
    removeRTCPeerConnection(peerConnection: RTCPeerConnection): void;
    addMediasoupDevice(device: mediasoup.types.Device): this;
    removeMediasoupDevice(device: mediasoup.types.Device): this;
    addMediasoupTransport(transport: mediasoup.types.Transport): this;
    removeMediasoupTransport(transport: mediasoup.types.Transport): this;
    fetchUserAgentData(): any;
    watchNavigatorMediaDevices(): void;
    private _addPeerConnectionMonitor;
    addStatsAdapters(pcMonitor: PeerConnectionMonitor): void;
}
