import { type ComponentPropsWithoutRef } from 'react'; import { type TooltipTriggerType } from '../Tooltip.types'; /** * A hook to control the display of the tooltip. * * @param options - The options to control the tooltip display. * * @param options.trigger - The trigger type of the tooltip. Available options are 'hover', 'click', and 'focus'. * * @param options.wrapperProps - The props of the wrapper component which wraps the trigger element. This function will create new props for the wrapper component based on the old ones to support the tooltip trigger. * * @param options.tooltipOpen - The current open state of the tooltip. If not defined, the tooltip will be controlled by the trigger. * * @param options.onOpenStateChanged - A callback function that will be called when the open state of the tooltip changes. * * @param options.disabled - If `true`, the tooltip will be disabled, and won't be shown even if the trigger is activated, but it still follows the `tooltipOpen` prop if it's specified. * * @returns An object containing the opening state, the root attributes, and tooltip attributes. */ export declare function useTooltipDisplayController({ trigger, wrapperProps, tooltipOpen, onOpenStateChanged, disabled, }: { trigger: TooltipTriggerType | TooltipTriggerType[]; wrapperProps: ComponentPropsWithoutRef<'span'>; tooltipOpen?: boolean; onOpenStateChanged?: (open: boolean) => void; disabled: boolean; }): { open: boolean; rootAttributes: Omit, HTMLSpanElement>, "ref">; tooltipAttributes: { onMouseEnter?: undefined; onMouseLeave?: undefined; } | { onMouseEnter: () => void; onMouseLeave: () => void; }; closeImmediate: () => void; closeWithManager: () => void; };