/** Core */ import * as Core from "cmf.core/src/core"; import { PropertiesEditorProperty } from "../propertiesEditor/propertiesEditor"; /** Angular */ import * as ng from "@angular/core"; /** * DialogFormProperty */ export { PropertiesEditorProperty as DialogFormProperty }; /** * DialogFormProperties */ export interface DialogFormProperties { [key: string]: PropertiesEditorProperty; } /** * DialogFormObject */ export interface DialogFormObject { [key: string]: any; } /** * DialogFormPropertyChangedArgs */ export interface DialogFormPropertyChangedArgs { propertyId: string; value: any; } /** * @whatItDoes * * This component is used to instantiate a dialog with a simple form in it, using a properties editor, providing a simpler way of handling this common use case. * * @howToUse * * This component is used with the inputs and outputs mentioned below. * * ### Inputs * * `string` : **mainTitle** - Title of the dialog * * `string` : **headerIcon** - Icon of the dialog * * `any` : **object** - The object to feed teh form (properties from this object will be used as fields in form) * * `boolean` : **refreshOnClose** - If refresh page on close modal * `DialogFormProperties` : **properties** - Properties to change on the property editor * `(object: DialogFormInstance) => void;` : **callback** - Callback to be called on diagram confirm * * ### Outputs * `DialogFormPropertyChangedArgs` : **propertyChanged** - propertyChange of the properties editor. * * ### Example * To use the component, assume this HTML Template as an example: * * ```HTML * * * ``` * * @description * * ## DialogForm Component * * ### Dependencies * * #### Components * * PropertiesEditor : `cmf.core.business.controls` * * Dialog : `cmf.core.controls` * * ### Directives * * Validator : `cmf.core.controls` * */ export declare class DialogForm extends Core.CoreComponent implements ng.OnChanges, ng.AfterViewInit, ng.OnDestroy { private _elementRef; private _ngZone; private _buttons; /** * Title */ mainTitle: string; /** * Header icon */ headerIcon: string; /** * Properties */ properties: DialogFormProperties; /** * Object */ object: DialogFormObject; /** * If refresh on close */ refreshOnClose: boolean; /** * Callback */ callback: (object: DialogFormObject) => void; /** * On property changed * @event propertyChanged */ propertyChanged: ng.EventEmitter; /** * Constructor * @param viewContainerRef the reference to the component view container */ constructor(_elementRef: ng.ElementRef, _ngZone: ng.NgZone); /** * On property change * @param event */ private onPropertyChange; /** * After view init */ ngAfterViewInit(): void; /** * On destroy */ ngOnDestroy(): void; /** * On changes method * @param changes the changes made to the component properties */ ngOnChanges(changes: ng.SimpleChanges): void; } export declare class DialogFormModule { }