export declare enum AndroidAv1Profile {
    Main8 = 1,
    Main10 = 2,
    Main10Hdr10 = 4096,
    Main10Hdr10Plus = 8192
}
export declare enum AndroidAv1Level {
    Level2 = 1,
    Level21 = 2,
    Level22 = 4,
    Level23 = 8,
    Level3 = 16,
    Level31 = 32,
    Level32 = 64,
    Level33 = 128,
    Level4 = 256,
    Level41 = 512,
    Level42 = 1024,
    Level43 = 2048,
    Level5 = 4096,
    Level51 = 8192,
    Level52 = 16384,
    Level53 = 32768,
    Level6 = 65536,
    Level61 = 131072,
    Level62 = 262144,
    Level63 = 524288,
    Level7 = 1048576,
    Level71 = 2097152,
    Level72 = 4194304,
    Level73 = 8388608
}
declare class BitReader {
    #private;
    get byteAligned(): boolean;
    get ended(): boolean;
    constructor(data: Uint8Array);
    f1(): number;
    f(n: number): number;
    skip(n: number): void;
    readBytes(n: number): Uint8Array;
    getPosition(): readonly [number, number];
    setPosition([bytePosition, bitPosition]: readonly [number, number]): void;
}
export declare class Av1 extends BitReader {
    #private;
    uvlc(): number;
    leb128(): bigint;
    annexBBitstream(): Generator<Av1.OpenBitstreamUnit, void, void>;
    temporalUnit(sz: bigint): Generator<Av1.OpenBitstreamUnit, void, void>;
    frameUnit(sz: bigint): Generator<Av1.OpenBitstreamUnit, void, void>;
    openBitstreamUnit(sz?: bigint): {
        obu_header: {
            obu_type: number;
            obu_extension_flag: boolean;
            obu_has_size_field: boolean;
            obu_extension_header: {
                temporal_id: number;
                spatial_id: number;
            } | undefined;
        };
        obu_size: bigint;
        sequence_header_obu: {
            seq_profile: number;
            still_picture: boolean;
            reduced_still_picture_header: boolean;
            timing_info_present_flag: boolean;
            timing_info: {
                num_units_in_display_tick: number;
                time_scale: number;
                equal_picture_interval: boolean;
                num_ticks_per_picture_minus_1: number | undefined;
            } | undefined;
            decoder_model_info_present_flag: boolean;
            decoder_model_info: {
                buffer_delay_length_minus_1: number;
                num_units_in_decoding_tick: number;
                buffer_removal_time_length_minus_1: number;
                frame_presentation_time_length_minus_1: number;
            } | undefined;
            initial_display_delay_present_flag: boolean;
            initial_display_delay_minus_1: number[] | undefined;
            operating_points_cnt_minus_1: number;
            operating_point_idc: number[];
            seq_level_idx: number[];
            seq_tier: number[];
            decoder_model_present_for_this_op: boolean[];
            operating_parameters_info: {
                decoder_buffer_delay: number;
                encoder_buffer_delay: number;
                low_delay_mode_flag: boolean;
            }[] | undefined;
            initial_display_delay_present_for_this_op: boolean[];
            frame_width_bits_minus_1: number;
            frame_height_bits_minus_1: number;
            max_frame_width_minus_1: number;
            max_frame_height_minus_1: number;
            frame_id_numbers_present_flag: boolean;
            delta_frame_id_length_minus_2: number | undefined;
            additional_frame_id_length_minus_1: number | undefined;
            use_128x128_superblock: boolean;
            enable_filter_intra: boolean;
            enable_intra_edge_filter: boolean;
            enable_interintra_compound: boolean;
            enable_masked_compound: boolean;
            enable_warped_motion: boolean;
            enable_dual_filter: boolean;
            enable_order_hint: boolean;
            enable_jnt_comp: boolean;
            enable_ref_frame_mvs: boolean;
            seq_choose_screen_content_tools: boolean;
            seq_force_screen_content_tools: number;
            seq_choose_integer_mv: boolean;
            seq_force_integer_mv: number;
            order_hint_bits_minus_1: number | undefined;
            enable_superres: boolean;
            enable_cdef: boolean;
            enable_restoration: boolean;
            color_config: {
                high_bitdepth: boolean;
                twelve_bit: boolean;
                BitDepth: number;
                mono_chrome: boolean;
                color_description_present_flag: boolean;
                color_primaries: Av1.ColorPrimaries;
                transfer_characteristics: Av1.TransferCharacteristics;
                matrix_coefficients: Av1.MatrixCoefficients;
                color_range: boolean;
                subsampling_x: boolean;
                subsampling_y: boolean;
                chroma_sample_position: number;
                separate_uv_delta_q: boolean;
            };
            film_grain_params_present: boolean;
        } | undefined;
    } | undefined;
    obuHeader(): {
        obu_type: number;
        obu_extension_flag: boolean;
        obu_has_size_field: boolean;
        obu_extension_header: {
            temporal_id: number;
            spatial_id: number;
        } | undefined;
    };
    obuExtensionHeader(): {
        temporal_id: number;
        spatial_id: number;
    };
    static readonly SelectScreenContentTools = 2;
    static readonly SelectIntegerMv = 2;
    sequenceHeaderObu(): {
        seq_profile: number;
        still_picture: boolean;
        reduced_still_picture_header: boolean;
        timing_info_present_flag: boolean;
        timing_info: {
            num_units_in_display_tick: number;
            time_scale: number;
            equal_picture_interval: boolean;
            num_ticks_per_picture_minus_1: number | undefined;
        } | undefined;
        decoder_model_info_present_flag: boolean;
        decoder_model_info: {
            buffer_delay_length_minus_1: number;
            num_units_in_decoding_tick: number;
            buffer_removal_time_length_minus_1: number;
            frame_presentation_time_length_minus_1: number;
        } | undefined;
        initial_display_delay_present_flag: boolean;
        initial_display_delay_minus_1: number[] | undefined;
        operating_points_cnt_minus_1: number;
        operating_point_idc: number[];
        seq_level_idx: number[];
        seq_tier: number[];
        decoder_model_present_for_this_op: boolean[];
        operating_parameters_info: {
            decoder_buffer_delay: number;
            encoder_buffer_delay: number;
            low_delay_mode_flag: boolean;
        }[] | undefined;
        initial_display_delay_present_for_this_op: boolean[];
        frame_width_bits_minus_1: number;
        frame_height_bits_minus_1: number;
        max_frame_width_minus_1: number;
        max_frame_height_minus_1: number;
        frame_id_numbers_present_flag: boolean;
        delta_frame_id_length_minus_2: number | undefined;
        additional_frame_id_length_minus_1: number | undefined;
        use_128x128_superblock: boolean;
        enable_filter_intra: boolean;
        enable_intra_edge_filter: boolean;
        enable_interintra_compound: boolean;
        enable_masked_compound: boolean;
        enable_warped_motion: boolean;
        enable_dual_filter: boolean;
        enable_order_hint: boolean;
        enable_jnt_comp: boolean;
        enable_ref_frame_mvs: boolean;
        seq_choose_screen_content_tools: boolean;
        seq_force_screen_content_tools: number;
        seq_choose_integer_mv: boolean;
        seq_force_integer_mv: number;
        order_hint_bits_minus_1: number | undefined;
        enable_superres: boolean;
        enable_cdef: boolean;
        enable_restoration: boolean;
        color_config: {
            high_bitdepth: boolean;
            twelve_bit: boolean;
            BitDepth: number;
            mono_chrome: boolean;
            color_description_present_flag: boolean;
            color_primaries: Av1.ColorPrimaries;
            transfer_characteristics: Av1.TransferCharacteristics;
            matrix_coefficients: Av1.MatrixCoefficients;
            color_range: boolean;
            subsampling_x: boolean;
            subsampling_y: boolean;
            chroma_sample_position: number;
            separate_uv_delta_q: boolean;
        };
        film_grain_params_present: boolean;
    };
    searchSequenceHeaderObu(): {
        seq_profile: number;
        still_picture: boolean;
        reduced_still_picture_header: boolean;
        timing_info_present_flag: boolean;
        timing_info: {
            num_units_in_display_tick: number;
            time_scale: number;
            equal_picture_interval: boolean;
            num_ticks_per_picture_minus_1: number | undefined;
        } | undefined;
        decoder_model_info_present_flag: boolean;
        decoder_model_info: {
            buffer_delay_length_minus_1: number;
            num_units_in_decoding_tick: number;
            buffer_removal_time_length_minus_1: number;
            frame_presentation_time_length_minus_1: number;
        } | undefined;
        initial_display_delay_present_flag: boolean;
        initial_display_delay_minus_1: number[] | undefined;
        operating_points_cnt_minus_1: number;
        operating_point_idc: number[];
        seq_level_idx: number[];
        seq_tier: number[];
        decoder_model_present_for_this_op: boolean[];
        operating_parameters_info: {
            decoder_buffer_delay: number;
            encoder_buffer_delay: number;
            low_delay_mode_flag: boolean;
        }[] | undefined;
        initial_display_delay_present_for_this_op: boolean[];
        frame_width_bits_minus_1: number;
        frame_height_bits_minus_1: number;
        max_frame_width_minus_1: number;
        max_frame_height_minus_1: number;
        frame_id_numbers_present_flag: boolean;
        delta_frame_id_length_minus_2: number | undefined;
        additional_frame_id_length_minus_1: number | undefined;
        use_128x128_superblock: boolean;
        enable_filter_intra: boolean;
        enable_intra_edge_filter: boolean;
        enable_interintra_compound: boolean;
        enable_masked_compound: boolean;
        enable_warped_motion: boolean;
        enable_dual_filter: boolean;
        enable_order_hint: boolean;
        enable_jnt_comp: boolean;
        enable_ref_frame_mvs: boolean;
        seq_choose_screen_content_tools: boolean;
        seq_force_screen_content_tools: number;
        seq_choose_integer_mv: boolean;
        seq_force_integer_mv: number;
        order_hint_bits_minus_1: number | undefined;
        enable_superres: boolean;
        enable_cdef: boolean;
        enable_restoration: boolean;
        color_config: {
            high_bitdepth: boolean;
            twelve_bit: boolean;
            BitDepth: number;
            mono_chrome: boolean;
            color_description_present_flag: boolean;
            color_primaries: Av1.ColorPrimaries;
            transfer_characteristics: Av1.TransferCharacteristics;
            matrix_coefficients: Av1.MatrixCoefficients;
            color_range: boolean;
            subsampling_x: boolean;
            subsampling_y: boolean;
            chroma_sample_position: number;
            separate_uv_delta_q: boolean;
        };
        film_grain_params_present: boolean;
    } | undefined;
    timingInfo(): {
        num_units_in_display_tick: number;
        time_scale: number;
        equal_picture_interval: boolean;
        num_ticks_per_picture_minus_1: number | undefined;
    };
    decoderModelInfo(): {
        buffer_delay_length_minus_1: number;
        num_units_in_decoding_tick: number;
        buffer_removal_time_length_minus_1: number;
        frame_presentation_time_length_minus_1: number;
    };
    operatingParametersInfo(decoderModelInfo: ReturnType<Av1["decoderModelInfo"]>): {
        decoder_buffer_delay: number;
        encoder_buffer_delay: number;
        low_delay_mode_flag: boolean;
    };
    chooseOperatingPoint(): number;
    colorConfig(seq_profile: number): {
        high_bitdepth: boolean;
        twelve_bit: boolean;
        BitDepth: number;
        mono_chrome: boolean;
        color_description_present_flag: boolean;
        color_primaries: Av1.ColorPrimaries;
        transfer_characteristics: Av1.TransferCharacteristics;
        matrix_coefficients: Av1.MatrixCoefficients;
        color_range: boolean;
        subsampling_x: boolean;
        subsampling_y: boolean;
        chroma_sample_position: number;
        separate_uv_delta_q: boolean;
    };
}
export declare namespace Av1 {
    type OpenBitstreamUnit = Exclude<ReturnType<Av1["openBitstreamUnit"]>, undefined>;
    type SequenceHeaderObu = ReturnType<Av1["sequenceHeaderObu"]>;
    enum ObuType {
        SequenceHeader = 1,
        TemporalDelimiter = 2,
        FrameHeader = 3,
        TileGroup = 4,
        Metadata = 5,
        Frame = 6,
        RedundantFrameHeader = 7,
        TileList = 8,
        Padding = 15
    }
    enum ColorPrimaries {
        Bt709 = 1,
        Unspecified = 2,
        Bt470M = 4,
        Bt470BG = 5,
        Bt601 = 6,
        Smpte240 = 7,
        GenericFilm = 8,
        Bt2020 = 9,
        Xyz = 10,
        Smpte431 = 11,
        Smpte432 = 12,
        Ebu3213 = 22
    }
    enum TransferCharacteristics {
        Bt709 = 1,
        Unspecified = 2,
        Bt470M = 4,
        Bt470BG = 5,
        Bt601 = 6,
        Smpte240 = 7,
        Linear = 8,
        Log100 = 9,
        Log100Sqrt10 = 10,
        Iec61966 = 11,
        Bt1361 = 12,
        Srgb = 13,
        Bt2020Ten = 14,
        Bt2020Twelve = 15,
        Smpte2084 = 16,
        Smpte428 = 17,
        Hlg = 18
    }
    enum MatrixCoefficients {
        Identity = 0,
        Bt709 = 1,
        Unspecified = 2,
        Fcc = 4,
        Bt470BG = 5,
        Bt601 = 6,
        Smpte240 = 7,
        YCgCo = 8,
        Bt2020Ncl = 9,
        Bt2020Cl = 10,
        Smpte2085 = 11,
        ChromatNcl = 12,
        ChromatCl = 13,
        ICtCp = 14
    }
}
export {};
//# sourceMappingURL=av1.d.ts.map