import { default as React } from 'react';
import { ToolTipVariant, TooltipPlacement } from './ToolTip.types';
type TriggerEvent = "click" | "hover";
export interface UseTooltipProps {
    initialOpen?: boolean;
    variant?: ToolTipVariant;
    placement?: TooltipPlacement;
    triggerEvent?: TriggerEvent;
    open?: boolean;
    onOpenChange?: (_open: boolean) => void;
    disabled?: boolean;
}
/**
 * Hook that controls the state of the tooltip.
 *
 * @param {*} param0
 * @returns
 */
export declare const useTooltip: ({ initialOpen, variant, placement, triggerEvent, open: controlledOpen, onOpenChange: setControlledOpen, disabled, }?: UseTooltipProps) => {
    placement: import('@floating-ui/utils').Placement;
    strategy: import('@floating-ui/utils').Strategy;
    middlewareData: import('@floating-ui/core').MiddlewareData;
    x: number;
    y: number;
    isPositioned: boolean;
    update: () => void;
    floatingStyles: React.CSSProperties;
    refs: {
        reference: React.MutableRefObject<import('@floating-ui/react-dom').ReferenceType | null>;
        floating: React.MutableRefObject<HTMLElement | null>;
        setReference: (node: import('@floating-ui/react-dom').ReferenceType | null) => void;
        setFloating: (node: HTMLElement | null) => void;
    } & import('@floating-ui/react').ExtendedRefs<import('@floating-ui/react').ReferenceType>;
    elements: {
        reference: import('@floating-ui/react-dom').ReferenceType | null;
        floating: HTMLElement | null;
    } & import('@floating-ui/react').ExtendedElements<import('@floating-ui/react').ReferenceType>;
    context: {
        x: number;
        y: number;
        placement: import('@floating-ui/utils').Placement;
        strategy: import('@floating-ui/utils').Strategy;
        middlewareData: import('@floating-ui/core').MiddlewareData;
        isPositioned: boolean;
        update: () => void;
        floatingStyles: React.CSSProperties;
        open: boolean;
        onOpenChange: (open: boolean, event?: Event) => void;
        events: import('@floating-ui/react').FloatingEvents;
        dataRef: React.MutableRefObject<import('@floating-ui/react').ContextData>;
        nodeId: string | undefined;
        floatingId: string;
        refs: import('@floating-ui/react').ExtendedRefs<import('@floating-ui/react').ReferenceType>;
        elements: import('@floating-ui/react').ExtendedElements<import('@floating-ui/react').ReferenceType>;
    };
    getReferenceProps: (userProps?: React.HTMLProps<Element>) => Record<string, unknown>;
    getFloatingProps: (userProps?: React.HTMLProps<HTMLElement>) => Record<string, unknown>;
    getItemProps: (userProps?: React.HTMLProps<HTMLElement>) => Record<string, unknown>;
    open: boolean;
    setOpen: (_open: boolean) => void;
    variant: ToolTipVariant | undefined;
    disabled: boolean;
};
export {};
//# sourceMappingURL=useTooltip.d.ts.map