import { default as React, Dispatch, ReactNode, SetStateAction } from 'react';
import { TooltipProps as MTooltipProps } from '@mui/material/Tooltip';
export interface TooltipProps extends MTooltipProps {
    /** Tooltip의 제목을 설정합니다. */
    title: string | ReactNode;
    /** Tooltip에 화살표를 표시할지 여부를 설정합니다. @default false */
    arrow?: boolean;
    /** Tooltip의 위치를 설정합니다. @default bottom */
    placement?: "bottom-end" | "bottom-start" | "bottom" | "left-end" | "left-start" | "left" | "right-end" | "right-start" | "right" | "top-end" | "top-start" | "top";
    /** 마우스 커서를 따라다니는지 여부를 설정합니다. @default false */
    followCursor?: boolean;
    /** Tooltip이 열려 있는지 여부를 설정합니다. @default false */
    open?: boolean;
    /** Tooltip의 열림 상태를 제어하는 함수입니다. */
    setOpen?: Dispatch<SetStateAction<boolean>>;
    /** 닫기 버튼을 표시할지 여부를 설정합니다. @default false */
    closeButton?: boolean;
    componentsProps?: {
        tooltip?: {
            sx?: Record<string, any>;
            className?: string;
            style?: React.CSSProperties;
        };
        arrow?: {
            sx?: Record<string, any>;
            className?: string;
            style?: React.CSSProperties;
        };
    };
    style?: {
        [key: string]: string | number | undefined;
    };
    children: React.ReactElement<unknown, any>;
    className?: string;
}
declare const Tooltip: ({ className, title, children, arrow, placement, followCursor, open, setOpen, closeButton, style, componentsProps, ...props }: TooltipProps) => import("react/jsx-runtime").JSX.Element;
export default Tooltip;
