import { Injector, OnDestroy, ViewContainerRef, AfterContentInit } from '@angular/core'; import { FormBuilder, FormGroup } from '@angular/forms'; import { App, DynamicComponentRefProvider } from '@wm/core'; import { StylableComponent } from '../base/stylable.component'; export declare class FormComponent extends StylableComponent implements OnDestroy, AfterContentInit { private fb; private app; private dynamicComponentProvider; parentForm: FormComponent; onBeforeSubmitEvt: any; onSubmitEvt: any; onBeforeRenderEvt: any; binddataset: any; static initializeProps: void; dynamicFormRef: ViewContainerRef; messageRef: any; componentRefs: any; autoupdate: any; formlayout: any; captionAlignClass: string; validationtype: string; captionalign: string; captionposition: string; captionsize: any; collapsible: boolean; expanded: boolean; elScope: any; _widgetClass: string; captionwidth: string; _captionClass: string; ngform: FormGroup; formFields: any[]; formfields: {}; formWidgets: {}; filterWidgets: {}; buttonArray: any[]; dataoutput: {}; datasource: any; formdata: {}; isSelected: any; prevDataValues: any; prevDataObject: any; prevformFields: any; statusMessage: { caption: string; type: string; }; messagelayout: any; metadata: any; errormessage: any; primaryKey: any[]; postmessage: any; _liveTableParent: any; updateMode: any; name: any; clearData: Function; edit: Function; new: Function; cancel: Function; delete: Function; save: Function; saveAndNew: Function; saveAndView: Function; setPrimaryKey: () => {}; dialogId: string; enableemptyfilter: any; pagesize: any; result: any; pagination: any; clearFilter: Function; applyFilter: Function; filter: Function; filterOnDefault: Function; onMaxDefaultValueChange: Function; private operationType; private _isLayoutDialog; private _dynamicContext; private _isGridLayoutPresent; private validationMessages; private _debouncedSubmitForm; isLayoutDialog: any; private _isUpdateMode; isUpdateMode: any; action: string; submit($event: any): void; onReset(): void; constructor(inj: Injector, fb: FormBuilder, app: App, dynamicComponentProvider: DynamicComponentRefProvider, parentForm: FormComponent, onBeforeSubmitEvt: any, onSubmitEvt: any, onBeforeRenderEvt: any, binddataset: any, isLiveForm: any, isLiveFilter: any, role: any, key: any, name: any); ngAfterContentInit(): void; findOperationType(): void; private addInnerNgFormToForm; private addEventsToContext; private setValidationMsgs; protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any): void; highlightInvalidFields(): void; validateFieldsOnSubmit(): boolean; onPropertyChange(key: any, nv: any, ov?: any): void; onResult(data: any, status: any, event?: any): void; toggleMessage(show: boolean, msg?: string, type?: string, header?: string): void; clearMessage(): void; private setLayoutConfig; registerFormWidget(widget: any): void; registerFormFields(formField: any): void; registerActions(formAction: any): void; updateFormDataOutput(dataObject: any): void; constructDataObject(): {}; updateDataOutput(): void; setFormData(data: any): void; resetFormState(): void; reset(): void; submitForm($event: any): void; showButtons(position: any): any; expandCollapsePanel(): void; onDataSourceChange(): void; onFieldDefaultValueChange(field: any, nv: any): void; onFieldValueChange(): void; generateFormFields(): Promise; readonly mode: any; readonly dirty: boolean; readonly invalid: boolean; readonly touched: boolean; invokeActionEvent($event: any, expression: string): void; }