import * as ng from "@angular/core"; import { OnSizeChangeArgs } from "cmf.core.controls/src/directives/elementQuery/elementQuery"; /** * Size of the property that trigger the change from side-by-side to topLeft layout. * 192 is the value of the 'label_size' and 'value_size'. '8' the margin between them * 'label_size' + 'margin_size' + 'value_size' */ export declare const PROPERTY_MIN_WIDTH: number; /** * Type if layout */ export declare enum LayoutType { SideBySide = 0, TopLeft = 1 } /** * Interface to send in the event emitter */ export interface ContainerSizeChangeArgs { forceLayout?: LayoutType; onSizeChangeArgs: OnSizeChangeArgs; } export declare class PropertyContainerService { /** * Number of property editors available inside propertyContainer */ private numberEditors; /** * Number of property viewers available inside the property container */ private numberViewers; /** * Event emitter for when a resize event happen in the property container */ onSizeChange: ng.EventEmitter; /** * Event emitter for when a new property editor is added/removed to the propertyContainer * Return the number of editors available */ onSiblingEditorChanged: ng.EventEmitter; /** * Event emitter for when a new property viewer is added/removed to the propertyContainer * Return the number of viewers available */ onSiblingViewerChanged: ng.EventEmitter; /** * Get Number of available property editors inside propertyContainer */ readonly numberOfAvailableEditors: number; /** * Get Number of available property viewers inside propertyContainer */ readonly numberOfAvailableViewers: number; /** * Property editors should call this when registering this service */ registerEditor(): void; /** * Property viewers should call this when registering this service */ registerViewer(): void; /** * Property editors should call this when de-registering this service */ deRegisterEditor(): void; /** * Property viewers should call this when de-registering this service */ deRegisterViewer(): void; }