import { ChangeDetectorRef, EventEmitter, OnChanges, QueryList, SimpleChanges } from "@angular/core";
import { FormGroup } from "@angular/forms";
import { DynamicFormValidationService, DynamicFormControlModel, DynamicFormArrayGroupModel, DynamicFormControlComponent, DynamicFormControlEvent, DynamicTemplateDirective } from "@ng2-dynamic-forms/core";
export declare const enum FoundationFormControlType {
    Array = 1,
    Checkbox = 2,
    Group = 3,
    Input = 4,
    RadioGroup = 5,
    Select = 6,
    Switch = 7,
    TextArea = 8,
}
export declare class DynamicFoundationFormControlComponent extends DynamicFormControlComponent implements OnChanges {
    protected changeDetectorRef: ChangeDetectorRef;
    protected validationService: DynamicFormValidationService;
    contentTemplates: QueryList<DynamicTemplateDirective>;
    inputTemplates: QueryList<DynamicTemplateDirective>;
    bindId: boolean;
    context: DynamicFormArrayGroupModel | null;
    group: FormGroup;
    hasErrorMessaging: boolean;
    model: DynamicFormControlModel;
    blur: EventEmitter<DynamicFormControlEvent>;
    change: EventEmitter<DynamicFormControlEvent>;
    focus: EventEmitter<DynamicFormControlEvent>;
    type: FoundationFormControlType | null;
    constructor(changeDetectorRef: ChangeDetectorRef, validationService: DynamicFormValidationService);
    ngOnChanges(changes: SimpleChanges): void;
    static getFormControlType(model: DynamicFormControlModel): FoundationFormControlType | null;
}
