/** Angular2 */ import * as ng from "@angular/core"; /** Core */ import { CoreComponent } from "cmf.core/src/core"; /** Nested directives */ import { WizardStepDef } from "./wizardStepDef"; import { ValidatorModel } from "../../directives/validator/validator"; /** Bags */ import { WizardBag } from "../wizard/wizardBag"; import { ResultMessageBag } from "../resultMessage/resultMessageBag"; export { WizardStepDef }; /** * The Wizard step component. * This component represents the wrapper component for a step in the wizard. A wizard step needs validation when a new step is requested. * The wizard step, like any other component can request a validation of all it's content components * via the the {@link Validator} directive. * * ## Example * * Assume this HTML Template * * ```html * * * * ``` * Here we are telling this wizard step that when it needs to validate, it will call all methods `validateComponent1`, * `validateComponent2` and `validateComponent3` of its sub components. * * Next we have the component's class * * ```javascript * @Core.Component(...) * @Core.View(...) * * export class MyWizardStep extends CoreComponent { * * constructor(@ng.Optional() @ng.Query(ng.forwardRef(() => {@link Validator})) private validatorQueryList: * ng.QueryList<{@link Validator}>, private elementRef: ng.ElementRef) { * } * } * * ``` */ export declare class WizardStep extends CoreComponent implements WizardStepDef, ng.OnInit, ng.OnChanges { private validatorModel; bag: WizardBag; /** * The step id (not required internally) * */ id: string; /** * The title of the wizard step * */ mainTitle: string; /** * The subtitle of the wizard step * */ subtitle: string; /** * Deprecated title input */ title: string; /** * Indicates if the step is optional or not. When the step is not mandatory for finishing the flow. * * @property {boolean} isOptional */ isOptional: boolean; /** * If the step shouldn't even be displayed (due to context) * * @property {boolean} isHidden */ isHidden: boolean; /** * Indicates if the is the current one * * @property {boolean} isActive */ isActive: boolean; /** * Indicates if the step was already validated * * @property {boolean} isValidated */ isValidated: boolean; /** * When the step was already visited and the user can jump to it from previous steps * * @property {boolean} isValidated */ isVisited: boolean; /** * Stores all the messages that prevent this step from being validated * * @property {Array} resultMessages */ resultMessages: Array; /** * Custom attribute */ customAttribute: string; /** * @method constructor */ constructor(validatorModel: ValidatorModel, elementRef: ng.ElementRef, bag: WizardBag); ngOnInit(): void; /** * Handle model changes - explicitly update bag */ ngOnChanges(changes: any): void; /** * Add a validator model to the wizard step existing validator(s). * * @param validatorModel Validator Model to add. */ addValidatorModel(validatorModel: ValidatorModel): void; /** * Sets the current validator model. * This will replace the validator model of the instance. * * @param validatorModel Validator model to set */ setValidatorModel(validatorModel: ValidatorModel): void; /** * Step validation function * * @method {boolean} validate */ validate(actionId: string): Promise; } export declare class WizardStepModule { }