import {FormMode} from "@app/_components/_abstract/abstract-data-form-component";
import {EventEmitter} from "@angular/core";
import {ModalStatus} from "@app/_helpers/modal.states";
import {FormGroup} from "@angular/forms";

export interface DataFormComponent<T> {
    data?: T;
    mode: FormMode;
    id?: string | number;
    submit: EventEmitter<ModalStatus>;
    form: FormGroup;
    onSubmit(): void;
    ngOnInit(): void;
    getInitialData(): T;
    isEditMode(): boolean;
}