import React, { ReactNode, CSSProperties } from "react";
import type { AlignType } from "rc-trigger/lib/interface";
import "./style.scss";
import "./self-define.scss";
import { TriggerProps } from "rc-trigger";
import { UseOverflowShowArgs } from "./hooks/useOverflowShow";
type TriggerType = "hover" | "click" | "focus";
export type PlacementType = "left" | "leftTop" | "leftBottom" | "top" | "topLeft" | "topRight" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight";
export interface OverflowShowConf extends Omit<UseOverflowShowArgs, 'children'> {
    /**
     * 是否当children超出容器时，再显示Popover
     * @default true
     */
    isOverflowShow?: boolean;
}
export interface TooltipProps {
    title?: string | ReactNode;
    content?: string | ReactNode;
    overlay?: (() => ReactNode) | ReactNode;
    zIndex?: number;
    placement?: PlacementType;
    children: ReactNode;
    getTooltipContainer?: (node: HTMLElement) => HTMLElement;
    trigger?: TriggerType | TriggerType[];
    defaultVisible?: boolean;
    visible?: boolean;
    onVisibleChange?: (v: boolean) => void;
    mouseEnterDelay?: number;
    mouseLeaveDelay?: number;
    overlayClassName?: string;
    overlayStyle?: CSSProperties;
    overlayInnerStyle?: CSSProperties;
    align?: AlignType;
    hasFooter?: boolean;
    onCancel?: () => void;
    onSubmit?: () => void;
    showArrow?: boolean;
    motion?: TriggerProps["popupMotion"];
    arrowCenter?: boolean;
    destroyTooltipOnHide?: boolean;
    /** 是否在children超出容器时，显示省略号和Popover的配置 */
    overflowShowConf?: OverflowShowConf;
    /**
     * 是否在Popover提示内容中显示children
     * @default false
     */
    isShowChild?: boolean;
}
declare function Popover(props: TooltipProps): React.JSX.Element;
export default Popover;
