import type { TippyProps } from '@tippyjs/react';
import * as React from 'react';
import type { HTMLAttributes } from 'react';
export declare const defaultPopoverModifiers: TippyProps['popperOptions'];
type TooltipProps = {
/**
* The element or ref to append the tooltip to.
* Defaults to the body element.
* 'parent' is suggested if used in a modal.
*/
appendTo?: 'parent' | Element | ((ref: Element) => Element);
/**
* Behavior of the tooltip transition, defaults to an opacity "fade".
* Animation guidelines are provided in https://atomiks.github.io/tippyjs/v5/animations/.
* To disable animations, pass `duration={0}`.
*/
animation?: string;
/**
* The trigger element the tooltip appears next to.
*/
children?: React.ReactElement;
/**
* If the child being passed into the Tooltip via the `children` prop is not interactive (e.g. a disabled button or an icon).
*
* Please note that spacing and placement styling will need to be added to a wrapper around the Tooltip,
* not on the child component inside the Tooltip, because there will be a wrapper around the child. Example:
*
*/
childNotInteractive?: boolean;
/**
* Custom classname for additional styles.
*
* These styles will only affect the tooltip bubble.
*/
className?: string;
/**
* How long to delay the Tooltip showing and hiding, in milliseconds.
*
* If a single number is provided, it will be applied to showing and hiding.
* If an array with 2 numbers is provided, the first will apply to showing and
* the second will be applied to hiding.
* https://atomiks.github.io/tippyjs/v6/all-props/#delay
*/
delay?: number | [number | null, number | null];
/**
* Duration of Tooltip animation, in milliseconds. Default is 200.
*/
duration?: number;
/**
* The trigger element the tooltip appears next to.
*
* Use this instead of `children` if the trigger element is being
* stored in a ref. Most cases will use `children` and not
* `reference`.
*/
reference?: React.RefObject | Element;
/**
* Whether the tooltip is always visible or always invisible.
*
* This is most often left undefined so the Tooltip component
* controls if/when the bubble appears (on hover, click, focus, etc).
*/
visible?: boolean;
/**
* Where the tooltip should be placed in relation to the element it's attached to.
* See: https://atomiks.github.io/tippyjs/v6/all-props/#placement
*
* **Default is `"auto"`**.
*/
placement?: Extract;
/**
* The content of the tooltip bubble.
*/
text?: React.ReactNode;
/**
* The variant treatment for tooltips
*
* **Default is `"default"`**.
*/
variant?: 'default' | 'inverse';
} & TippyProps & HTMLAttributes;
/**
* `import {Tooltip} from "@chanzuckerberg/eds";`
*
* A floating information box, attached to other components on the page. Used to display option, additional information.
*
* @see https://atomiks.github.io/tippyjs/
* @see https://github.com/atomiks/tippyjs-react
*/
export declare const Tooltip: {
({ childNotInteractive, className, duration, placement, text, variant, ...rest }: TooltipProps): React.JSX.Element;
displayName: string;
};
export {};