import { PropType, BootstrapColor, BootstrapBasicSize } from '../../../types';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        waitingLabel?(_: {}): any;
        label?(_: {}): any;
    };
    refs: {};
    rootEl: HTMLButtonElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    size: {
        type: PropType<BootstrapBasicSize>;
        default: string;
    };
    variant: {
        type: PropType<BootstrapColor>;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    extraPadding: {
        type: BooleanConstructor;
        default: boolean;
    };
    onClick: {
        type: FunctionConstructor;
        default: () => Promise<unknown>;
    };
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    "update:waiting": (...args: any[]) => void;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    size: {
        type: PropType<BootstrapBasicSize>;
        default: string;
    };
    variant: {
        type: PropType<BootstrapColor>;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    extraPadding: {
        type: BooleanConstructor;
        default: boolean;
    };
    onClick: {
        type: FunctionConstructor;
        default: () => Promise<unknown>;
    };
}>> & Readonly<{
    "onUpdate:waiting"?: ((...args: any[]) => any) | undefined;
}>, {
    onClick: Function;
    variant: "primary" | "secondary" | "success" | "danger" | "warning" | "info" | "light" | "dark" | "accent" | "brand-dark" | "theme" | "theme-danger" | "ballot" | "primary-10" | "primary-30" | "primary-50" | "primary-70" | "primary-90" | "secondary-10" | "secondary-30" | "secondary-50" | "secondary-70" | "secondary-90";
    size: "sm" | "md" | "lg";
    disabled: boolean;
    extraPadding: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLButtonElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
//# sourceMappingURL=AVAsyncButton.vue.d.ts.map