import React from 'react'; import { type FlexComponentProps, type SpaceProps } from 'reflexy/styled'; import { type TransitionFlexProps } from '../TransitionFlex'; type TooltipAlignX = 'left' | 'middle' | 'right'; type TooltipAlignY = 'top' | 'middle' | 'bottom'; export interface TooltipData { readonly target: HTMLElement; readonly preview?: React.ReactElement | React.CSSProperties | undefined; readonly title?: React.ReactNode | undefined; readonly text: React.ReactNode; readonly arrow?: boolean | undefined; readonly x: number; readonly y: number; readonly alignX: TooltipAlignX; readonly alignY: TooltipAlignY; readonly minX?: number | undefined; readonly maxX?: number | undefined; readonly minY?: number | undefined; readonly maxY?: number | undefined; readonly maxWidth?: number | undefined; readonly space?: SpaceProps | undefined; readonly innerSpace?: SpaceProps | undefined; readonly sequence?: boolean | undefined; } export interface TooltipProps extends FlexComponentProps<'div'>, Pick { readonly tooltip: TooltipData | undefined; } export default function Tooltip({ tooltip, className, onShown, onHidden, ...rest }: TooltipProps): React.JSX.Element; export {};