declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        default?: () => any;
        icon?: () => any;
        loading?: () => any;
    }> & {
        default?: () => any;
        icon?: () => any;
        loading?: () => any;
    };
    refs: {
        submit: HTMLButtonElement;
    };
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    inherit: import('vue').PropType<boolean>;
    size: import('vue').PropType<"default" | "small" | "large">;
    locale: import('vue').PropType<Partial<{
        submit: string;
        reset: string;
        notNullable: string;
        validateFail: string;
    }>>;
    type: import('vue').PropType<"default" | "success" | "error" | "warning" | "info" | "primary">;
    label: import('vue').PropType<string>;
    dashed: import('vue').PropType<boolean>;
    text: import('vue').PropType<boolean>;
    simple: import('vue').PropType<boolean>;
    ghost: import('vue').PropType<boolean>;
    disabled: import('vue').PropType<boolean>;
    circle: import('vue').PropType<boolean>;
    loadingIcon: import('vue').PropType<any>;
    loadingEffect: import('vue').PropType<string>;
    icon: import('vue').PropType<any>;
    color: import('vue').PropType<string>;
    buttonType: import('vue').PropType<"button" | "reset" | "submit">;
    block: import('vue').PropType<boolean>;
    tag: import('vue').PropType<string>;
    onBeforeSubmit: import('vue').PropType<() => unknown>;
    onSubmit: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onError: import('vue').PropType<((errors: string[]) => void) | ((errors: string[]) => void)[]>;
}>, {
    submit: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
    isNative: import('vue').ComputedRef<string | undefined>;
    isLoading: import('vue').ComputedRef<boolean>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    inherit: import('vue').PropType<boolean>;
    size: import('vue').PropType<"default" | "small" | "large">;
    locale: import('vue').PropType<Partial<{
        submit: string;
        reset: string;
        notNullable: string;
        validateFail: string;
    }>>;
    type: import('vue').PropType<"default" | "success" | "error" | "warning" | "info" | "primary">;
    label: import('vue').PropType<string>;
    dashed: import('vue').PropType<boolean>;
    text: import('vue').PropType<boolean>;
    simple: import('vue').PropType<boolean>;
    ghost: import('vue').PropType<boolean>;
    disabled: import('vue').PropType<boolean>;
    circle: import('vue').PropType<boolean>;
    loadingIcon: import('vue').PropType<any>;
    loadingEffect: import('vue').PropType<string>;
    icon: import('vue').PropType<any>;
    color: import('vue').PropType<string>;
    buttonType: import('vue').PropType<"button" | "reset" | "submit">;
    block: import('vue').PropType<boolean>;
    tag: import('vue').PropType<string>;
    onBeforeSubmit: import('vue').PropType<() => unknown>;
    onSubmit: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onError: import('vue').PropType<((errors: string[]) => void) | ((errors: string[]) => void)[]>;
}>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
    submit: HTMLButtonElement;
}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
