import { ITypedArrayTupleFactory } from "./i-typed-array-tuple-factory.js";
import { INormalizedDataView } from "./normalized-data-view/i-normalized-data-view.js";
import { ATypedArrayTuple } from "./a-typed-array-tuple.js";
import { TTypedArray } from "./t-typed-array.js";
export declare abstract class ATypedTupleFactory<TArray extends ATypedArrayTuple<number, TTypedArray>, TCtorArgs extends number[]> implements ITypedArrayTupleFactory<TArray, TCtorArgs> {
    readonly elementCount: number;
    protected readonly bytesPerElement: number;
    protected dataView: INormalizedDataView;
    protected constructor(elementCount: number, bytesPerElement: number, dataView: INormalizedDataView);
    abstract createOne(...args: TCtorArgs): TArray;
    abstract createOneEmpty(): TArray;
    copyFromBuffer(memoryDataView: DataView, pointer: number, writeTo?: TArray, littleEndian?: boolean): TArray;
    copyToBuffer(memoryDataView: DataView, writeFrom: Readonly<TArray>, pointer: number, littleEndian?: boolean): void;
    protected static littleEndian: boolean;
}
//# sourceMappingURL=a-typed-tuple-factory.d.ts.map