UNPKG

@expofp/floorplan

Version:

Interactive floor plan library for expos and events

27 lines 1.17 kB
import type { LayerDef } from "@expofp/renderer"; import type { RendererService } from "../../renderer"; /** * Manages scene layer resolution, caching, dirty-tracking, and flush. * * Layers are resolved by name from `scene.rootLayer.children` and cached. * `touchLayer` marks a layer as dirty; `flush` commits all dirty layers * to `RendererService` in a single update call. */ export interface LayerManager { /** Layers modified since the last {@link flush}. */ readonly touchedLayers: Map<string, LayerDef>; /** Resolve a layer by name (cached). Throws if not found. */ resolveLayer(name: string): LayerDef; /** Resolve a layer and mark it as dirty for the next {@link flush}. */ touchLayer(name: string): LayerDef; /** Commit all dirty layers to `RendererService` and clear the dirty set. */ flush(): void; /** Clear caches and dirty set. */ destroy(): void; } /** * Create a {@link LayerManager} bound to the given `RendererService`. * Throws if `rendererService.scene` is null. */ export declare function createLayerManager(rendererService: RendererService): LayerManager; //# sourceMappingURL=layerManager.d.ts.map