import { Sizes } from '@/models/enums';
import { ITButtonOptions } from '@/types/components/components';
declare const _sfc_main: import("vue").DefineComponent<{
    size: {
        type: StringConstructor;
        default: Sizes;
        validator: (value: Sizes) => boolean;
    };
    iconAfter: {
        type: BooleanConstructor;
    };
    disabled: {
        type: BooleanConstructor;
    };
    outlined: {
        type: BooleanConstructor;
    };
    round: {
        type: BooleanConstructor;
    };
    pulse: {
        type: BooleanConstructor;
    };
    loading: {
        type: BooleanConstructor;
    };
    nuxt: {
        type: BooleanConstructor;
    };
    routerLink: {
        type: BooleanConstructor;
    };
    classes?: {
        type: import("vue").PropType<import("../../types/variant").CSSRawClassesList<ITButtonOptions>>;
        default: undefined;
    } | undefined;
    base?: {
        type: import("vue").PropType<import("../../types/variant").CSSRawClassesList<ITButtonOptions>>;
        default: undefined;
    } | undefined;
    variants?: {
        type: import("vue").PropType<import("../../types/variant").CSSRawClassesList<ITButtonOptions>>;
        default: undefined;
    } | undefined;
    variant?: {
        type: import("vue").PropType<string | string[] | undefined>;
        default?: string | undefined;
    } | undefined;
}, {
    variant: import("vue").ComputedRef<{
        transitions?: Record<string, Record<string, string>> | undefined;
    } & import("../../types/variant").CSSRawClassesList<ITButtonOptions>>;
    component: import("vue").ComputedRef<string | import("vue").ConcreteComponent<{}, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    size: {
        type: StringConstructor;
        default: Sizes;
        validator: (value: Sizes) => boolean;
    };
    iconAfter: {
        type: BooleanConstructor;
    };
    disabled: {
        type: BooleanConstructor;
    };
    outlined: {
        type: BooleanConstructor;
    };
    round: {
        type: BooleanConstructor;
    };
    pulse: {
        type: BooleanConstructor;
    };
    loading: {
        type: BooleanConstructor;
    };
    nuxt: {
        type: BooleanConstructor;
    };
    routerLink: {
        type: BooleanConstructor;
    };
    classes?: {
        type: import("vue").PropType<import("../../types/variant").CSSRawClassesList<ITButtonOptions>>;
        default: undefined;
    } | undefined;
    base?: {
        type: import("vue").PropType<import("../../types/variant").CSSRawClassesList<ITButtonOptions>>;
        default: undefined;
    } | undefined;
    variants?: {
        type: import("vue").PropType<import("../../types/variant").CSSRawClassesList<ITButtonOptions>>;
        default: undefined;
    } | undefined;
    variant?: {
        type: import("vue").PropType<string | string[] | undefined>;
        default?: string | undefined;
    } | undefined;
}>>, {
    size: string;
    iconAfter: boolean;
    disabled: boolean;
    outlined: boolean;
    round: boolean;
    pulse: boolean;
    loading: boolean;
    nuxt: boolean;
    routerLink: boolean;
}>;
export default _sfc_main;
