import * as React from 'react';
import { TooltipAPI } from '../tooltip/index.js';
export { tooltipContentVariants } from '../tooltip/index.js';
import { Side } from '../shared/index.js';

interface TooltipContextValue {
    api: TooltipAPI;
    open: boolean;
    setOpen: (value: boolean) => void;
    openWithDelay: () => void;
    cancelDelay: () => void;
}
interface TooltipProps {
    open?: boolean;
    defaultOpen?: boolean;
    onOpenChange?: (open: boolean) => void;
    placement?: Side;
    delayDuration?: number;
    children: React.ReactNode;
}
declare function Tooltip({ open: controlledOpen, defaultOpen, onOpenChange, placement, delayDuration, children, }: TooltipProps): React.FunctionComponentElement<React.ProviderProps<TooltipContextValue | null>>;
declare namespace Tooltip {
    var displayName: string;
}
interface TooltipTriggerProps extends React.HTMLAttributes<HTMLSpanElement> {
}
declare const TooltipTrigger: React.ForwardRefExoticComponent<TooltipTriggerProps & React.RefAttributes<HTMLSpanElement>>;
interface TooltipContentProps extends React.HTMLAttributes<HTMLDivElement> {
    side?: Side;
}
declare const TooltipContent: React.ForwardRefExoticComponent<TooltipContentProps & React.RefAttributes<HTMLDivElement>>;

export { Tooltip, TooltipContent, type TooltipContentProps, type TooltipProps, TooltipTrigger, type TooltipTriggerProps };
