import { ExtendedReport, type ExtendedReportDump } from './ExtendedReport';
/**
 * Statistics Summary Extended Report dump.
 *
 * @category RTCP Extended Reports
 */
export type SsExtendedReportDump = ExtendedReportDump & {
    ssrc: number;
    beginSeq: number;
    endSeq: number;
    lostPackets?: number;
    duplicatePackets?: number;
    minJitter?: number;
    maxJitter?: number;
    meanJitter?: number;
    devJitter?: number;
    minTtlOrHl?: number;
    maxTtlOrHl?: number;
    meanTtlOrHl?: number;
    devTtlOrHl?: number;
    ttlOrHlMode?: 'ipv4-ttl' | 'ipv6-hop-limit';
};
/**
 * Statistics Summary Extended Report.
 *
 * ```text
 *  0                   1                   2                   3
 *  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |     BT=6      |L|D|J|ToH|rsvd.|       block length = 9        |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |                        SSRC of source                         |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |          begin_seq            |             end_seq           |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |                        lost_packets                           |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |                        dup_packets                            |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |                         min_jitter                            |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |                         max_jitter                            |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |                         mean_jitter                           |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * |                         dev_jitter                            |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * | min_ttl_or_hl | max_ttl_or_hl |mean_ttl_or_hl | dev_ttl_or_hl |
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 * ```
 *
 * @category RTCP Extended Reports
 *
 * @see
 * - [RFC 3611 section 4.6](https://datatracker.ietf.org/doc/html/rfc3611#section-4.6)
 */
export declare class SsExtendedReport extends ExtendedReport {
    /**
     * @param view - If given it will be parsed. Otherwise an empty Statistics
     *   Summary Extended Report will be created.
     */
    constructor(view?: DataView);
    /**
     * Dump Statistics Summary Extended Report info.
     */
    dump(): SsExtendedReportDump;
    /**
     * @inheritDoc
     */
    getByteLength(): number;
    /**
     * @inheritDoc
     */
    serialize(buffer?: ArrayBufferLike, byteOffset?: number): void;
    /**
     * @inheritDoc
     */
    clone(buffer?: ArrayBufferLike, byteOffset?: number, serializationBuffer?: ArrayBufferLike, serializationByteOffset?: number): SsExtendedReport;
    /**
     * Get SSRC of source.
     */
    getSsrc(): number;
    /**
     * Set SSRC of source.
     */
    setSsrc(ssrc: number): void;
    /**
     * Get begin sequence number.
     */
    getBeginSeq(): number;
    /**
     * Set begin sequence number.
     */
    setBeginSeq(seq: number): void;
    /**
     * Get end sequence number.
     */
    getEndSeq(): number;
    /**
     * Set end sequence number.
     */
    setEndSeq(seq: number): void;
    /**
     * Get number of lost packets.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getLostPackets(): number | undefined;
    /**
     * Set number of lost packets.
     */
    setLostPackets(lostPackets: number | undefined): void;
    /**
     * Get number of duplicate packets.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getDuplicatePackets(): number | undefined;
    /**
     * Set number of duplicate packets.
     */
    setDuplicatePackets(duplicatePackets: number | undefined): void;
    /**
     * Get minimum jitter.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getMinJitter(): number | undefined;
    /**
     * Set minimum jitter.
     */
    setMinJitter(minJitter: number | undefined): void;
    /**
     * Get maximum jitter.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getMaxJitter(): number | undefined;
    /**
     * Set maximum jitter.
     */
    setMaxJitter(maxJitter: number | undefined): void;
    /**
     * Get mean jitter.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getMeanJitter(): number | undefined;
    /**
     * Set mean jitter.
     */
    setMeanJitter(meanJitter: number | undefined): void;
    /**
     * Get dev jitter.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getDevJitter(): number | undefined;
    /**
     * Set dev jitter.
     */
    setDevJitter(devJitter: number | undefined): void;
    /**
     * Get minimum TTL or Hop Limit value.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getMinTtlOrHopLimit(): number | undefined;
    /**
     * Set minimum TTL or Hop Limit value.
     */
    setMinTtlOrHl(minTtlOrHl: number | undefined): void;
    /**
     * Get maximum TTL or Hop Limit value.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getMaxTtlOrHopLimit(): number | undefined;
    /**
     * Set maximum TTL or Hop Limit value.
     */
    setMaxTtlOrHl(maxTtlOrHl: number | undefined): void;
    /**
     * Get mean TTL or Hop Limit value.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getMeanTtlOrHopLimit(): number | undefined;
    /**
     * Set mean TTL or Hop Limit value.
     */
    setMeanTtlOrHl(meanTtlOrHl: number | undefined): void;
    /**
     * Get dev TTL or Hop Limit value.
     *
     * @remarks
     * - It could be `undefined` if the field is unset in the report.
     */
    getDevTtlOrHopLimit(): number | undefined;
    /**
     * Set dev TTL or Hop Limit value.
     */
    setDevTtlOrHl(devTtlOrHl: number | undefined): void;
    getTtlOrHopLimitMode(): 'ipv4-ttl' | 'ipv6-hop-limit' | undefined;
    setTtlOrHlMode(mode: 'ipv4-ttl' | 'ipv6-hop-limit' | undefined): void;
    private hasLostPacketsBit;
    private setLostPacketsBit;
    private hasDuplicatePacketsBit;
    private setDuplicatePacketsBit;
    private hasJitterBit;
    private setJitterBit;
}
//# sourceMappingURL=SsExtendedReport.d.ts.map