import Vue from 'vue';
import { ButtonProps } from '../button';
import { PopconfirmConfig, DialogConfig, DrawerConfig } from '../config-provider';
import { ClassName, TNode } from '../common';
export declare type MixinsFooterButton = string | ButtonProps | TNode;
export interface MixinsConfirmBtn {
    theme?: MixinsThemeType;
    className?: ClassName;
    size?: ButtonProps['size'];
    confirmBtn: MixinsFooterButton;
    confirmLoading?: boolean;
    globalConfirm: PopconfirmConfig['confirm'] | DrawerConfig['confirm'] | DialogConfig['confirm'];
    globalConfirmBtnTheme?: PopconfirmConfig['confirmBtnTheme'] | DialogConfig['confirmBtnTheme'];
}
export interface MixinsCancelBtn {
    className?: ClassName;
    size?: ButtonProps['size'];
    cancelBtn: MixinsFooterButton;
    globalCancel: PopconfirmConfig['cancel'] | DrawerConfig['cancel'] | DialogConfig['cancel'];
}
export declare type MixinsThemeType = keyof (PopconfirmConfig['confirmBtnTheme'] & DialogConfig['confirmBtnTheme']);
declare const _default: import("vue/types/vue").ExtendedVue<Vue, unknown, {
    getConfirmBtn(options: MixinsConfirmBtn): any;
    getCancelBtn(options: MixinsCancelBtn): any;
    getButtonByProps(button: string | ButtonProps, params: {
        defaultButtonProps: ButtonProps;
        className?: ClassName;
        confirmLoading?: boolean;
    }): JSX.Element;
    confirmBtnAction(e: MouseEvent): void;
    cancelBtnAction(e: MouseEvent): void;
    getDefaultConfirmBtnProps(options: MixinsConfirmBtn): ButtonProps;
    getDefaultCancelBtnProps(options: MixinsCancelBtn): ButtonProps;
}, unknown, Record<never, any>>;
export default _default;
