import * as React from 'react'; import type { FloatingRootContext } from '@floating-ui/react'; import type { GenericHTMLProps } from '../../utils/types.js'; import type { TransitionStatus } from '../../utils/useTransitionStatus.js'; import type { OpenChangeReason } from '../../utils/translateOpenChangeReason.js'; export interface TooltipRootContext { open: boolean; setOpen: (open: boolean, event?: Event, reason?: OpenChangeReason) => void; setTriggerElement: (el: Element | null) => void; positionerElement: HTMLElement | null; setPositionerElement: (el: HTMLElement | null) => void; popupRef: React.RefObject; delay: number; closeDelay: number; mounted: boolean; setMounted: React.Dispatch>; getRootTriggerProps: (externalProps?: GenericHTMLProps) => GenericHTMLProps; getRootPopupProps: (externalProps?: GenericHTMLProps) => GenericHTMLProps; instantType: 'delay' | 'dismiss' | 'focus' | undefined; floatingRootContext: FloatingRootContext; trackCursorAxis: 'none' | 'x' | 'y' | 'both'; transitionStatus: TransitionStatus; onOpenChangeComplete: ((open: boolean) => void) | undefined; } export declare const TooltipRootContext: React.Context; export declare function useTooltipRootContext(): TooltipRootContext;