import type { Type, Size } from './interface';
import type { DefineComponent, PropType, ComputedRef, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps } from 'vue';
declare const _sfc_main: DefineComponent<{
    readonly type: {
        readonly type: PropType<Type>;
        readonly default: () => Type;
        readonly validator: (v: Type) => boolean;
    };
    readonly round: BooleanConstructor;
    readonly disabled: BooleanConstructor;
    readonly icon: StringConstructor;
    readonly size: {
        readonly type: PropType<Size>;
        readonly validator: (v: Size) => boolean;
    };
    readonly square: BooleanConstructor;
    readonly simple: BooleanConstructor;
    readonly loading: BooleanConstructor;
    readonly block: BooleanConstructor;
}, {
    prop: Readonly<{
        [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | ((...args: unknown[]) => any) | undefined;
        type: Type;
        round: boolean;
        disabled: boolean;
        icon: string | undefined;
        size: Size | undefined;
        square: boolean;
        simple: boolean;
        loading: boolean;
        block: boolean;
    }>;
    color: ComputedRef<string>;
    classList: ComputedRef<(string | object)[]>;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<{
    readonly type?: unknown;
    readonly round?: unknown;
    readonly disabled?: unknown;
    readonly icon?: unknown;
    readonly size?: unknown;
    readonly square?: unknown;
    readonly simple?: unknown;
    readonly loading?: unknown;
    readonly block?: unknown;
} & {
    type: Type;
    round: boolean;
    disabled: boolean;
    square: boolean;
    simple: boolean;
    loading: boolean;
    block: boolean;
} & {
    icon?: string | undefined;
    size?: Size | undefined;
}>, {
    type: Type;
    round: boolean;
    disabled: boolean;
    square: boolean;
    simple: boolean;
    loading: boolean;
    block: boolean;
}>;
export default _sfc_main;
