import { VueNode } from '../_util/type';
import { Status, StepIconRender } from './interface';
import { DefineComponent, ExtractPropTypes, PropType, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { VueTypeValidableDef, VueTypeDef, VueTypeLooseShape } from 'vue-types';
declare const _default: DefineComponent<ExtractPropTypes<{
    type: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    prefixCls: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    iconPrefix: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    direction: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    labelPlacement: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    status: {
        type: PropType<Status>;
        default: Status;
    };
    size: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    progressDot: VueTypeDef<any> & {
        default: any;
    };
    initial: VueTypeValidableDef<number> & {
        default: number;
    } & {
        default: number;
    };
    current: VueTypeValidableDef<number> & {
        default: number;
    } & {
        default: number;
    };
    items: VueTypeValidableDef<unknown[]> & {
        default: () => unknown[];
    } & {
        default: () => unknown[];
    };
    icons: VueTypeLooseShape<{
        finish: any;
        error: any;
    }>;
    stepIcon: {
        type: PropType<StepIconRender>;
        default: StepIconRender;
    };
    isInline: VueTypeValidableDef<boolean>;
    itemRender: {
        type: PropType<(item: Record<string, any>, stepItem: VueNode) => VueNode>;
        default: (item: Record<string, any>, stepItem: VueNode) => VueNode;
    };
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "change"[], "change", PublicProps, Readonly< ExtractPropTypes<{
    type: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    prefixCls: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    iconPrefix: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    direction: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    labelPlacement: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    status: {
        type: PropType<Status>;
        default: Status;
    };
    size: VueTypeValidableDef<string> & {
        default: string;
    } & {
        default: string;
    };
    progressDot: VueTypeDef<any> & {
        default: any;
    };
    initial: VueTypeValidableDef<number> & {
        default: number;
    } & {
        default: number;
    };
    current: VueTypeValidableDef<number> & {
        default: number;
    } & {
        default: number;
    };
    items: VueTypeValidableDef<unknown[]> & {
        default: () => unknown[];
    } & {
        default: () => unknown[];
    };
    icons: VueTypeLooseShape<{
        finish: any;
        error: any;
    }>;
    stepIcon: {
        type: PropType<StepIconRender>;
        default: StepIconRender;
    };
    isInline: VueTypeValidableDef<boolean>;
    itemRender: {
        type: PropType<(item: Record<string, any>, stepItem: VueNode) => VueNode>;
        default: (item: Record<string, any>, stepItem: VueNode) => VueNode;
    };
}>> & Readonly<{
    onChange?: ((...args: any[]) => any) | undefined;
}>, {
    size: string;
    type: string;
    initial: number;
    direction: string;
    current: number;
    prefixCls: string;
    status: Status;
    items: unknown[];
    itemRender: (item: Record<string, any>, stepItem: VueNode) => VueNode;
    iconPrefix: string;
    progressDot: any;
    stepIcon: StepIconRender;
    labelPlacement: string;
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
export default _default;
