import { IRenderer, LayerHook, RenderFrameState } from '../../interfaces/i-renderer'; import { BubbleState } from '../../models/internal/bubble-state'; import { Configuration, RenderLayer } from '../../models/public/configuration'; export declare class CanvasRenderer implements IRenderer { private readonly config; private canvas; private ctx; private dpr; private measurer; private container; private readonly hooksByLayer; constructor(config: Configuration); mount(container: HTMLElement): void; renderFrame(bubbles: ReadonlyArray, state: RenderFrameState): void; renderLayer(layer: RenderLayer, bubbles: ReadonlyArray, state: RenderFrameState): void; addLayerHook(hook: Omit): string; removeLayerHook(id: string): void; getLayerHooks(layer?: RenderLayer): ReadonlyArray; resize(width: number, height: number): void; dispose(): void; get logicalWidth(): number; get logicalHeight(): number; get currentDpr(): number; /** Internal registration — bypasses the public guard, assigns "builtin:" prefix IDs. */ private registerBuiltinHook; private insertHook; private drawBackground; private drawShadows; private drawBubbles; private drawText; private drawDebug; private lightenColor; private darkenColor; private shiftColor; }