import * as i0 from '@angular/core'; import { QueryList, EventEmitter, DestroyRef, ChangeDetectorRef, TemplateRef, OnInit, OnDestroy, OnChanges, SimpleChanges, ModuleWithProviders } from '@angular/core'; import { Observable, Subject } from 'rxjs'; import { Nullable } from '@fundamental-ngx/cdk/utils'; import { WizardStepStatus } from '@fundamental-ngx/core/wizard'; import * as i1 from '@fundamental-ngx/platform/form'; import { DynamicFormGroup, SubmitFormEventResult, DynamicFormFieldGroup, DynamicFormFieldItem, FormGeneratorComponent, FormGeneratorService, DynamicFormValue, FormGeneratorModuleConfig } from '@fundamental-ngx/platform/form'; import { HintInput } from '@fundamental-ngx/platform/shared'; import { ButtonType } from '@fundamental-ngx/core/button'; import { ContentDensityMode } from '@fundamental-ngx/core/content-density'; import { DialogRef, DialogService, DialogConfig } from '@fundamental-ngx/core/dialog'; import { HeaderSizes } from '@fundamental-ngx/core/title'; interface WizardGeneratorFormsValue { [key: string]: WizardStepFormsValue; } interface WizardStepFormsValue { [key: string]: { [key: string]: any; }; } interface WizardVisibleSteps { [key: string]: boolean; } interface WizardGeneratorDependencyFields { [key: string]: { [key: string]: string[]; }; } interface WizardStepSubmittedForms { [key: string]: SubmitFormEventResult; } interface WizardStepForms { [key: string]: { title: string; form: DynamicFormGroup; }; } interface WizardGeneratorFormGroup { /** * @description Specify the column layout in the format `XLn-Ln-Mn-Sn` * where n is the number of columns and can be different for each size. * eg: XL2-L2-M2-S1 would create 2-column layouts for XL, L, * and M sizes and single-column layout for S size. */ columnLayout?: string; /** * @description Form main title. */ title: string; /** * @description List of @see DynamicFormItem representing the list of items * to be rendered in the form. */ formItems: WizardGeneratorFormItem[]; /** * @description Unique form ID. */ id: string; /** * @description Should return true or false depending on whether this form group should be visible. * @returns Boolean */ when?: (completedSteps: string[], answers: WizardGeneratorFormsValue, forms: Map) => boolean | Promise | Observable; /** * @description Object of dependency fields that are used with `when` function */ dependencyFields?: WizardGeneratorDependencyFields; /** * @description * Additional set of options that can affect UI of the form item form control. */ guiOptions?: WizardGeneratorFormGroupGuiOptions; } interface WizardGeneratorFormGroupGuiOptions { /** * Hint options. Either only text or full config */ hint?: HintInput; } type WizardGeneratorFormItem = WizardGeneratorFormGroupItem | WizardGeneratorFormFieldItem; interface WizardGeneratorFormGroupItem extends DynamicFormFieldGroup { /** * @description Object of dependency fields that are used with `when` function */ dependencyFields?: WizardGeneratorDependencyFields; } type WizardGeneratorFormFieldItem = DynamicFormFieldItem<{ dependencyFields?: WizardGeneratorDependencyFields; }>; interface WizardGeneratorItem { /** * @description Name of the wizard step. Will be used in navigation bar. * @param stepIndex Current step index. * @returns Step title */ name: string | ((stepIndex: string) => string | Promise | Observable); /** * @description Title of the wizard step. Will be used in wizard step body. * @param stepIndex Current step index. * @returns Step title */ title?: string | ((stepIndex: string) => string | Promise | Observable); /** * @description The smaller text for labeling the step as optional. */ optionalText?: string | ((stepIndex: string) => string | Promise | Observable); /** * @description Unique step ID. */ id: string; /** * @description Icon class name which will be used to display an icon in the navigation bar. */ icon?: string; /** * @description Should return true or false depending on whether this step should be visible. * @returns Boolean */ when?: (completedSteps: string[], answers: WizardGeneratorFormsValue, forms: Map) => boolean | Promise | Observable; /** * @description Object of dependency fields that are used with `when` function */ dependencyFields?: WizardGeneratorDependencyFields; /** * @description Whether or not this step is going to create a branch. */ branching?: boolean; /** * @description List of forms to render. */ formGroups?: WizardGeneratorFormGroup[]; /** * @description Step status. */ status?: WizardStepStatus; /** * @description Is this step is a summary step */ summary?: boolean; /** * @hidden * @description Used for internal navigation logic to summary step. */ completed?: boolean; } type PreparedWizardGeneratorItemFields = { name: string; title: string; optionalText: string; status: WizardStepStatus; }; /** * @hidden * Internal representation of WizardGeneratorItem with all fields resolved to a plain value */ type PreparedWizardGeneratorItem = Omit & PreparedWizardGeneratorItemFields; interface WizardNavigationButtons { /** * @description Text for 'Go Next' button. */ goNext?: WizardNavigationButton; /** * @description Text for 'Go Back' button. */ goBack?: WizardNavigationButton; /** * @description Text for 'Finish' button. */ finish?: WizardNavigationButton; /** * @description Text for 'Cancel' button. */ cancel?: WizardNavigationButton; /** * @description Text for 'Review' button. */ review?: WizardNavigationButton; } interface WizardNavigationButton { label: string; contentDensity: ContentDensityMode; type: ButtonType; } interface WizardGeneratorStep { formGenerators: QueryList; getVisibleForms(): WizardStepForms; submitForms(skipIfUntouched?: boolean): Subject; updateFormsState(): Promise; refreshFormsVisibility(): Promise; } type StepsComponents = Map; declare enum WizardGeneratorRefreshStrategy { REFRESH_STEP_VISIBILITY = "refreshStepVisibility", REVALIDATE_STEP_FORMS = "revalidateStepForms", REFRESH_FORM_VISIBILITY = "refreshFormVisibility" } interface DependencySteps { /** Step ID */ [key: string]: { /** Form ID with array of form control id's */ [key: string]: { [key in WizardGeneratorRefreshStrategy]?: string[]; }; }; } interface StepDependencyFields { /** Dependent step */ [key: string]: DependencySteps; } /** * @description Helper service to keep all transformations and data in one place. */ declare class WizardGeneratorService { private _formGeneratorService; /** @hidden */ items: PreparedWizardGeneratorItem[]; /** * @description Visible steps components */ stepsComponents: StepsComponents; /** * @description Object with steps that are dependencies for another steps. */ dependencySteps: StepDependencyFields; /** * @description Whether to append the step to the wizard. If false, each step will be displayed on a different page. * Default is true. */ appendToWizard: boolean; /** @hidden */ _shouldRedirectToSummary: boolean; /** * @description Steps that are visible to the user. */ visibleWizardSteps: PreparedWizardGeneratorItem[]; /** @hidden */ private _visibleWizardSteps$; /** @hidden */ private _appendToWizard$; /** @hidden */ private _stepsComponents$; /** @hidden */ private _stepsOrderChanged$; /** @hidden */ private _nextStepIndex$; /** @hidden */ private _submittedFormRawValues; /** @hidden */ private _wizardStepIds; /** @hidden */ constructor(_formGeneratorService: FormGeneratorService); /** * @description Returns current step ID in Wizard. * @returns {string | undefined} Current step ID. */ getCurrentStepId(): string | undefined; /** * @description Returns current step index. * @returns {number} Index of the current step in array of Wizard steps. */ getCurrentStepIndex(): number; /** * Searches for the index of the step based on it's ID * @param stepId Step ID * @returns Index in the array of steps for defined step ID. */ getStepIndex(stepId?: string): number; /** * @description Sends command to submit all forms inside the step. * @param stepId Step ID for which forms need's to be submitted. * @param skipIfUntouched Skip validation if form haven't been touched. * @returns {Observable} Observable, which will emit * when all visible forms in step are submitted. */ submitStepForms(stepId?: string, skipIfUntouched?: boolean): Observable; /** * @description Triggers validation for current step forms. * @returns {Observable} Observable with validation result. */ validateStepForms(skipIfUntouched?: boolean): Observable; /** * @description Sets new array of visible steps for Wizard. * @param steps steps that needs to be shown in Wizard. */ setVisibleSteps(steps: PreparedWizardGeneratorItem[]): void; /** * @returns {Observable} Observable, which will emit every time * when array of visible step items has been changed. */ getVisibleSteps(): Observable; /** * @description Runs initial transformation for passed Wizard steps. * @param items All Wizard steps. * @returns {Promise} Array of transformed Wizard steps. */ prepareWizardItems(items: WizardGeneratorItem[]): Promise; /** * @description Runs conditional function for each step to define if step should be shown. */ refreshStepVisibility(): Promise; /** * Checks whether current form group should be visible. * @param formGroup Form Group. */ refreshFormVisibility(formGroup: WizardGeneratorFormGroup): Promise; /** * @description Clears array of Wizard steps components. */ clearWizardStepComponents(): void; /** * @returns {Observable} Observable, which will emit every time * when Set visible steps components has been changed. */ trackStepsComponents(): Observable; /** * @description Adds new component to the set of Wizard steps components. * @param component Wizard Step component to add. * @param key Wizard Step ID. */ addWizardStepComponent(component: WizardGeneratorStep, key: string): void; /** * @description Removes Component from the set of Wizard steps components. * @param key */ removeWizardStepComponent(key: string): void; /** * @param step Step ID which includes dependency fields. * @returns Object with forms and their fields that are dependencies for other steps. */ getStepDependencyFields(step: string): DependencySteps; /** * Notifies step components to revalidate inner forms. * @param stepIds Step ID's which needs to be revalidated. */ notifyStepsToRevalidateForms(stepIds: string[]): void; /** * Notifies step components to refresh form groups visibility. * @param stepIds Step ID's which needs to be checked. */ refreshFormsVisibility(stepIds: string[]): Promise; /** * @param formatted Flag defining whether form value should be formatted by form control * transformers, or return raw value * @returns {WizardGeneratorFormsValue} Wizard form value */ getWizardFormValue(formatted?: boolean): Promise; /** * * @param stepId Step ID to check. * @returns {Boolean} indicator if step was previously validated and submitted. */ stepSubmitted(stepId: string): boolean; /** * * @returns {Boolean} if steps are untouched, will return true, if yes - false */ isStepsUntouched(): boolean; /** * Reverts wizard to defined step. * @param stepId Step ID to edit */ editStep(stepId: string): void; /** * Set's current set of step ID's * @param ids step ID's */ setWizardStepIds(ids: string[]): void; /** * Set next step index. * @param index Next step index. */ setNextStepIndex(index: number): void; /** * Returns observable of next step index which emits when index is changed. */ trackNextStepIndex(): Observable; /** * Returns observable which emits when steps order has been changed. */ trackStepsOrder(): Observable; /** * Stores original 'appendToWizard' input property. * @param value */ setOriginalAppendToWizardState(value: boolean): void; /** * Resets modified 'appendToWizard' property to original one. */ restoreAppendToWizardState(): void; /** * Returns observable which emits when 'appendToWizard' property has been changed. */ trackAppendToWizardState(): Observable; /** * @hidden * @param items * @param index * @param key * @returns */ private _getFormItemPropertyValue; /** * @hidden * @description Returns value from Promise-like, Observable-like, simple function or just some object. * @param obj * @returns */ private _getFunctionValue; /** * @hidden * @description Sets `branching` property for the steps that will create new branches. * @param items * @returns */ private _setBranchingSteps; /** @hidden */ private _normalizeDependencyStep; /** @hidden */ private _buildDependencyMap; /** @hidden */ private _getCompletedStepIds; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * @description Default button labels. */ declare const DEFAULT_WIZARD_NAVIGATION_BUTTONS: Required; /** * @description Base Wizard Generator component with necessary inputs and methods. */ declare class BaseWizardGenerator { /** * @description Whether or not apply responsive paddings styling. */ responsivePaddings: boolean; /** * @description Button labels to be used in Wizard navigation */ set navigationButtonLabels(value: WizardNavigationButtons); get navigationButtonLabels(): WizardNavigationButtons; /** * @description Array of Wizard Steps. */ set items(items: WizardGeneratorItem[]); get items(): WizardGeneratorItem[]; /** * Whether to append the step to the wizard. If false, each step will be displayed on a different page. * Default is true. */ set appendToWizard(value: boolean); get appendToWizard(): boolean; /** If navigation buttons should be visible. */ navigationButtons: boolean; /** * Custom height to use for the wizard's content pane. By default, this value is calc(100vh - 144px), where 144px * is the combined height of the shellbar, wizard header and wizard footer. */ contentHeight: Nullable; /** * @description Boolean flag indicating whether to display Summary step in Wizard progress bar. */ displaySummaryStep: boolean; /** Whether all form items should have identical layout provided for form group. */ unifiedLayout: boolean; /** * @description Emits wizard value when it's completed. */ wizardFinished: EventEmitter; /** * Flag indicating that wizard is ready to be shown */ wizardCreated: boolean; /** * @description Is current step is summary step. */ get isSummaryStep(): boolean; /** * @description Array of visible Wizard Steps. */ set visibleItems(items: PreparedWizardGeneratorItem[]); get visibleItems(): PreparedWizardGeneratorItem[]; /** * @description Whether or not Wizard is currently on the first step */ get isFirstStep(): boolean; /** * @description Whether or not Wizard is currently on the last step */ get isLastStep(): boolean; /** * Whether current step is a branching step. */ get isBranchingStep(): boolean; /** * Whether the next step is a Summary step. */ get isNextStepSummary(): boolean; /** Whether the current step is completed */ get isCurrentStepCompleted(): boolean; /** * @hidden */ _visibleItems: PreparedWizardGeneratorItem[]; /** @hidden */ _nextStepIndex: number; /** @hidden */ _stepsOrderChanged: boolean; /** * @hidden */ _navigationButtonLabels: Required; /** * @hidden */ protected readonly _destroyRef: DestroyRef; /** @hidden */ protected readonly _wizardGeneratorService: WizardGeneratorService; /** @hidden */ protected readonly _cd: ChangeDetectorRef; /** * @hidden */ private _items; /** @hidden */ private _appendToWizard; /** * @hidden */ private _formPending; /** @hidden */ constructor(); /** * @description Reverts Wizard progress one step back. */ goBack(): void; /** * @description Progresses the Wizard one step further. */ goNext(): Promise; /** * @description Submits step forms. * @param currentStepIndex current step index. * @returns {Observable} Observable with form values. */ submitStepForms(currentStepIndex?: string): Observable; /** * @description Completes the wizard and emits it's formatted value. */ finish(): Promise; /** * @description Callback function to update steps status. * @param stepId Step ID to be updated. * @param status New step status. */ stepStatusChanged(stepId: string, status: WizardStepStatus): Promise; /** * @hidden */ private _setVisibleSteps; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } interface WizardTitle { /** * @description Text to display in the Wizard Dialog title */ text: string; /** * @description Size of the Wizard Dialog title */ size: HeaderSizes; } interface WizardDialogData { /** * @description Whether or not apply responsive paddings styling. */ responsivePaddings: boolean; /** * @description Button labels to be used in Wizard navigation. */ navigationButtonLabels?: WizardNavigationButtons; /** * @description Array of Wizard Steps. */ items: WizardGeneratorItem[]; /** * @description Whether or not to append the step to the wizard. If false, each step will be displayed on a different page. * Default is true. */ appendToWizard: boolean; /** * @description Custom height to use for the wizard's content pane. By default, this value is calc(100vh - 144px), where 144px * is the combined height of the shellbar, wizard header and wizard footer. */ contentHeight?: string; /** * @description Boolean flag indicating whether or not to display Summary step in Wizard progress bar. */ displaySummaryStep: boolean; /** * @description Wizards dialog title configuration. */ title: WizardTitle; /** * @description Text that will be displayed if user clicks on Cancel button. */ confirmationDialogText?: string; /** * @description Text that will be displayed if user clicks on Close button in confirmation dialog. */ confirmationDialogCloseText?: string; /** * @description Text that will be displayed if user clicks on Cancel button in confirmation dialog. */ confirmationDialogCancelText?: string; /** * User-defined template for "Go Next" button. */ goNextButtonTemplate?: TemplateRef; /** * User-defined template for "Go Back" button. */ goBackButtonTemplate?: TemplateRef; /** * User-defined template for "Finish" button. */ finishButtonTemplate?: TemplateRef; /** * User-defined template for "Cancel" button. */ cancelButtonTemplate?: TemplateRef; /** * User-defined template for cancel confirmation dialog. */ confirmationDialogTemplate?: TemplateRef; /** User-defined template for Summary step. */ summaryStepTemplate?: TemplateRef; /** User-defined template for "Review" button. */ reviewButtonTemplate?: TemplateRef; /** If navigation buttons should be visible. */ navigationButtons?: boolean; /** Whether or not all form items should have identical layout provided for form group. */ unifiedLayout?: boolean; } declare class DialogWizardGeneratorComponent extends BaseWizardGenerator { private _dialogRef; /** @hidden */ defaultConfirmationDialogTemplate: TemplateRef; /** * @description Wizards dialog title configuration. */ title: WizardTitle; /** * @description Confirmation message when wizard dialog close button has been clicked. */ confirmationDialogText: string; /** * @description Confirm button text for close confirmation dialog. */ confirmationDialogCloseText: string; /** * @description Cancel button text for close confirmation dialog. */ confirmationDialogCancelText: string; /** * User-defined template for "Go Next" button. */ goNextButtonTemplate?: TemplateRef; /** * User-defined template for "Go Back" button. */ goBackButtonTemplate?: TemplateRef; /** * User-defined template for "Finish" button. */ finishButtonTemplate?: TemplateRef; /** * User-defined template for "Cancel" button. */ cancelButtonTemplate?: TemplateRef; /** * User-defined template for cancellation confirmation dialog. */ confirmationDialogTemplate?: TemplateRef; /** * User-defined template for summary step. */ summaryStepTemplate?: TemplateRef; /** User-defined template for "Review" button */ reviewButtonTemplate?: TemplateRef; /** @hidden */ private readonly _messageBoxService; /** @hidden */ constructor(_dialogRef: DialogRef); /** * @description Cancels Wizard progress and closes the dialog. */ cancel(): void; /** * @description Completes Wizard process, emits Wizard result and closes the dialog. */ finish(): Promise; /** * @hidden */ _goBackFn: () => void; /** * @hidden */ _goNextFn: () => Promise; /** * @hidden */ _finishFn: () => Promise; /** * @hidden */ _cancelFn: () => void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface WizardStepChange { id: string; status: WizardStepStatus; } declare class WizardBodyComponent implements OnInit { private _wizardGeneratorService; private _cd; /** * @description Whether or not apply responsive paddings styling. */ responsivePaddings: boolean; /** * @description Button labels to be used in Wizard navigation */ navigationButtonLabels: Required; /** * @description Whether or not to append the step to the wizard. If false, each step will be displayed on a different page. * Default is true. */ appendToWizard: boolean; /** * @description Custom height to use for the wizard's content pane. By default, this value is calc(100vh - 144px), where 144px * is the combined height of the Shellbar, wizard header and wizard footer. */ contentHeight: Nullable; /** * @description Whether or not Wizard is currently on the first step */ isFirstStep: boolean; /** * @description Whether Wizard is currently on the last step. */ isLastStep: boolean; /** * Whether next step is a Summary step. */ isNextStepSummary: boolean; /** * @description Boolean flag indicating whether to display Summary step in Wizard progress bar. */ displaySummaryStep: boolean; /** * User-defined template for "Go Next" button. */ goNextButtonTemplate: TemplateRef; /** * User-defined template for "Finish" button. */ finishButtonTemplate: TemplateRef; /** * User-defined template for summary step. */ customSummaryStepTemplate?: TemplateRef; /** User-defined template for "Review" button */ reviewButtonTemplate?: TemplateRef; /** * @description Is current step is summary step. */ isSummaryStep: boolean; /** If navigation buttons should be visible. */ navigationButtons: boolean; /** Whether or not all form items should have identical layout provided for form group. */ unifiedLayout: boolean; /** Whether current step is a branching step. */ isBranchingStep: boolean; /** Whether current step is completed */ isCurrentStepCompleted: boolean; /** Whether order of steps was changed */ stepsOrderChanged: boolean; /** * @description Emits when some step status has been changed. */ statusChange: EventEmitter; /** * @description Emits when "Go next" button has been clicked */ goNext: EventEmitter; /** * @description Emits when "Finish" button has been clicked */ finish: EventEmitter; /** * @hidden * An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */ private readonly _destroyRef; /** * @hidden */ private _visibleItems; /** * @description Array of visible Wizard Steps. */ set visibleItems(items: PreparedWizardGeneratorItem[]); get visibleItems(): PreparedWizardGeneratorItem[]; /** @hidden */ constructor(_wizardGeneratorService: WizardGeneratorService, _cd: ChangeDetectorRef); /** * @hidden */ _goNextFn: () => void; /** * @hidden */ _finishFn: () => void; /** * @description Custom step status change validator function. * @param index Current step index. * @returns {Promise} If this step status can be changed. */ stepClickValidatorFn(index: number): () => Promise; /** * @hidden */ ngOnInit(): void; /** * @description Callback function for status change. * @param id step ID. * @param status new step status. */ stepStatusChanged(id: string, status: WizardStepStatus): void; /** @hidden */ stepClicked(stepId: string): void; /** * @hidden * @param _index * @param item * @returns */ _trackFn(_index: number, item: WizardGeneratorItem): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class WizardGeneratorStepComponent implements WizardGeneratorStep, OnInit, OnDestroy, OnChanges { private _wizardGeneratorService; private _formGeneratorService; /** * @description Step Form Generator components. */ formGenerators: QueryList; /** * @description Current step. */ item: WizardGeneratorItem; /** * Wizard step status. */ stepStatus: WizardStepStatus; /** Whether all form items should have identical layout provided for form group. */ unifiedLayout: boolean; /** * @description Emits when all forms in the step has been submited */ formsSubmitted: EventEmitter; /** * @description Emits when all forms in the step has been created */ formsCreated: EventEmitter; /** * @hidden */ _visibleFormGroupIds: Record; /** * @hidden */ private _submittedForms; /** * @hidden */ private _formSubmitted$; /** * @hidden */ private _forms; /** * @hidden */ private _trackedFields; /** * @hidden * @private */ private _hiddenFormGroupValues; /** * @hidden * An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */ private readonly _destroyRef; /** @hidden */ constructor(_wizardGeneratorService: WizardGeneratorService, _formGeneratorService: FormGeneratorService); /** * @hidden */ ngOnInit(): Promise; /** * @hidden */ ngOnDestroy(): void; /** @hidden */ ngOnChanges(changes: SimpleChanges): Promise; /** * @description Adds created form instance to the object of the forms. * @param form Form instance * @param key Form ID from @see item */ onFormCreated(form: DynamicFormGroup, key: string): Promise; /** * @description Adds component to the service for further usage. */ addComponentToParent(): Promise; /** * @description Callback function when form has been submitted. * @param result Form submission result. * @param index Form index in the step. */ onFormSubmitted(result: SubmitFormEventResult, index: string): void; /** * Returns visible forms in the step. */ getVisibleForms(): WizardStepForms; /** * @description Clears previously submitted form values and re-submit them again. * @returns Subject, which will return forms value. */ submitForms(skipIfUntouched?: boolean): Subject; /** * Triggers form value revalidation and checks if field in form should be visible. */ updateFormsState(): Promise; /** * Refreshes step form group visibility. */ refreshFormsVisibility(): Promise; /** * @hidden * @description Keeps track on dependency fields for other steps and refreshes the view when they changed. * @param form * @param key */ private _trackDependencyFieldsChanges; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class WizardGeneratorComponent extends BaseWizardGenerator { /** * User-defined template for "Finish" button. */ finishButtonTemplate: TemplateRef; /** * User-defined template for "Go Next" button. */ goNextButtonTemplate: TemplateRef; /** * User-defined template for Summary step. */ customSummaryStepTemplate: TemplateRef; /** * User-defined template for "Review" button */ reviewButtonTemplate: TemplateRef; /** @hidden */ readonly loadingRange: number[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface WizardGeneratorSummaryItem { id: string; name?: string; title?: string; forms: FormattedFormStep[]; } interface FormattedFormStep { title: string; id: string; items: FormattedFormStepItem[]; } interface FormattedFormStepItem { label: string; value: any; } declare class WizardSummarySectionComponent { /** * @description Current step for the section. */ step: WizardGeneratorSummaryItem; /** * Emits when step edit button clicked. */ editStep: EventEmitter; /** * @hidden * @description Sets current step on wizard. * @param event Mouse click event to prevent. */ _editStep(event: MouseEvent | KeyboardEvent | TouchEvent): void; /** @hidden */ _trackFn(_: number, form: FormattedFormStep): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class WizardSummaryStepComponent { private _wizardGeneratorService; private _formGeneratorService; private _cd; /** * @description Summary step status. */ set status(status: WizardStepStatus); /** * User-defined template for Summary step. */ customSummaryStepTemplate: Nullable>; /** * Formatted wizard value with steps and their forms. */ formattedWizardValue: WizardGeneratorSummaryItem[]; /** * @hidden */ _submittedForms: WizardGeneratorFormsValue; /** * @hidden */ _shouldRender: boolean; /** * @hidden */ _wizardSteps: WizardGeneratorItem[]; /** @hidden */ constructor(_wizardGeneratorService: WizardGeneratorService, _formGeneratorService: FormGeneratorService, _cd: ChangeDetectorRef); /** * Opens defined step for editing. * @param stepId Defined step ID. */ editStep(stepId: string): void; /** @hidden */ _trackFn(_: number, step: WizardGeneratorSummaryItem): string; /** @hidden */ _editStepFn: (stepId: string) => void; /** @hidden */ private _formatWizardValue; /** @hidden */ private _formatStepValue; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class WizardGeneratorFinishButtonDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class WizardGeneratorGoNextButtonDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class WizardGeneratorReviewButtonDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class WizardGeneratorSummaryStepDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * @description Helper service to launch Wizard in dialog with minimal user input. */ declare class WizardDialogGeneratorService { private _dialogService; /** @hidden */ constructor(_dialogService: DialogService); /** * @description Opens dialog with wizard component inside. * @param config Dialog options with wizard config. * @returns DialogRef instance. */ open(config: DialogConfig): DialogRef; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * Adds Wizard Generator functionality to your application. * * Can be imported in two ways: * * Plain PlatformWizardGeneratorModule with default configuration * * With `withConfig()` method which allows passing custom default configuration. */ /** * @deprecated * Use direct imports of components and directives. */ declare class PlatformWizardGeneratorModule { /** * Allows configuring module on a global level with custom configuration. * @param config User's custom configuration. */ static withConfig(config: Partial): ModuleWithProviders; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { BaseWizardGenerator, DEFAULT_WIZARD_NAVIGATION_BUTTONS, DialogWizardGeneratorComponent, PlatformWizardGeneratorModule, WizardBodyComponent, WizardDialogGeneratorService, WizardGeneratorComponent, WizardGeneratorFinishButtonDirective, WizardGeneratorGoNextButtonDirective, WizardGeneratorRefreshStrategy, WizardGeneratorReviewButtonDirective, WizardGeneratorService, WizardGeneratorStepComponent, WizardGeneratorSummaryStepDirective, WizardSummarySectionComponent, WizardSummaryStepComponent }; export type { DependencySteps, FormattedFormStep, FormattedFormStepItem, PreparedWizardGeneratorItem, StepDependencyFields, StepsComponents, WizardDialogData, WizardGeneratorDependencyFields, WizardGeneratorFormFieldItem, WizardGeneratorFormGroup, WizardGeneratorFormGroupGuiOptions, WizardGeneratorFormGroupItem, WizardGeneratorFormItem, WizardGeneratorFormsValue, WizardGeneratorItem, WizardGeneratorStep, WizardGeneratorSummaryItem, WizardNavigationButton, WizardNavigationButtons, WizardStepChange, WizardStepForms, WizardStepFormsValue, WizardStepSubmittedForms, WizardTitle, WizardVisibleSteps };