/**
 *
 * @param {BufferView} buffer
 */
export function iterate(buffer: BufferView): Generator<number, void, undefined>;
export function empty(): BufferView;
export function create(segments: Uint8Array[], byteOffset?: number, byteLength?: number): BufferView;
export function slice(buffer: BufferSlice, startOffset?: number | undefined, endOffset?: number | undefined): BufferSlice;
export function push(buffer: BufferSlice, part: Uint8Array): BufferSlice;
export function get(buffer: BufferSlice, n: number): number | undefined;
export function copyTo(buffer: BufferView, target: Uint8Array, byteOffset: number): Uint8Array;
export type BufferSlice = {
    readonly byteOffset: number;
    readonly byteLength: number;
    readonly segments: Uint8Array[];
};
export type View = BufferView;
/**
 * @extends {Indexed<number>}
 */
declare class BufferView extends Indexed<number> {
    /**
     * @param {Uint8Array[]} segments
     * @param {number} byteOffset
     * @param {number} byteLength
     */
    constructor(segments?: Uint8Array[], byteOffset?: number, byteLength?: number);
    /** @hide */
    segments: Uint8Array[];
    /** @readonly */
    readonly byteLength: number;
    /** @readonly */
    readonly length: number;
    /** @readonly */
    readonly byteOffset: number;
    /**
     * @param {number} [start]
     * @param {number} [end]
     */
    slice(start?: number | undefined, end?: number | undefined): BufferView;
    /**
     * @param {number} [start]
     * @param {number} [end]
     */
    subarray(start?: number | undefined, end?: number | undefined): BufferView;
    /**
     *
     * @param {Uint8Array} bytes
     */
    push(bytes: Uint8Array): BufferView;
    /**
     * @param {number} n
     */
    get(n: number): number | undefined;
    /**
     *
     * @param {Uint8Array} target
     * @param {number} offset
     */
    copyTo(target: Uint8Array, offset: number): Uint8Array;
    [Symbol.iterator](): Generator<number, void, undefined>;
}
import { Indexed } from "./indexed.js";
export {};
//# sourceMappingURL=buffer.d.ts.map