import { AnimationEvent } from "@angular/animations";
import { BooleanInput } from "@angular/cdk/coercion";
import { CdkStepper, StepperSelectionEvent } from "@angular/cdk/stepper";
import { AfterContentInit, AfterViewInit, EventEmitter, OnChanges, OnDestroy, QueryList, SimpleChanges } from "@angular/core";
import { Subject } from "rxjs";
import { IWizardState } from "./types";
import { WizardStepV2Component } from "./wizard-step/wizard-step.component";
import { WizardStepHeaderComponent } from "./wizard-step-header/wizard-step-header.component";
import * as i0 from "@angular/core";
export declare class WizardDirective extends CdkStepper implements OnChanges, AfterContentInit, AfterViewInit, OnDestroy {
    static ngAcceptInputTypeEditable: BooleanInput;
    static ngAcceptInputTypeOptional: BooleanInput;
    static ngAcceptInputTypeCompleted: BooleanInput;
    static ngAcceptInputTypeHasError: BooleanInput;
    /** Override CdkStepper 'steps' property to use WizardStepV2Component instead of CdkStep */
    readonly steps: QueryList<WizardStepV2Component>;
    stepsArray: Array<WizardStepV2Component>;
    /** Uniq labels ids */
    labelIds: string[];
    /** Uniq step content ids */
    stepContentIds: string[];
    /** Event emitted when the current step is done transitioning in. */
    readonly animationDone: EventEmitter<void>;
    /** Event emitted when the selected step has changed. */
    readonly selectionChange: EventEmitter<StepperSelectionEvent>;
    /** The state of the wizard */
    state: IWizardState;
    /** Emits the completed wizard state on component destroy */
    readonly finished: EventEmitter<IWizardState>;
    /** The list of step headers of the steps in the stepper. */
    _stepHeader: QueryList<WizardStepHeaderComponent>;
    /** Stream of animation `done` events when the body expands/collapses. */
    _animationDone: Subject<AnimationEvent>;
    /** Steps that the stepper holds. */
    _steps: QueryList<WizardStepV2Component>;
    /** The step that is selected. */
    get selected(): WizardStepV2Component;
    set selected(step: WizardStepV2Component);
    ngOnChanges(changes: SimpleChanges): void;
    ngAfterContentInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    get allStepsCompleted(): boolean;
    private restore;
    private setIds;
    static ɵfac: i0.ɵɵFactoryDeclaration<WizardDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<WizardDirective, "[nuiWizard]", never, { "state": { "alias": "state"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; }, { "animationDone": "animationDone"; "selectionChange": "selectionChange"; "finished": "finished"; }, ["_steps"], never, false, never>;
}
