import { Color } from "../math/Color.ts"; interface RendererOptions { width?: number; height?: number; canvas?: HTMLCanvasElement; pixelRatio?: number; sortObjects?: boolean; } interface FogLike { near: number; far: number; color: { r: number; g: number; b: number; }; } interface SceneLike { children: SceneNodeLike[]; visible: boolean; fog?: FogLike | undefined; lights?: unknown; background?: Color | number | undefined; autoUpdate?: boolean; } interface SceneNodeLike { children: SceneNodeLike[]; material?: { map?: { autoUpdate?: boolean; update?: () => void; needsUpdate: boolean; }; }; } interface CameraLike { matrixWorldInverse: { elements: Float32Array; }; projectionMatrix: { elements: Float32Array; }; updateMatrixWorld: () => void; position: { x: number; y: number; z: number; }; } export interface RenderTimings { clearMs?: number; traversalMs?: number; fogCullMs?: number; sortMs?: number; shadeRasterMs?: number; uploadMs?: number; totalMs?: number; profileTraversal?: boolean; travUpdateWorldMs?: number; travWalkMs?: number; travProjectMs?: number; travAssembleMs?: number; travDrawCalls?: number; } /** Canvas2D software renderer orchestrating the full pipeline. */ export declare class Renderer { #private; sortObjects: boolean; constructor(options?: RendererOptions); get domElement(): HTMLCanvasElement | undefined; get width(): number; get height(): number; get pixelRatio(): number; /** Renders a scene from a camera's perspective. */ render(scene: SceneLike, camera: CameraLike, timings?: RenderTimings): void; setSize(width: number, height: number): void; setPixelRatio(ratio: number): void; /** * Sets the clear color used when no fog or scene.background is present. * * Overloads: * - `setClearColor(color: Color)` -- Color instance with .r/.g/.b in [0, 1] * - `setClearColor(hex: number)` -- packed hex e.g. `0xff0000` * - `setClearColor(r, g, b)` -- three 0-255 integers (legacy) */ setClearColor(rOrColor: Color | number, g?: number, b?: number): void; dispose(): void; } export {}; //# sourceMappingURL=Renderer.d.ts.map