export declare class MapG extends Map { static require(map: Map, key: K): V & ({} | null); static guarantee(map: Map, key: K, make: () => V): V; array(): [K, V][]; require(key: K): V & ({} | null); guarantee(key: K, make: () => V): V; } export type Identifiable = { id: Id; }; export declare class Pool extends MapG { got(value: V): boolean; add(value: V): V; remove(value: V): boolean; } /** @deprecated renamed to `MapG`, to avoid confusion with vectors like Vec2 */ export declare const Map2: typeof MapG;