/** Core */ import { CoreComponent } from "cmf.core/src/core"; /** Angular2 */ import * as ng from "@angular/core"; /** Nested components */ import { PropertiesEditorProperty, PropertyChangeArgs } from "../propertiesEditor/propertiesEditor"; import Cmf from "cmf.lbos"; import { EntityPropertyService, EditMode, PropertyOptions } from "./entityPropertyService"; export { PropertyChangeArgs }; export { PropertyOptions }; /** * Edit Mode for controls (Edit contemplates Update and UpdateTemplate) */ export { EditMode }; /** * Entity property editor component. * * ### Inputs * `object` : **properties** - The object containing the entity type properties. It is treated as an Immutable object by the component. * * ## Example * * Assume this HTML Template * * ```html * * * * ``` * * @class EntityPropertiesEditor */ export declare class EntityPropertiesEditor extends CoreComponent implements ng.OnChanges { private _elementRef; private _ngZone; private _propertyService; private _keyValueDiffers; /** * Labels and properties that will be passed to the nested component */ _filteredProperties: { [key: string]: PropertiesEditorProperty; }; /** * the EditMode for the current context */ private _editMode; /** * Entity type properties */ properties: { [key: string]: PropertyOptions | string; }; /** * Entity */ instance: Cmf.Foundation.BusinessObjects.Entity; /** * override the number of bootstrap columns used for the value column */ valueNumberOfColumns: number; /** * Property Change event emitter. */ propertyChange: ng.EventEmitter; /** * the EditMode for the current context */ editMode: any; constructor(_elementRef: ng.ElementRef, _ngZone: ng.NgZone, _propertyService: EntityPropertyService, _keyValueDiffers: ng.KeyValueDiffers); propertyChanged(event: any): void; /** * On changes method - fetch metadata properties and update component properties */ ngOnChanges(changes: any): void; } export declare class EntityPropertiesEditorModule { }