import System from '../core/System.js'; import type GameObject from '../core/GameObject.js'; /** * A system that processes entities with RenderComponents. * Handles camera transforms, frustum culling, and drawing. */ export default class RenderingSystem extends System { private ctx; constructor(ctx: CanvasRenderingContext2D); /** * Updates the rendering context (used when the engine is re-initialised). * @param ctx The new canvas rendering context. */ setContext(ctx: CanvasRenderingContext2D): void; /** * Main rendering loop. * @param entities The set of entities to process. * @param deltaTime Time passed since the last frame (optional). * @param debug Whether to draw debug overlays (hitboxes/tags). */ update(entities: Set, deltaTime?: number, debug?: boolean): void; }