import type { InstanceOf, StructConstructor } from './structs.shared.js'; import type { ArrayOf, Type, TypeArrayConstructor, Value } from './types.js'; export declare function useStrictArrayIndexes(): void; /** * The view on memory used for non-primitive array types. * This is a *value* */ export declare function StructArray(type: T, __length?: N): TypeArrayConstructor>; /** * Type used to extract the runtime value type of an `ArrayType`. */ export type ArrayValue = undefined extends T['array'] ? ArrayOf ? InstanceOf : Value> : InstanceType unknown)>; /** * A class used to create any *type* representing an array of a given "inner" or element type. */ export declare class ArrayType implements Type> { readonly type: T; readonly length: number; readonly name: string; readonly size: number; private __structArray; private __arrayType; /** @internal @hidden */ readonly __isArrayType = true; constructor(type: T, length: number); get: (buffer: ArrayBufferLike, offset: number) => ArrayValue; set: (buffer: ArrayBufferLike, offset: number, value: ArrayValue) => void; /** * This is for an array of this array */ array: TypeArrayConstructor>; }