diff --git a/src/types.d.ts b/src/types.d.ts index 12734450..58237b88 100644 --- a/src/types.d.ts +++ b/src/types.d.ts @@ -1,22 +1,27 @@ +interface IndexedCollection extends Iterable { + readonly length: number; + [index: number]: number; +} + // prettier-ignore declare type mat2 = | [number, number, number, number] - | Float32Array; + | IndexedCollection; // prettier-ignore declare type mat2d = | [number, number, number, number, number, number] - | Float32Array; + | IndexedCollection; // prettier-ignore declare type mat3 = | [number, number, number, number, number, number, number, number, number] - | Float32Array; + | IndexedCollection; // prettier-ignore declare type mat4 = @@ -24,19 +29,19 @@ declare type mat4 = number, number, number, number, number, number, number, number, number, number, number, number] - | Float32Array; + | IndexedCollection; -declare type quat = [number, number, number, number] | Float32Array; +declare type quat = [number, number, number, number] | IndexedCollection; // prettier-ignore declare type quat2 = | [number, number, number, number, number, number, number, number] - | Float32Array; + | IndexedCollection; -declare type vec2 = [number, number] | Float32Array; -declare type vec3 = [number, number, number] | Float32Array; -declare type vec4 = [number, number, number, number] | Float32Array; +declare type vec2 = [number, number] | IndexedCollection; +declare type vec3 = [number, number, number] | IndexedCollection; +declare type vec4 = [number, number, number, number] | IndexedCollection; // prettier-ignore declare type ReadonlyMat2 = @@ -44,7 +49,7 @@ declare type ReadonlyMat2 = number, number, number, number ] - | Float32Array; + | IndexedCollection; // prettier-ignore declare type ReadonlyMat2d = @@ -53,7 +58,7 @@ declare type ReadonlyMat2d = number, number, number, number ] - | Float32Array; + | IndexedCollection; // prettier-ignore declare type ReadonlyMat3 = @@ -62,7 +67,7 @@ declare type ReadonlyMat3 = number, number, number, number, number, number ] - | Float32Array; + | IndexedCollection; // prettier-ignore declare type ReadonlyMat4 = @@ -72,18 +77,18 @@ declare type ReadonlyMat4 = number, number, number, number, number, number, number, number ] - | Float32Array; + | IndexedCollection; declare type ReadonlyQuat = | readonly [number, number, number, number] - | Float32Array; + | IndexedCollection; declare type ReadonlyQuat2 = | readonly [number, number, number, number, number, number, number, number] - | Float32Array; + | IndexedCollection; -declare type ReadonlyVec2 = readonly [number, number] | Float32Array; -declare type ReadonlyVec3 = readonly [number, number, number] | Float32Array; +declare type ReadonlyVec2 = readonly [number, number] | IndexedCollection; +declare type ReadonlyVec3 = readonly [number, number, number] | IndexedCollection; declare type ReadonlyVec4 = | readonly [number, number, number, number] - | Float32Array; + | IndexedCollection;