import { OverlayProps } from '../overlay';
import { TNode, AttachNode } from '../common';
export interface TdPopupProps {
    attach?: AttachNode;
    closeBtn?: boolean | TNode;
    closeOnOverlayClick?: boolean;
    destroyOnClose?: boolean;
    duration?: number;
    overlayProps?: OverlayProps;
    placement?: 'top' | 'left' | 'right' | 'bottom' | 'center';
    preventScrollThrough?: boolean;
    showOverlay?: boolean;
    transitionName?: string;
    visible?: boolean;
    defaultVisible?: boolean;
    modelValue?: boolean;
    zIndex?: number;
    onClose?: (context: {
        e: MouseEvent;
    }) => void;
    onClosed?: () => void;
    onOpen?: () => void;
    onOpened?: () => void;
    onVisibleChange?: (visible: boolean, trigger: PopupSource) => void;
}
export type PopupSource = 'close-btn' | 'overlay' | 'document';
