import { ComponentFactory, ComponentFactoryResolver, ComponentRef, OnChanges, OnDestroy, SimpleChanges, Type } from '@angular/core'; import { TerraFormTypeInterface } from '../model/terra-form-type.interface'; import { FormEntryContainerDirective } from './form-entry-container.directive'; import { TerraFormFieldInterface } from '../model/terra-form-field.interface'; import * as i0 from "@angular/core"; export declare class TerraFormEntryBase implements OnChanges, OnDestroy { protected _componentFactoryResolver: ComponentFactoryResolver; /** * @description Specification of the formField that should be displayed. */ inputFormField: TerraFormFieldInterface; /** * @description Map of supported control types. If the given formField's type is not supported, a TerraTextInputComponent instance is * rendered by default. * Please note: All of the control types contained in this map have to implement the ControlValueAccessor interface. * @default {} - an empty map. Hence, not a single control type is supported and the default type TerraTextInputComponent will be * rendered as well. */ inputControlTypeMap: { [key: string]: Type | TerraFormTypeInterface; }; /** * @description May be used to disable/enable the form field. * @default false */ inputIsDisabled: boolean; protected _container: FormEntryContainerDirective; protected _componentFactory: ComponentFactory; protected _componentRef: ComponentRef; protected get _componentInstance(): any; constructor(_componentFactoryResolver: ComponentFactoryResolver); /** * Implementation of the OnChanges life cycle hook. * @description Updates the input bindings of the dynamically created component instance. * @param changes */ ngOnChanges(changes: SimpleChanges): void; /** * Implementation of the OnDestroy life cycle hook. * @description Destroys the component that has been created dynamically. */ ngOnDestroy(): void; protected _getControlType(fallback?: Type): Type; protected _initComponent(defaultControlType?: Type, projectableNodes?: Array>): void; protected _bindInputProperties(): void; protected _performInputBindings(inputMap: { [key: string]: string; }, optionKey: string): void; private _transformInputPropertyName; /** * Removes the prefix 'input' from the given propertyName and lowercases the succeeding character. * @param propertyName */ private _removeInputPrefix; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }