From eeb48035eb33dd32cdc9e1054039710896caed99 Mon Sep 17 00:00:00 2001 From: EncodedVenom Date: Sat, 15 Jun 2024 15:15:26 -0400 Subject: [PATCH] Some changes to how EntityIndex is handled --- lib/index.d.ts | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/lib/index.d.ts b/lib/index.d.ts index 13bf01f..826f62a 100644 --- a/lib/index.d.ts +++ b/lib/index.d.ts @@ -21,26 +21,25 @@ type ArchetypeMap = { size: number, } -type EntityIndex = { +type Query = { + without: (...components: Entity[]) => Query; +} & IterableFunction> + +// Exported due to functions below requiring this type. +export type EntityIndex = { dense: { [key: number]: number }; sparse: { - [key: number]: Record + [key: number]: { + archetype: Archetype, + row: number, + dense: number, + componentRecord: ArchetypeMap, + } } } -type Record = { - archetype: Archetype, - row: number, - dense: number, - componentRecord: ArchetypeMap, -} - -type Query = { - without: (...components: Entity[]) => Query; -} & IterableFunction> - // Utility Types export type Entity = number & { __nominal_type_dont_use: T } export type EntityType = T extends Entity ? A : never;