import { TooltipContext } from '../utils/portalHoverEvents'; import { CanvasEvent, CanvasNode, Rect } from '../core/CanvasNode'; import { ResolvedCanvasInteractionConfig } from '../core/canvasInteraction'; type PointerEventType = CanvasEvent['type']; export interface CellCanvasPointerDispatchResult { propagationStopped: boolean; suppressGridDefault: boolean; interaction?: ResolvedCanvasInteractionConfig; } export declare class CellCanvasRoot { rootNode: CanvasNode; private bounds; private hoverController; private batcher; private portalEventTarget; private tooltipContext; onCursorChange?: (cursor: string) => void; constructor(node: CanvasNode, _originId?: string); setPortalEventTarget(target: EventTarget | null): void; setTooltipContext(context: TooltipContext | undefined): void; setRootNode(node: CanvasNode): void; setOriginId(_originId: string): void; render(ctx: CanvasRenderingContext2D, rect: Rect, hoverPos?: { x: number; y: number; }, absoluteBounds?: Rect, animationCtx?: { frameTime?: number; requestAnimationFrame?: () => void; }): void; dispatchPointerEvent(type: PointerEventType, x: number, y: number, nativeEvent?: MouseEvent): CellCanvasPointerDispatchResult; getInteractionAtPoint(x: number, y: number): ResolvedCanvasInteractionConfig | undefined; private dispatchEventToNodes; private invokeNodeHandler; handleMouseLeave(): void; private prepareRootNode; computeCursor(relativeX: number, relativeY: number): string; getCurrentCursor(): string; forcePortalHide(): void; } export {};