declare const TaButtonModal: import("tav-ui/es/utils/with-install").SFCWithInstall<import("vue").DefineComponent<{
    isInDropDown: {
        type: BooleanConstructor;
        default: boolean;
    };
    prefixCls: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    type: import("vue-types").VueTypeDef<"default" | "link" | "text" | "primary" | "ghost" | "dashed">;
    htmlType: import("vue-types").VueTypeDef<"reset" | "submit" | "button"> & {
        default: "reset" | "submit" | "button";
    };
    shape: {
        type: import("vue").PropType<import("ant-design-vue/lib/button").ButtonShape>;
    };
    size: {
        type: import("vue").PropType<"small" | "middle" | "large" | undefined>;
    };
    loading: {
        type: import("vue").PropType<boolean | {
            delay?: number | undefined;
        }>;
        default: () => boolean | {
            delay?: number | undefined;
        };
    };
    ghost: import("vue-types").VueTypeValidableDef<boolean>;
    block: import("vue-types").VueTypeValidableDef<boolean>;
    danger: import("vue-types").VueTypeValidableDef<boolean>;
    icon: import("vue-types").VueTypeValidableDef<import("../..").VueNode>;
    href: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    target: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    title: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    color: {
        type: StringConstructor;
        validator: (v: any) => boolean;
    };
    disabled: {
        type: BooleanConstructor;
    };
    preIcon: {
        type: StringConstructor;
    };
    preIconColor: {
        type: StringConstructor;
    };
    postIcon: {
        type: StringConstructor;
    };
    postIconColor: {
        type: StringConstructor;
    };
    iconSize: {
        type: NumberConstructor;
        default: number;
    };
    onClick: {
        type: import("vue").PropType<(...args: any[]) => any>;
        default: null;
    };
    permission: {
        type: StringConstructor;
    };
    permissionCode: {
        type: NumberConstructor;
    };
    usePermission: {
        type: import("vue").PropType<{
            code: string;
            ref: any;
            row?: any;
        }>;
    };
    ifShow: {
        type: BooleanConstructor;
        default: boolean;
    };
}, {
    getBindValues: {
        [x: string]: any;
    };
    handleButtonClick: () => void;
    getTooltip: (data: string | Partial<{
        title?: unknown;
        trigger?: unknown;
        visible?: unknown;
        defaultVisible?: unknown;
        placement?: unknown;
        color?: unknown;
        transitionName?: unknown;
        overlayStyle?: unknown;
        overlayClassName?: unknown;
        openClassName?: unknown;
        prefixCls?: unknown;
        mouseEnterDelay?: unknown;
        mouseLeaveDelay?: unknown;
        getPopupContainer?: unknown;
        arrowPointAtCenter?: unknown;
        autoAdjustOverflow?: unknown;
        destroyTooltipOnHide?: unknown;
        align?: unknown;
        builtinPlacements?: unknown;
        children?: unknown;
        onVisibleChange?: unknown;
        'onUpdate:visible'?: unknown;
    } & {
        overlayStyle: import("vue").CSSProperties;
        autoAdjustOverflow: boolean | import("ant-design-vue/lib/tooltip").AdjustOverflow;
        align: import("ant-design-vue/lib/vc-trigger/interface").AlignType;
        builtinPlacements: import("ant-design-vue/lib/vc-trigger/interface").BuildInPlacements;
    } & {
        children?: unknown[] | undefined;
        prefixCls?: string | undefined;
        color?: string | undefined;
        placement?: import("ant-design-vue/lib/tooltip").TooltipPlacement | undefined;
        title?: any;
        trigger?: import("ant-design-vue/lib/tooltip/abstractTooltipProps").TriggerType | import("ant-design-vue/lib/tooltip/abstractTooltipProps").TriggerType[] | undefined;
        visible?: boolean | undefined;
        defaultVisible?: boolean | undefined;
        transitionName?: string | undefined;
        overlayClassName?: string | undefined;
        openClassName?: string | undefined;
        mouseEnterDelay?: number | undefined;
        mouseLeaveDelay?: number | undefined;
        getPopupContainer?: ((triggerNode: HTMLElement) => HTMLElement) | undefined;
        arrowPointAtCenter?: boolean | undefined;
        destroyTooltipOnHide?: boolean | undefined;
        onVisibleChange?: ((vis: boolean) => void) | undefined;
        "onUpdate:visible"?: ((vis: boolean) => void) | undefined;
    }>) => Partial<{
        title?: unknown;
        trigger?: unknown;
        visible?: unknown;
        defaultVisible?: unknown;
        placement?: unknown;
        color?: unknown;
        transitionName?: unknown;
        overlayStyle?: unknown;
        overlayClassName?: unknown;
        openClassName?: unknown;
        prefixCls?: unknown;
        mouseEnterDelay?: unknown;
        mouseLeaveDelay?: unknown;
        getPopupContainer?: unknown;
        arrowPointAtCenter?: unknown;
        autoAdjustOverflow?: unknown;
        destroyTooltipOnHide?: unknown;
        align?: unknown;
        builtinPlacements?: unknown;
        children?: unknown;
        onVisibleChange?: unknown;
        'onUpdate:visible'?: unknown;
    } & {
        overlayStyle: import("vue").CSSProperties;
        autoAdjustOverflow: boolean | import("ant-design-vue/lib/tooltip").AdjustOverflow;
        align: import("ant-design-vue/lib/vc-trigger/interface").AlignType;
        builtinPlacements: import("ant-design-vue/lib/vc-trigger/interface").BuildInPlacements;
    } & {
        children?: unknown[] | undefined;
        prefixCls?: string | undefined;
        color?: string | undefined;
        placement?: import("ant-design-vue/lib/tooltip").TooltipPlacement | undefined;
        title?: any;
        trigger?: import("ant-design-vue/lib/tooltip/abstractTooltipProps").TriggerType | import("ant-design-vue/lib/tooltip/abstractTooltipProps").TriggerType[] | undefined;
        visible?: boolean | undefined;
        defaultVisible?: boolean | undefined;
        transitionName?: string | undefined;
        overlayClassName?: string | undefined;
        openClassName?: string | undefined;
        mouseEnterDelay?: number | undefined;
        mouseLeaveDelay?: number | undefined;
        getPopupContainer?: ((triggerNode: HTMLElement) => HTMLElement) | undefined;
        arrowPointAtCenter?: boolean | undefined;
        destroyTooltipOnHide?: boolean | undefined;
        onVisibleChange?: ((vis: boolean) => void) | undefined;
        "onUpdate:visible"?: ((vis: boolean) => void) | undefined;
    }>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    isInDropDown?: unknown;
    prefixCls?: unknown;
    type?: unknown;
    htmlType?: unknown;
    shape?: unknown;
    size?: unknown;
    loading?: unknown;
    ghost?: unknown;
    block?: unknown;
    danger?: unknown;
    icon?: unknown;
    href?: unknown;
    target?: unknown;
    title?: unknown;
    color?: unknown;
    disabled?: unknown;
    preIcon?: unknown;
    preIconColor?: unknown;
    postIcon?: unknown;
    postIconColor?: unknown;
    iconSize?: unknown;
    onClick?: unknown;
    permission?: unknown;
    permissionCode?: unknown;
    usePermission?: unknown;
    ifShow?: unknown;
} & {
    target: string;
    prefixCls: string;
    htmlType: "reset" | "submit" | "button";
    loading: boolean | {
        delay?: number | undefined;
    };
    href: string;
    title: string;
    disabled: boolean;
    iconSize: number;
    onClick: (...args: any[]) => any;
    ifShow: boolean;
    isInDropDown: boolean;
} & {
    type?: "default" | "link" | "text" | "primary" | "ghost" | "dashed" | undefined;
    size?: "small" | "middle" | "large" | undefined;
    icon?: import("../..").VueNode;
    color?: string | undefined;
    ghost?: boolean | undefined;
    shape?: import("ant-design-vue/lib/button").ButtonShape | undefined;
    block?: boolean | undefined;
    danger?: boolean | undefined;
    preIcon?: string | undefined;
    preIconColor?: string | undefined;
    postIcon?: string | undefined;
    postIconColor?: string | undefined;
    permission?: string | undefined;
    permissionCode?: number | undefined;
    usePermission?: {
        code: string;
        ref: any;
        row?: any;
    } | undefined;
}>, {
    target: string;
    prefixCls: string;
    htmlType: "reset" | "submit" | "button";
    loading: boolean | {
        delay?: number | undefined;
    };
    href: string;
    title: string;
    disabled: boolean;
    iconSize: number;
    onClick: (...args: any[]) => any;
    ifShow: boolean;
    isInDropDown: boolean;
}>>;
export { TaButtonModal };
export default TaButtonModal;
export * from './src/types';
