export interface H264AccessUnit { readonly timestamp: number; readonly data: Uint8Array; readonly keyFrame: boolean; } /** Packetizes an Annex-B access unit into RFC 6184 single-NAL/FU-A payloads. */ export declare function packetizeH264AnnexB(data: Uint8Array, maxPayload?: number): Uint8Array[]; /** WhatsApp's native sender packs the complete Annex-B access unit as one NAL * before applying FU-A fragmentation. This intentionally differs from generic * RFC 6184 packetization and keeps SPS/PPS/IDR together for mobile receivers. */ export declare function packetizeWhatsAppH264AccessUnit(data: Uint8Array, maxPayload?: number): Uint8Array[]; /** RFC 6184 depacketizer for single NAL, STAP-A and FU-A payloads. */ export declare class H264Depacketizer { private static readonly MAX_BUFFERED_BYTES; private timestamp; private parts; private keyFrame; private fuParts; private bufferedBytes; push(payload: Uint8Array, timestamp: number, marker: boolean): H264AccessUnit[]; reset(): void; private resetFrame; private appendNal; private appendStapA; private appendFuA; private flush; }