import type { FunctionComponent, ReactNode, Ref } from 'react';
import type { BaseProps, ForwardProps, TestIdProp } from '../../types';
import type { Delay, PopoverProps } from '../Popover';
export interface TooltipProps extends BaseProps, TestIdProp {
    /** Text content for the tooltip. */
    children: ReactNode;
    /** Element to serve as the tooltip's target. */
    target: Element | null;
    /**
     * Delay showing the tooltip on mouseenter.
     * @default 'short'
     */
    showDelay?: Delay;
    /**
     * Delay hiding the tooltip on mouseleave.
     * @default 'long'
     */
    hideDelay?: Delay;
    /**
     * If true, the Tooltip will render outside of the current DOM hierarchy in a [portal](https://reactjs.org/docs/portals.html).
     * @default true
     */
    portal?: PopoverProps['portal'];
    /**
     * If true, the Tooltip will automatically apply an aria-describedby attribute to its target.
     * @default true
     */
    describeTarget?: boolean;
    /**
     * Sets the placement of the tooltip relative to the target.
     * @default 'bottom'
     */
    placement?: PopoverProps['placement'];
    /**
     * Conditionally renders a tooltip only if the associated element's (or its descendants) text content is truncated.
     * To work, the associated element must be be displayed as a CSS "block box" i.e. block, inline-block, etc...
     * @default false
     */
    smart?: boolean;
    /**
     * The group that the Popover belongs to. Popovers in the same group will be closed when others open.
     * @default 'tooltip'
     */
    groupId?: PopoverProps['groupId'];
    ref?: Ref<HTMLDivElement>;
}
export declare const StyledTooltip: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
declare const _default: FunctionComponent<TooltipProps & ForwardProps> & {
    getTestIds: (testIdProp?: string | null | undefined) => import("../../types").TestIdsRecord<readonly []>;
};
export default _default;
//# sourceMappingURL=Tooltip.d.ts.map