import { ByteVector } from "../byteVector"; declare const _default: { /** * Encodes an unsigned int as synchronized integer data. * @param value Number to encode. Must be a safe, positive integer * @returns The encoded number * @throws Error if `value` is greater than 268435456 */ fromUint: (value: number) => ByteVector; /** * Resynchronizes a {@link ByteVector} object by removing the added bytes. * @remarks * In some cases (as determined by header flags), the metadata contains MPEG stream * synchronization bytes that were "unsynchronized" by inserting empty bytes in between * them. This method removes those bytes such that the original metadata bytes are * returned. * @param data Object to resynchronize */ resyncByteVector: (data: ByteVector) => ByteVector; /** * Decodes synchronized integer data into an unsigned integer. * @param data ByteVector containing the number to decode. Only the first 4 bytes of this value * will be used * @returns Value containing the decoded number */ toUint: (data: ByteVector) => number; /** * Unsynchronizes a {@link ByteVector} object by inserting empty bytes where necessary. * @remarks * This is necessary in some cases in order for the MPEG parser to ignore bytes used * for MPEG stream synchronization that occur accidentally in metadata from being treated * as synchronization bytes. * @param data Object to unsynchronize */ unsyncByteVector: (data: ByteVector) => ByteVector; }; /** * Support for encoding and decoding unsynchronized data and numbers. * @remarks * Unsynchronization is designed so that portions of the tag won't be misinterpreted * as MPEG audio stream headers by removing the possibility of the sync bytes occurring in the * tag. */ export default _default;