import type { CSSProperties, ExtractPropTypes, PropType } from 'vue';
import type { VueNode, getContainerFunc } from '@antdv/ui/es/types';
import type { LegacyButtonType } from '../../button';
export declare function modalProps(): {
    prefixCls: StringConstructor;
    /** @deprecated Please use `open` instead. */
    visible: {
        type: BooleanConstructor;
        default: any;
    };
    open: {
        type: BooleanConstructor;
        default: any;
    };
    confirmLoading: {
        type: BooleanConstructor;
        default: any;
    };
    title: any;
    closable: {
        type: BooleanConstructor;
        default: any;
    };
    closeIcon: any;
    onOk: PropType<(e: MouseEvent) => void>;
    onCancel: PropType<(e: MouseEvent) => void>;
    'onUpdate:visible': PropType<(visible: boolean) => void>;
    'onUpdate:open': PropType<(open: boolean) => void>;
    onChange: PropType<(open: boolean) => void>;
    afterClose: PropType<() => void>;
    centered: {
        type: BooleanConstructor;
        default: any;
    };
    width: (NumberConstructor | StringConstructor)[];
    footer: any;
    okText: any;
    okType: PropType<LegacyButtonType>;
    cancelText: any;
    icon: any;
    maskClosable: {
        type: BooleanConstructor;
        default: any;
    };
    forceRender: {
        type: BooleanConstructor;
        default: any;
    };
    okButtonProps: {
        type: PropType<Partial<ExtractPropTypes<{
            prefixCls: StringConstructor;
            type: PropType<import("../../button").ButtonType>;
            htmlType: {
                type: PropType<import("../../button").ButtonHTMLType>;
                default: string;
            };
            shape: {
                type: PropType<import("../../button").ButtonShape>;
            };
            size: {
                type: PropType<import("@antdv/ui/es/types").SizeType>;
            };
            loading: {
                type: PropType<boolean | {
                    delay?: number;
                }>;
                default: () => boolean | {
                    delay?: number;
                };
            };
            disabled: {
                type: BooleanConstructor;
                default: any;
            };
            ghost: {
                type: BooleanConstructor;
                default: any;
            };
            block: {
                type: BooleanConstructor;
                default: any;
            };
            danger: {
                type: BooleanConstructor;
                default: any;
            };
            success: {
                type: BooleanConstructor;
                default: any;
            };
            warning: {
                type: BooleanConstructor;
                default: any;
            };
            icon: any;
            href: StringConstructor;
            target: StringConstructor;
            title: StringConstructor;
            onClick: {
                type: PropType<import("@antdv/ui/es/types").MouseEventHandler | import("@antdv/ui/es/types").MouseEventHandler[]>;
            };
            onMousedown: {
                type: PropType<import("@antdv/ui/es/types").MouseEventHandler | import("@antdv/ui/es/types").MouseEventHandler[]>;
            };
        }>>>;
        default: Partial<ExtractPropTypes<{
            prefixCls: StringConstructor;
            type: PropType<import("../../button").ButtonType>;
            htmlType: {
                type: PropType<import("../../button").ButtonHTMLType>;
                default: string;
            };
            shape: {
                type: PropType<import("../../button").ButtonShape>;
            };
            size: {
                type: PropType<import("@antdv/ui/es/types").SizeType>;
            };
            loading: {
                type: PropType<boolean | {
                    delay?: number;
                }>;
                default: () => boolean | {
                    delay?: number;
                };
            };
            disabled: {
                type: BooleanConstructor;
                default: any;
            };
            ghost: {
                type: BooleanConstructor;
                default: any;
            };
            block: {
                type: BooleanConstructor;
                default: any;
            };
            danger: {
                type: BooleanConstructor;
                default: any;
            };
            success: {
                type: BooleanConstructor;
                default: any;
            };
            warning: {
                type: BooleanConstructor;
                default: any;
            };
            icon: any;
            href: StringConstructor;
            target: StringConstructor;
            title: StringConstructor;
            onClick: {
                type: PropType<import("@antdv/ui/es/types").MouseEventHandler | import("@antdv/ui/es/types").MouseEventHandler[]>;
            };
            onMousedown: {
                type: PropType<import("@antdv/ui/es/types").MouseEventHandler | import("@antdv/ui/es/types").MouseEventHandler[]>;
            };
        }>>;
    };
    cancelButtonProps: {
        type: PropType<Partial<ExtractPropTypes<{
            prefixCls: StringConstructor;
            type: PropType<import("../../button").ButtonType>;
            htmlType: {
                type: PropType<import("../../button").ButtonHTMLType>;
                default: string;
            };
            shape: {
                type: PropType<import("../../button").ButtonShape>;
            };
            size: {
                type: PropType<import("@antdv/ui/es/types").SizeType>;
            };
            loading: {
                type: PropType<boolean | {
                    delay?: number;
                }>;
                default: () => boolean | {
                    delay?: number;
                };
            };
            disabled: {
                type: BooleanConstructor;
                default: any;
            };
            ghost: {
                type: BooleanConstructor;
                default: any;
            };
            block: {
                type: BooleanConstructor;
                default: any;
            };
            danger: {
                type: BooleanConstructor;
                default: any;
            };
            success: {
                type: BooleanConstructor;
                default: any;
            };
            warning: {
                type: BooleanConstructor;
                default: any;
            };
            icon: any;
            href: StringConstructor;
            target: StringConstructor;
            title: StringConstructor;
            onClick: {
                type: PropType<import("@antdv/ui/es/types").MouseEventHandler | import("@antdv/ui/es/types").MouseEventHandler[]>;
            };
            onMousedown: {
                type: PropType<import("@antdv/ui/es/types").MouseEventHandler | import("@antdv/ui/es/types").MouseEventHandler[]>;
            };
        }>>>;
        default: Partial<ExtractPropTypes<{
            prefixCls: StringConstructor;
            type: PropType<import("../../button").ButtonType>;
            htmlType: {
                type: PropType<import("../../button").ButtonHTMLType>;
                default: string;
            };
            shape: {
                type: PropType<import("../../button").ButtonShape>;
            };
            size: {
                type: PropType<import("@antdv/ui/es/types").SizeType>;
            };
            loading: {
                type: PropType<boolean | {
                    delay?: number;
                }>;
                default: () => boolean | {
                    delay?: number;
                };
            };
            disabled: {
                type: BooleanConstructor;
                default: any;
            };
            ghost: {
                type: BooleanConstructor;
                default: any;
            };
            block: {
                type: BooleanConstructor;
                default: any;
            };
            danger: {
                type: BooleanConstructor;
                default: any;
            };
            success: {
                type: BooleanConstructor;
                default: any;
            };
            warning: {
                type: BooleanConstructor;
                default: any;
            };
            icon: any;
            href: StringConstructor;
            target: StringConstructor;
            title: StringConstructor;
            onClick: {
                type: PropType<import("@antdv/ui/es/types").MouseEventHandler | import("@antdv/ui/es/types").MouseEventHandler[]>;
            };
            onMousedown: {
                type: PropType<import("@antdv/ui/es/types").MouseEventHandler | import("@antdv/ui/es/types").MouseEventHandler[]>;
            };
        }>>;
    };
    destroyOnClose: {
        type: BooleanConstructor;
        default: any;
    };
    wrapClassName: StringConstructor;
    maskTransitionName: StringConstructor;
    transitionName: StringConstructor;
    getContainer: {
        type: PropType<string | false | HTMLElement | getContainerFunc>;
        default: any;
    };
    zIndex: NumberConstructor;
    bodyStyle: {
        type: PropType<CSSProperties>;
        default: CSSProperties;
    };
    maskStyle: {
        type: PropType<CSSProperties>;
        default: CSSProperties;
    };
    mask: {
        type: BooleanConstructor;
        default: any;
    };
    keyboard: {
        type: BooleanConstructor;
        default: any;
    };
    wrapProps: ObjectConstructor;
    focusTriggerAfterClose: {
        type: BooleanConstructor;
        default: any;
    };
    modalRender: PropType<(arg: {
        originVNode: VueNode;
    }) => VueNode>;
    mousePosition: {
        type: PropType<{
            x: number;
            y: number;
        }>;
        default: {
            x: number;
            y: number;
        };
    };
};
export type ModalProps = Partial<ExtractPropTypes<ReturnType<typeof modalProps>>>;
