import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, OnInit, QueryList } from '@angular/core'; import { UnsubscribeService } from 'ii-ngx-common'; import { AbstractControl, ControlValueAccessor, FormGroup } from '@angular/forms'; import { ControlChangeData, DynamicField, DynamicForm, DynamicFormButton, FormError, FormSubmitEvent, NgxFormModuleConfig } from '../../types'; import { DynamicFormComponentType } from '../../types/dynamic-form-component-type'; import { FieldComponent } from '../field/field.component'; import { FieldComponentType } from '../../types/field-component-type'; import { LoadDictionaryEvent } from '../../types/load-dictionary-event'; export declare class DynamicFormComponent implements DynamicFormComponentType, OnInit, AfterViewInit { private config; private ngUnsubscribe$; private changeDetectorRef; formDataWithDependencies: DynamicForm; formData: DynamicForm; formCssClass: string; initialValues: Record; showButtons: boolean; buttons: DynamicFormButton[]; submitForm: EventEmitter; loadForm: EventEmitter; groupChange: EventEmitter>; controlChange: EventEmitter; loadDictionary: EventEmitter; group: FormGroup; isSubmitting: boolean; fieldComponents: QueryList; constructor(config: NgxFormModuleConfig, ngUnsubscribe$: UnsubscribeService, changeDetectorRef: ChangeDetectorRef); ngAfterViewInit(): void; ngOnInit(): void; trackByField(index: number, field: DynamicField): string; private watchForDependenciesChange; private applyDependencies; private initGroup; private mergeSchemas; getGroup(): FormGroup; getRawValues(): any; getValues(): any; getFormControl(name: string): AbstractControl; getFormElement(name: string): Component & ControlValueAccessor; getField(name: string): FieldComponentType; onButtonClick(button: DynamicFormButton, event: Event): void; validateAndSubmit(): void; setErrors(formErrors: FormError[]): void; setSubmitting(isSubmitting: boolean): void; setValues(values: Record): void; patchValues(values: Record): void; }