import { Step } from './types';
export declare const VaStepper: {
    new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
        modelValue: {
            type: NumberConstructor;
            default: number;
        };
        steps: {
            type: import("vue").PropType<Step[]>;
            default: () => never[];
            required: true;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        vertical: {
            type: BooleanConstructor;
            default: boolean;
        };
        navigationDisabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        controlsHidden: {
            type: BooleanConstructor;
            default: boolean;
        };
        nextDisabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        nextDisabledOnError: {
            type: BooleanConstructor;
            default: boolean;
        };
        finishButtonHidden: {
            type: BooleanConstructor;
            default: boolean;
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        linear: {
            type: BooleanConstructor;
            default: boolean;
        };
        finishStep: {
            type: import("vue").PropType<Step>;
        };
        stateful: {
            type: import("vue").PropType<boolean>;
            default: boolean;
        };
    }>> & {
        "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
        onFinish?: ((...args: any[]) => any) | undefined;
        "onUpdate:steps"?: ((...args: any[]) => any) | undefined;
    }, {
        modelValue: import("vue").Ref<number>;
        focusedStep: import("vue").Ref<{
            trigger: boolean;
            stepIndex: number;
        }>;
        getIterableSlotData: (step: Step, index: number) => {
            focus: import("vue").Ref<{
                trigger: boolean;
                stepIndex: number;
            }>;
            isActive: boolean;
            isCompleted: boolean;
            isLastStep: boolean;
            isNextStepDisabled: boolean;
            isPrevStepDisabled: boolean;
            index: number;
            step: Step;
            hasError: boolean;
            setStep: (index: number) => void;
            nextStep: (stepsToSkip?: number | undefined) => void;
            prevStep: (stepsToSkip?: number | undefined) => void;
            finish: () => void;
        };
        stepControls: import("./types").StepControls;
        nextStep: (stepsToSkip?: number) => void;
        prevStep: (stepsToSkip?: number) => void;
        setStep: (index: number) => Promise<void>;
        setFocus: (direction: "next" | "prev") => void;
        completeStep: (shouldCompleteStep?: boolean | undefined) => void;
        setError: (shouldSetError?: boolean | undefined) => void;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        "update:modelValue": (...args: any[]) => void;
        finish: (...args: any[]) => void;
        "update:steps": (...args: any[]) => void;
    }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
        modelValue: {
            type: NumberConstructor;
            default: number;
        };
        steps: {
            type: import("vue").PropType<Step[]>;
            default: () => never[];
            required: true;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        vertical: {
            type: BooleanConstructor;
            default: boolean;
        };
        navigationDisabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        controlsHidden: {
            type: BooleanConstructor;
            default: boolean;
        };
        nextDisabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        nextDisabledOnError: {
            type: BooleanConstructor;
            default: boolean;
        };
        finishButtonHidden: {
            type: BooleanConstructor;
            default: boolean;
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        linear: {
            type: BooleanConstructor;
            default: boolean;
        };
        finishStep: {
            type: import("vue").PropType<Step>;
        };
        stateful: {
            type: import("vue").PropType<boolean>;
            default: boolean;
        };
    }>> & {
        "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
        onFinish?: ((...args: any[]) => any) | undefined;
        "onUpdate:steps"?: ((...args: any[]) => any) | undefined;
    }, {
        modelValue: number;
        stateful: boolean;
        color: string;
        vertical: boolean;
        ariaLabel: import("../../composables").TranslationProp;
        linear: boolean;
        steps: Step[];
        navigationDisabled: boolean;
        controlsHidden: boolean;
        nextDisabled: boolean;
        nextDisabledOnError: boolean;
        finishButtonHidden: boolean;
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        modelValue: {
            type: NumberConstructor;
            default: number;
        };
        steps: {
            type: import("vue").PropType<Step[]>;
            default: () => never[];
            required: true;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        vertical: {
            type: BooleanConstructor;
            default: boolean;
        };
        navigationDisabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        controlsHidden: {
            type: BooleanConstructor;
            default: boolean;
        };
        nextDisabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        nextDisabledOnError: {
            type: BooleanConstructor;
            default: boolean;
        };
        finishButtonHidden: {
            type: BooleanConstructor;
            default: boolean;
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        linear: {
            type: BooleanConstructor;
            default: boolean;
        };
        finishStep: {
            type: import("vue").PropType<Step>;
        };
        stateful: {
            type: import("vue").PropType<boolean>;
            default: boolean;
        };
    }>> & {
        "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
        onFinish?: ((...args: any[]) => any) | undefined;
        "onUpdate:steps"?: ((...args: any[]) => any) | undefined;
    }, {
        modelValue: import("vue").Ref<number>;
        focusedStep: import("vue").Ref<{
            trigger: boolean;
            stepIndex: number;
        }>;
        getIterableSlotData: (step: Step, index: number) => {
            focus: import("vue").Ref<{
                trigger: boolean;
                stepIndex: number;
            }>;
            isActive: boolean;
            isCompleted: boolean;
            isLastStep: boolean;
            isNextStepDisabled: boolean;
            isPrevStepDisabled: boolean;
            index: number;
            step: Step;
            hasError: boolean;
            setStep: (index: number) => void;
            nextStep: (stepsToSkip?: number | undefined) => void;
            prevStep: (stepsToSkip?: number | undefined) => void;
            finish: () => void;
        };
        stepControls: import("./types").StepControls;
        nextStep: (stepsToSkip?: number) => void;
        prevStep: (stepsToSkip?: number) => void;
        setStep: (index: number) => Promise<void>;
        setFocus: (direction: "next" | "prev") => void;
        completeStep: (shouldCompleteStep?: boolean | undefined) => void;
        setError: (shouldSetError?: boolean | undefined) => void;
    }, {}, {}, {}, {
        modelValue: number;
        stateful: boolean;
        color: string;
        vertical: boolean;
        ariaLabel: import("../../composables").TranslationProp;
        linear: boolean;
        steps: Step[];
        navigationDisabled: boolean;
        controlsHidden: boolean;
        nextDisabled: boolean;
        nextDisabledOnError: boolean;
        finishButtonHidden: boolean;
    }>;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    modelValue: {
        type: NumberConstructor;
        default: number;
    };
    steps: {
        type: import("vue").PropType<Step[]>;
        default: () => never[];
        required: true;
    };
    color: {
        type: StringConstructor;
        default: string;
    };
    vertical: {
        type: BooleanConstructor;
        default: boolean;
    };
    navigationDisabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    controlsHidden: {
        type: BooleanConstructor;
        default: boolean;
    };
    nextDisabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    nextDisabledOnError: {
        type: BooleanConstructor;
        default: boolean;
    };
    finishButtonHidden: {
        type: BooleanConstructor;
        default: boolean;
    };
    ariaLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    linear: {
        type: BooleanConstructor;
        default: boolean;
    };
    finishStep: {
        type: import("vue").PropType<Step>;
    };
    stateful: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
}>> & {
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
    onFinish?: ((...args: any[]) => any) | undefined;
    "onUpdate:steps"?: ((...args: any[]) => any) | undefined;
}, {
    modelValue: import("vue").Ref<number>;
    focusedStep: import("vue").Ref<{
        trigger: boolean;
        stepIndex: number;
    }>;
    getIterableSlotData: (step: Step, index: number) => {
        focus: import("vue").Ref<{
            trigger: boolean;
            stepIndex: number;
        }>;
        isActive: boolean;
        isCompleted: boolean;
        isLastStep: boolean;
        isNextStepDisabled: boolean;
        isPrevStepDisabled: boolean;
        index: number;
        step: Step;
        hasError: boolean;
        setStep: (index: number) => void;
        nextStep: (stepsToSkip?: number | undefined) => void;
        prevStep: (stepsToSkip?: number | undefined) => void;
        finish: () => void;
    };
    stepControls: import("./types").StepControls;
    nextStep: (stepsToSkip?: number) => void;
    prevStep: (stepsToSkip?: number) => void;
    setStep: (index: number) => Promise<void>;
    setFocus: (direction: "next" | "prev") => void;
    completeStep: (shouldCompleteStep?: boolean | undefined) => void;
    setError: (shouldSetError?: boolean | undefined) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (...args: any[]) => void;
    finish: (...args: any[]) => void;
    "update:steps": (...args: any[]) => void;
}, string, {
    modelValue: number;
    stateful: boolean;
    color: string;
    vertical: boolean;
    ariaLabel: import("../../composables").TranslationProp;
    linear: boolean;
    steps: Step[];
    navigationDisabled: boolean;
    controlsHidden: boolean;
    nextDisabled: boolean;
    nextDisabledOnError: boolean;
    finishButtonHidden: boolean;
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
    $slots: Partial<Record<`step-button-${number}`, (_: {
        focus: import("vue").Ref<{
            trigger: boolean;
            stepIndex: number;
        }>;
        isActive: boolean;
        isCompleted: boolean;
        isLastStep: boolean;
        isNextStepDisabled: boolean;
        isPrevStepDisabled: boolean;
        index: number;
        step: Step;
        hasError: boolean;
        setStep: (index: number) => void;
        nextStep: (stepsToSkip?: number | undefined) => void;
        prevStep: (stepsToSkip?: number | undefined) => void;
        finish: () => void;
    }) => any>> & Partial<Record<NonNullable<`step-content-${number}` | "step-content-finish">, (_: {
        focus: import("vue").Ref<{
            trigger: boolean;
            stepIndex: number;
        }>;
        isActive: boolean;
        isCompleted: boolean;
        isLastStep: boolean;
        isNextStepDisabled: boolean;
        isPrevStepDisabled: boolean;
        index: number;
        step: Step;
        hasError: boolean;
        setStep: (index: number) => void;
        nextStep: (stepsToSkip?: number | undefined) => void;
        prevStep: (stepsToSkip?: number | undefined) => void;
        finish: () => void;
    }) => any>> & {
        divider?(_: {
            focus: import("vue").Ref<{
                trigger: boolean;
                stepIndex: number;
            }>;
            isActive: boolean;
            isCompleted: boolean;
            isLastStep: boolean;
            isNextStepDisabled: boolean;
            isPrevStepDisabled: boolean;
            index: number;
            step: Step;
            hasError: boolean;
            setStep: (index: number) => void;
            nextStep: (stepsToSkip?: number | undefined) => void;
            prevStep: (stepsToSkip?: number | undefined) => void;
            finish: () => void;
        }): any;
        controls?(_: {
            focus: import("vue").Ref<{
                trigger: boolean;
                stepIndex: number;
            }>;
            isActive: boolean;
            isCompleted: boolean;
            isLastStep: boolean;
            isNextStepDisabled: boolean;
            isPrevStepDisabled: boolean;
            index: number;
            step: Step;
            hasError: boolean;
            setStep: (index: number) => void;
            nextStep: (stepsToSkip?: number | undefined) => void;
            prevStep: (stepsToSkip?: number | undefined) => void;
            finish: () => void;
        }): any;
    };
});
export declare const defineVaStepperSteps: (steps: Step[]) => Step[];
