import { ByteWriter } from "../interfaces/writer.js";
export declare class DataViewByteWriter implements ByteWriter {
    littleEndian: boolean;
    protected _dataview: DataView;
    protected _isComplete: boolean;
    protected _byteOffset: number;
    protected get _bytesRemaining(): number;
    get dataview(): DataView;
    set dataview(dataview: DataView);
    isComplete(): boolean;
    constructor(dataview: DataView, littleEndian?: boolean);
    protected updateIsComplete(): boolean;
    complete(): void;
    /**
     * Attempts to ensure that a specified number of bytes are available in the
     * current dataview.
     *
     * @param bytes the number of bytes to request available in the current
     * dataview
     * @returns the number of bytes at least made available in the current
     * dataview, up to the requested number of bytes
     */
    protected tryEnsureAvailable(bytes: number): number;
    protected ensureAvailable(bytes: number): void;
    writeFloat32(value: number): void;
    writeFloat64(value: number): void;
    writeInt8(value: number): void;
    writeInt16(value: number): void;
    writeInt32(value: number): void;
    writeUint8(value: number): void;
    writeUint16(value: number): void;
    writeUint32(value: number): void;
    tryWriteBytes(view: ArrayBufferView): number;
    writeBytes(view: ArrayBufferView): void;
    writeString(value: string): void;
}
//# sourceMappingURL=writer.d.ts.map