export function Tooltip({ children, className, iconName, disableFocusListener, disableHoverListener, disableTouchListener, enterDelay, enterTouchDelay, enterNextDelay, interactive, leaveDelay, leaveTouchDelay, onClose, onOpen, open, ...props }: {
    [x: string]: any;
    children: any;
    className: any;
    iconName?: string | undefined;
    disableFocusListener?: boolean | undefined;
    disableHoverListener?: boolean | undefined;
    disableTouchListener?: boolean | undefined;
    enterDelay?: number | undefined;
    enterTouchDelay?: number | undefined;
    enterNextDelay?: number | undefined;
    interactive?: boolean | undefined;
    leaveDelay?: number | undefined;
    leaveTouchDelay?: number | undefined;
    onClose?: (() => void) | undefined;
    onOpen?: (() => void) | undefined;
    open: any;
}): JSX.Element;
export namespace Tooltip {
    namespace propTypes {
        const children: PropTypes.Requireable<string | number | boolean | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>;
        const className: PropTypes.Requireable<string>;
        const iconName: PropTypes.Requireable<string>;
        const disableFocusListener: PropTypes.Requireable<boolean>;
        const disableHoverListener: PropTypes.Requireable<boolean>;
        const disableTouchListener: PropTypes.Requireable<boolean>;
        const enterDelay: PropTypes.Requireable<number>;
        const enterTouchDelay: PropTypes.Requireable<number>;
        const enterNextDelay: PropTypes.Requireable<number>;
        const interactive: PropTypes.Requireable<boolean>;
        const leaveDelay: PropTypes.Requireable<number>;
        const leaveTouchDelay: PropTypes.Requireable<number>;
        const onClose: PropTypes.Requireable<(...args: any[]) => any>;
        const onOpen: PropTypes.Requireable<(...args: any[]) => any>;
        const open: PropTypes.Requireable<boolean>;
    }
}
declare var _default: import("styled-components").StyledComponent<{
    ({ children, className, iconName, disableFocusListener, disableHoverListener, disableTouchListener, enterDelay, enterTouchDelay, enterNextDelay, interactive, leaveDelay, leaveTouchDelay, onClose, onOpen, open, ...props }: {
        [x: string]: any;
        children: any;
        className: any;
        iconName?: string | undefined;
        disableFocusListener?: boolean | undefined;
        disableHoverListener?: boolean | undefined;
        disableTouchListener?: boolean | undefined;
        enterDelay?: number | undefined;
        enterTouchDelay?: number | undefined;
        enterNextDelay?: number | undefined;
        interactive?: boolean | undefined;
        leaveDelay?: number | undefined;
        leaveTouchDelay?: number | undefined;
        onClose?: (() => void) | undefined;
        onOpen?: (() => void) | undefined;
        open: any;
    }): JSX.Element;
    propTypes: {
        /** Add child components. */
        children: PropTypes.Requireable<string | number | boolean | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>;
        /** Set the class names provided to Tooltip. */
        className: PropTypes.Requireable<string>;
        /** Set the name of the icon to show (same as Icon component uses). */
        iconName: PropTypes.Requireable<string>;
        /** Do not respond to focus events */
        disableFocusListener: PropTypes.Requireable<boolean>;
        /** Do not respond to hover events */
        disableHoverListener: PropTypes.Requireable<boolean>;
        /** Do not respond to long press touch events */
        disableTouchListener: PropTypes.Requireable<boolean>;
        /** The number of milliseconds to wait before showing the tooltip. This prop won't impact the enter touch delay (`enterTouchDelay`). */
        enterDelay: PropTypes.Requireable<number>;
        /** The number of milliseconds a user must touch the element before showing the tooltip. */
        enterTouchDelay: PropTypes.Requireable<number>;
        /** The number of milliseconds to wait before showing the tooltip when one was already recently opened. */
        enterNextDelay: PropTypes.Requireable<number>;
        /** Makes a tooltip interactive, i.e. will not close when the user hovers over the tooltip before the `leaveDelay` is expired. */
        interactive: PropTypes.Requireable<boolean>;
        /** The number of milliseconds to wait before hiding the tooltip. This prop won't impact the leave touch delay (`leaveTouchDelay`). */
        leaveDelay: PropTypes.Requireable<number>;
        /** The number of milliseconds after the user stops touching an element before hiding the tooltip. */
        leaveTouchDelay: PropTypes.Requireable<number>;
        /** Callback fired when the component requests to be closed. */
        onClose: PropTypes.Requireable<(...args: any[]) => any>;
        /** Callback fired when the component requests to be open. */
        onOpen: PropTypes.Requireable<(...args: any[]) => any>;
        /** If `true`, the tooltip is shown. */
        open: PropTypes.Requireable<boolean>;
    };
}, import("styled-components").DefaultTheme, {}, never>;
export default _default;
import PropTypes from "prop-types";
