import { EpPropMergeType } from 'element-plus/es/utils';
import { PlusFormProps } from 'plus-pro-components';
import { FieldValues, PlusColumn } from 'plus-pro-components';
import { PlusStepFromRow } from './src/type';
import { CreateComponentPublicInstance, ExtractPropTypes, PropType, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ComponentOptionsBase, Component, ComputedOptions, MethodOptions } from 'vue';
export type { PlusStepsFormProps } from './src/index.vue';
export * from './src/type';
export declare const PlusStepsForm: {
    new (...args: any[]): CreateComponentPublicInstance<Readonly< ExtractPropTypes<{
        modelValue: {
            type: PropType<number>;
            default: number;
        };
        data: {
            type: PropType< PlusStepFromRow[]>;
            default: () => never[];
        };
        nextText: {
            type: PropType<string>;
            default: undefined;
        };
        submitText: {
            type: PropType<string>;
            default: undefined;
        };
        preText: {
            type: PropType<string>;
            default: undefined;
        };
    }>> & {
        onChange?: ((values: FieldValues, column: PlusColumn) => any) | undefined;
        "onUpdate:modelValue"?: ((active: number) => any) | undefined;
        onSubmit?: ((modelValue: number, values: FieldValues, allValues: FieldValues) => any) | undefined;
        onPre?: ((modelValue: number) => any) | undefined;
        onNext?: ((modelValue: number, values: FieldValues, allValues: FieldValues) => any) | undefined;
    }, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
        pre: (modelValue: number) => void;
        next: (modelValue: number, values: FieldValues, allValues: FieldValues) => void;
        submit: (modelValue: number, values: FieldValues, allValues: FieldValues) => void;
        "update:modelValue": (active: number) => void;
        change: (values: FieldValues, column: PlusColumn) => void;
    }, VNodeProps & AllowedComponentProps & ComponentCustomProps & Readonly< ExtractPropTypes<{
        modelValue: {
            type: PropType<number>;
            default: number;
        };
        data: {
            type: PropType< PlusStepFromRow[]>;
            default: () => never[];
        };
        nextText: {
            type: PropType<string>;
            default: undefined;
        };
        submitText: {
            type: PropType<string>;
            default: undefined;
        };
        preText: {
            type: PropType<string>;
            default: undefined;
        };
    }>> & {
        onChange?: ((values: FieldValues, column: PlusColumn) => any) | undefined;
        "onUpdate:modelValue"?: ((active: number) => any) | undefined;
        onSubmit?: ((modelValue: number, values: FieldValues, allValues: FieldValues) => any) | undefined;
        onPre?: ((modelValue: number) => any) | undefined;
        onNext?: ((modelValue: number, values: FieldValues, allValues: FieldValues) => any) | undefined;
    }, {
        modelValue: number;
        data: PlusStepFromRow[];
        nextText: string;
        submitText: string;
        preText: string;
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly< ExtractPropTypes<{
        modelValue: {
            type: PropType<number>;
            default: number;
        };
        data: {
            type: PropType< PlusStepFromRow[]>;
            default: () => never[];
        };
        nextText: {
            type: PropType<string>;
            default: undefined;
        };
        submitText: {
            type: PropType<string>;
            default: undefined;
        };
        preText: {
            type: PropType<string>;
            default: undefined;
        };
    }>> & {
        onChange?: ((values: FieldValues, column: PlusColumn) => any) | undefined;
        "onUpdate:modelValue"?: ((active: number) => any) | undefined;
        onSubmit?: ((modelValue: number, values: FieldValues, allValues: FieldValues) => any) | undefined;
        onPre?: ((modelValue: number) => any) | undefined;
        onNext?: ((modelValue: number, values: FieldValues, allValues: FieldValues) => any) | undefined;
    }, {}, {}, {}, {}, {
        modelValue: number;
        data: PlusStepFromRow[];
        nextText: string;
        submitText: string;
        preText: string;
    }>;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & ComponentOptionsBase<Readonly< ExtractPropTypes<{
    modelValue: {
        type: PropType<number>;
        default: number;
    };
    data: {
        type: PropType< PlusStepFromRow[]>;
        default: () => never[];
    };
    nextText: {
        type: PropType<string>;
        default: undefined;
    };
    submitText: {
        type: PropType<string>;
        default: undefined;
    };
    preText: {
        type: PropType<string>;
        default: undefined;
    };
}>> & {
    onChange?: ((values: FieldValues, column: PlusColumn) => any) | undefined;
    "onUpdate:modelValue"?: ((active: number) => any) | undefined;
    onSubmit?: ((modelValue: number, values: FieldValues, allValues: FieldValues) => any) | undefined;
    onPre?: ((modelValue: number) => any) | undefined;
    onNext?: ((modelValue: number, values: FieldValues, allValues: FieldValues) => any) | undefined;
}, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    pre: (modelValue: number) => void;
    next: (modelValue: number, values: FieldValues, allValues: FieldValues) => void;
    submit: (modelValue: number, values: FieldValues, allValues: FieldValues) => void;
    "update:modelValue": (active: number) => void;
    change: (values: FieldValues, column: PlusColumn) => void;
}, string, {
    modelValue: number;
    data: PlusStepFromRow[];
    nextText: string;
    submitText: string;
    preText: string;
}, {}, string, {}> & VNodeProps & AllowedComponentProps & ComponentCustomProps & (new () => {
    $slots: Partial<Record<string, (_: {
        title: string;
        form?: PlusFormProps | undefined;
        description?: string | undefined;
        icon?: EpPropMergeType<(new (...args: any[]) => (string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) & {}) | (() => string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) | ((new (...args: any[]) => (string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) & {}) | (() => string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>))[], unknown, unknown> | undefined;
        status?: EpPropMergeType<StringConstructor, "" | "success" | "error" | "wait" | "finish" | "process", unknown> | undefined;
    }) => any>> & {
        icon?(_: {
            icon: EpPropMergeType<(new (...args: any[]) => (string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) & {}) | (() => string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) | ((new (...args: any[]) => (string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) & {}) | (() => string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>))[], unknown, unknown> | undefined;
            title: string;
            description: string | undefined;
        }): any;
        title?(_: {
            icon: EpPropMergeType<(new (...args: any[]) => (string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) & {}) | (() => string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) | ((new (...args: any[]) => (string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) & {}) | (() => string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>))[], unknown, unknown> | undefined;
            title: string;
            description: string | undefined;
        }): any;
        description?(_: {
            icon: EpPropMergeType<(new (...args: any[]) => (string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) & {}) | (() => string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) | ((new (...args: any[]) => (string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>) & {}) | (() => string | Component<any, any, any, ComputedOptions, MethodOptions, {}, any>))[], unknown, unknown> | undefined;
            title: string;
            description: string | undefined;
        }): any;
    };
});
