import type { ExtractPropTypes } from 'vue';
import type Button from './button.vue';
export declare const buttonTypes: readonly ["default", "border", "flat", "floating", "gradient", "shadow", "relief", "transparent"];
export declare const buttonSizes: readonly ["xl", "large", "default", "small", "mini"];
export declare const buttonProps: {
    readonly active: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly animateInactive: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly animationType: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<StringConstructor, "scale" | "vertical" | "rotate", unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly block: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly color: {
        readonly default: "primary";
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<StringConstructor, "primary" | "success" | "danger" | "warn" | "dark" | "text" | "light" | "secondary" | "facebook" | "twitter" | "youtube" | "pinterest" | "linkedin" | "snapchat" | "whatsapp" | "tumblr" | "reddit" | "spotify" | "amazon" | "medium" | "vimeo" | "skype" | "dribbble" | "slack" | "yahoo" | "twitch" | "discord" | "telegram" | "google-plus" | "messenger", import("../../..").Color>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        readonly __vsPropKey: true;
    };
    readonly icon: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly loading: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly shape: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<StringConstructor, "circle" | "square", unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly size: import("vuesax-alpha/es/utils").VsPropFinalized<readonly [NumberConstructor, StringConstructor], "default" | "small" | "large" | "xl" | "mini", unknown, "default", boolean>;
    readonly ripple: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<StringConstructor, "cut" | "reverse", unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly type: import("vuesax-alpha/es/utils").VsPropFinalized<StringConstructor, "default" | "border" | "flat" | "gradient" | "relief" | "shadow" | "transparent" | "floating", unknown, "default", boolean>;
    readonly upload: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly border: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly flat: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly floating: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly gradient: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly shadow: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly relief: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly transparent: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly square: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly circle: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly to: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<readonly [StringConstructor, ObjectConstructor], unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly href: {
        readonly type: import("vue").PropType<string>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly blank: {
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        /** @deprecated @description use prop `type` instead */
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
};
export declare type ButtonProps = ExtractPropTypes<typeof buttonProps>;
export declare type ButtonInstance = InstanceType<typeof Button>;
