import { Endianness } from "../Parser/endianness"; /** * Data serializer only for strictly 4 byte aligned binary data * * Data always serialized in little endian */ export declare class AlignedDataSerializer extends Endianness { private readonly _arrayBuffer; private readonly _uint8Ptr; private readonly _uint16Ptr; private readonly _uint32Ptr; private readonly _int32Ptr; private readonly _float32Ptr; private readonly _encoder; private _offset; /** * Creates Aligned data serializer * @param arrayBuffer ArrayBuffer to serialize data */ constructor(arrayBuffer: ArrayBufferLike); /** * Current offset in the buffer */ get offset(): number; set offset(value: number); /** * Writes a uint8 value * @param value Uint8 value to write */ setUint8(value: number): void; /** * Writes a uint8 array * @param values Uint8 array to write */ setUint8Array(values: ArrayLike): void; /** * Writes a uint16 value * @param value Uint16 value to write */ setUint16(value: number): void; /** * Writes a uint16 array * @param values Uint16 array to write */ setUint16Array(values: ArrayLike): void; /** * Writes a uint32 value * @param value Uint32 value to write */ setUint32(value: number): void; /** * Writes a uint32 array * @param values Uint32 array to write */ setUint32Array(values: ArrayLike): void; /** * Writes a int32 value * @param value Int32 value to write */ setInt32(value: number): void; /** * Writes a int32 array * @param values Int32 array to write */ setInt32Array(values: ArrayLike): void; /** * Writes a float32 value * @param value Float32 value to write */ setFloat32(value: number): void; /** * Writes a float32 array * @param values Float32 array to write */ setFloat32Array(values: ArrayLike): void; /** * Writes a string as UTF-8 with 4 byte alignment padding * @param value String to write */ setString(value: string): void; /** * The number of bytes available */ get bytesAvailable(): number; /** * Compute 4 byte alignment padding * @param offset Offset * @returns Padding */ static Padding(offset: number): number; }