import { AfterContentInit, ElementRef, EventEmitter } from '@angular/core';
import { EasyFormConfig } from "../tokens/easy-form-config";
import { EasyForm } from "../easy-form";
import { FormGroup } from "@angular/forms";
import * as i0 from "@angular/core";
/**
 * EasyFormComponent is the main component that is used to create forms
 *
 * @see `EasyForm`
 */
export declare class EasyFormComponent implements AfterContentInit {
    elementRef: ElementRef<HTMLDivElement>;
    _formConfig: EasyFormConfig | null;
    formConfig: EasyFormConfig;
    /**
     * EasyForm instance
     *
     * @type `EasyForm`
     */
    form: EasyForm;
    focusFirstError: boolean;
    /**
     * Submit event output
     */
    efSubmit: EventEmitter<FormGroup<any>>;
    constructor();
    ngAfterContentInit(): void;
    getComponentType(type: string): import("../tokens/easy-form-config").EasyFormControlComponent | import("../tokens/easy-form-config").LazyLoadingComponent;
    handleSubmit($event: any): void;
    private defaultConfig;
    static ɵfac: i0.ɵɵFactoryDeclaration<EasyFormComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EasyFormComponent, "easy-form", never, { "form": { "alias": "form"; "required": true; }; "focusFirstError": { "alias": "focusFirstError"; "required": false; }; }, { "efSubmit": "efSubmit"; }, never, ["*"], true, never>;
}
