import { EventEmitter, OnInit } from '@angular/core';
import { SchemaFieldHostComponent, SchemaFieldLoaderComponentBase } from '../schema/schema-field-host.component';
import { DataSchema, FormData, SchemaFieldContext } from '../schema/schema-models';
import * as i0 from "@angular/core";
/**
 * Schema Form Component
 * It takes the schema and data and other necessary inputs then dynamically renders the form UI.
 */
export declare class SchemaFormContentComponent implements OnInit {
    private internalSchema;
    private internalData;
    fieldHostComponent: SchemaFieldHostComponent;
    /**
     * It gets and sets the schema.
     */
    get schema(): DataSchema;
    set schema(value: DataSchema);
    /**
     * It gets and sets the form data.
     */
    get data(): FormData;
    set data(value: FormData);
    dataChange: EventEmitter<any>;
    context: SchemaFieldContext;
    /**
     * The form controller  which is used to provide some behaviors from the host of the form.
     * Custom validation methods can be provided by it.
     */
    formController: any;
    isEditorMode: boolean;
    formActionExecuted: EventEmitter<{
        action: string;
        data: any;
    }>;
    get isFormValid(): boolean;
    get isFormDirty(): boolean;
    onFormActionExecuted(action: string, data: any): void;
    ngOnInit(): void;
    getFormContainerLoaderComponent(): SchemaFieldLoaderComponentBase;
    static ɵfac: i0.ɵɵFactoryDeclaration<SchemaFormContentComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SchemaFormContentComponent, "sme-schema-form-content", never, { "schema": "schema"; "data": "data"; "formController": "formController"; "isEditorMode": "isEditorMode"; }, { "dataChange": "dataChange"; "formActionExecuted": "formActionExecuted"; }, never, never, false, never>;
}
