import { ClientSampleEncoder } from "./ClientSampleEncoder";
import { PeerConnectionSample } from "./InputSamples";
import { ClientSample_PeerConnectionSample } from "./OutputSamples";
import { Encoder } from "./utils";
export declare class PeerConnectionSampleEncoder implements Encoder<PeerConnectionSample, ClientSample_PeerConnectionSample> {
    parent: ClientSampleEncoder;
    private readonly _peerConnectionId;
    private _visited;
    private _attachmentsEncoder;
    private _scoreEncoder;
    private _scoreReasonsEncoder;
    private _inboundTracksEncoders;
    private _outboundTracksEncoders;
    private _codecStatsEncoders;
    private _inboundRtpEncoders;
    private _remoteInboundRtpEncoders;
    private _outboundRtpEncoders;
    private _remoteOutboundRtpEncoders;
    private _mediaSourceEncoders;
    private _mediaPlayoutEncoders;
    private _peerConnectionTransportEncoders;
    private _dataChannelEncoders;
    private _iceTransportEncoders;
    private _iceCandidateEncoders;
    private _iceCandidatePairEncoders;
    private _certificateEncoders;
    constructor(peerConnectionId: string, parent: ClientSampleEncoder);
    get visited(): boolean;
    reset(): void;
    encode(sample: PeerConnectionSample): ClientSample_PeerConnectionSample;
    private _encodeCodecStats;
    private _encodeInboundTracks;
    private _encodeOutboundTracks;
    private _encodeInboundRtp;
    private _encodeOutboundRtp;
    private _encodeRemoteInboundRtp;
    private _encodeRemoteOutboundRtp;
    private _encodeDataChannel;
    private _encodeMediaSource;
    private _encodeMediaPlayout;
    private _encodePeerConnectionTransport;
    private _encodeIceTransport;
    private _encodeIceCandidate;
    private _encodeIceCandidatePair;
    private _encodeCertificate;
    checkVisitsAndClean(): boolean;
}
//# sourceMappingURL=PeerConnectionSampleEncoder.d.ts.map