import { TooltipConfig } from '@/types'; /** * Tooltip component for displaying energy data on hover */ export declare class Tooltip { private element; private config; private representation; private chartContainer; constructor(container: string | HTMLElement, chartContainer: HTMLElement, config: TooltipConfig); /** * Show tooltip with energy data */ show(data: { year: number; energySource: string; value: number; }, event: MouseEvent): void; /** * Show tooltip at a specific screen position (for circle positioning) */ showAtPosition(data: { year: number; energySource: string; value: number; }, screenX: number, screenY: number): void; /** * Show tooltip with center aligned to circle center */ showCenteredWithCircle(data: { year: number; energySource: string; value: number; }, circleScreenX: number, circleScreenY: number): void; /** * Show tooltip centered with circle using chart-relative coordinates (more reliable) */ showCenteredWithChartCoordinates(data: { year: number; energySource: string; value: number; }, _chartX: number, _chartY: number): void; /** * Position tooltip using the actual screen position of the hover circle */ private updatePositionUsingActualCirclePosition; /** * Show tooltip centered vertically with the circle, positioned to the right */ showAtCirclePosition(data: { year: number; energySource: string; value: number; }, circleScreenX: number, circleScreenY: number): void; /** * Hide tooltip */ hide(): void; /** * Update tooltip position following mouse cursor */ updatePosition(event: MouseEvent): void; /** * Convert page coordinates to container-relative coordinates with full transform support */ private convertToContainerCoordinates; /** * Parse CSS transform matrix string into a usable matrix object */ private parseTransformMatrix; /** * Apply inverse transform to coordinates */ private applyInverseTransform; /** * Update tooltip position from container-relative coordinates */ updatePositionFromCoords(containerX: number, containerY: number): void; /** * Get effective container bounds for tooltip positioning */ private getContainerBounds; /** * Update tooltip position with tooltip center aligned to circle center */ updatePositionWithCenterAlignedToCircle(circleScreenX: number, circleScreenY: number): void; /** * Update tooltip position centered vertically with circle, positioned to the right * Coordinates are chart-relative (from chartGroup coordinate system) */ updatePositionCenteredWithCircle(chartX: number, chartY: number): void; /** * Update data representation mode for proper formatting */ setRepresentation(representation: string): void; /** * Update tooltip configuration */ updateConfig(newConfig: Partial): void; /** * Check if tooltip is currently visible */ isVisible(): boolean; /** * Destroy tooltip and clean up */ destroy(): void; /** * Get tooltip DOM element for advanced usage */ getElement(): HTMLElement | null; } //# sourceMappingURL=Tooltip.d.ts.map