@gwigz/homunculus-core
Version:
A third-party framework for interacting with Linden Lab's virtual world "Second Life"
20 lines (19 loc) • 658 B
TypeScript
import { AsyncEventEmitter } from "@vladfrangu/async_event_emitter";
import type { Entity } from "./entity";
export interface EntitiesEvents {
create: [entity: Entity];
delete: [id: number];
}
export declare class Entities extends AsyncEventEmitter<EntitiesEvents> {
private entities;
private register;
has(id: number): boolean;
lookup(key: string): Entity | null | undefined;
get(id: number): Entity | undefined;
set(id: number, entity: Entity): this;
delete(id: number): boolean;
entries(): MapIterator<[number, Entity]>;
values(): MapIterator<Entity>;
keys(): MapIterator<number>;
get size(): number;
}