import { OnInit, AfterViewInit, OnDestroy, EventEmitter, OnChanges, SimpleChanges, ChangeDetectorRef } from '@angular/core'; import { FormGroup, FormBuilder } from '@angular/forms'; import { InjectableDialogComponentInterface } from '../../../../common/modules/inject-content/models/injectable-dialog-component.interface'; import { FormGroupDialogResponse, FormGroupConfig, FormGroupInputData } from '../../models/form-group.models'; import { ResponsiveService } from '../../../smz-dialogs/services/responsive.service'; export declare class FormGroupComponent implements OnInit, AfterViewInit, OnChanges, OnDestroy, InjectableDialogComponentInterface { fb: FormBuilder; responsive: ResponsiveService; private cdf; isComponentActive: boolean; form: FormGroup; isValid: boolean; /** hasChanges ocorre quando os valores do formulário são diferentes do último state salvo. */ hasChanges: boolean; config: FormGroupConfig; statusChanges: EventEmitter; private _files; private isFirstUpdate; private emitChanges; private originalState; constructor(fb: FormBuilder, responsive: ResponsiveService, cdf: ChangeDetectorRef); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; /** Limpa todos os valores default */ clearFormValues(): void; /** Atualiza o state do formulário com seus valores atuais */ resetState(): void; /** Atualiza o hasChanges */ updateHasChanges(): void; /** Atualiza os valores dos inputs com seus dados default */ updateFormValues(): void; ngAfterViewInit(): void; private checkCustomFunctions; /** Retorna o objeto com os valores dos inputs; Esse objeto seguirá a nomemclatura do campo name de cada inputConfig */ getData(): FormGroupDialogResponse; onFileChange(event: File[], input: FormGroupInputData): void; ngOnDestroy(): void; }