/** * Chart tooltip — hit-zone overlays, crosshair, data dots, and tooltip popup. * * Extracted from charts.ts to keep each file under 700 LOC. */ import type { ChartLayout, SeriesEntry } from './chart-helpers.js'; export interface TooltipEntry { label: string; value: string | number; color: string; } export interface TooltipCtx { wrapper: HTMLElement; tooltip: HTMLElement; svgEl: SVGSVGElement; } /** Create and attach a tooltip div to the chart wrapper. */ export declare function createTooltip(wrapper: HTMLElement, svg: SVGSVGElement): TooltipCtx; /** Show the tooltip at a position relative to the SVG. */ export declare function showTooltipAt(ctx: TooltipCtx, svgX: number, _svgY: number, categoryLabel: string | undefined, entries: TooltipEntry[]): void; /** Attach hover hit-zones for bar chart columns. */ export declare function addBarTooltipZones(ctx: TooltipCtx, svg: SVGSVGElement, data: Record[], series: SeriesEntry[], layout: ChartLayout, xAxisKey: string | undefined, formatValue: (raw: unknown, s: SeriesEntry, si: number) => string, formatLabel?: (raw: unknown) => string): void; /** Attach hover hit-zones for line/area chart data points. */ export declare function addLineTooltipZones(ctx: TooltipCtx, svg: SVGSVGElement, data: Record[], allSeries: SeriesEntry[], layout: ChartLayout, xAxisKey: string | undefined, formatValue: (raw: unknown, s: SeriesEntry, si: number) => string, crosshair?: SVGLineElement, dotGroups?: SVGCircleElement[][], formatLabel?: (raw: unknown) => string): void; //# sourceMappingURL=chart-tooltip.d.ts.map