import { Signal } from '@angular/core';
import { type SignalFormContainer } from '../../../../models/signal-form.model';
import * as i0 from "@angular/core";
export declare enum StepStatus {
    Complete = "complete",
    Error = "error",
    InComplete = "incomplete"
}
export declare class SignalFormStepperNavComponent<TModel> {
    hasSaved: import("@angular/core").InputSignal<boolean | undefined>;
    steps: import("@angular/core").InputSignal<SignalFormContainer<TModel, unknown>[]>;
    currentStep: import("@angular/core").ModelSignal<number>;
    doesStepHaveErrors: import("@angular/core").WritableSignal<boolean[]>;
    isStepComplete: import("@angular/core").WritableSignal<boolean[]>;
    protected requiredPerStepMap: import("@angular/core").WritableSignal<{
        [val: number]: Signal<StepStatus>;
    }>;
    protected readonly stepStatus: typeof StepStatus;
    protected readonly squareCheckIcon: import("lucide-angular").LucideIconData;
    private readonly injector;
    constructor();
    goToStep(index: number): void;
    private isStepCompleteOrErrorEffect;
    private requiredPerStepMapEffect;
    private initRequiredPerStepMap;
    static ɵfac: i0.ɵɵFactoryDeclaration<SignalFormStepperNavComponent<any>, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SignalFormStepperNavComponent<any>, "signal-form-stepper-nav", never, { "hasSaved": { "alias": "hasSaved"; "required": false; "isSignal": true; }; "steps": { "alias": "steps"; "required": true; "isSignal": true; }; "currentStep": { "alias": "currentStep"; "required": true; "isSignal": true; }; }, { "currentStep": "currentStepChange"; }, never, never, true, never>;
}
