/** @format */
import { HuffmanCodeList } from './webp-huffman-code-list.js';
import { HuffmanCode32 } from './webp-huffman-code-32.js';
import { VP8LBitReader } from './vp8l-bit-reader.js';
/**
 * Represents a group of Huffman trees used for decoding WebP lossless images.
 * Manages Huffman tables and provides symbol reading functionality.
 */
export declare class HuffmanTreeGroup {
    /** Huffman trees for each meta code. */
    readonly htrees: HuffmanCodeList[];
    /** Packed Huffman tables for fast decoding. */
    readonly packedTable: HuffmanCode32[];
    /** Indicates if the literal code is trivial (single symbol). */
    isTrivialLiteral: boolean;
    /** Stores the value of the trivial literal if present. */
    literalArb: number;
    /** Indicates if the code is trivial (single symbol). */
    isTrivialCode: boolean;
    /** Enables use of packed tables for decoding. */
    usePackedTable: boolean;
    private static readonly _huffmanTableBits;
    private static readonly _huffmanTableMask;
    /**
     * Initializes Huffman trees and packed tables.
     */
    constructor();
    /**
     * Returns the HuffmanCodeList at the specified index.
     * @param index Index of the Huffman tree.
     */
    get(index: number): HuffmanCodeList;
    /**
     * Reads a symbol from the specified Huffman table using the bit reader.
     * @param table Index of the Huffman table.
     * @param br Bit reader for input data.
     */
    readSymbol(table: number, br: VP8LBitReader): number;
}
