import { CanvasEvent, CanvasNode } from './CanvasNode'; export declare class CanvasRoot { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D; rootNode: CanvasNode; private hoverController; private eventHandlers; private batcher; onCursorChange?: (cursor: string) => void; onPortalHoverTargetChange?: (node: CanvasNode | null, event: CanvasEvent | null) => void; constructor(canvas: HTMLCanvasElement, rootNode: CanvasNode); private setupEvents; destroy(): void; private dispatchPointerEvent; private getEventCoords; private bubbleEvent; private dispatchMouseMove; private dispatchToNodes; private invokePointerHandler; render(): void; private clearCanvas; private applyResolutionScale; private updateRootRect; private layoutRoot; }