import { Framework } from "cmf.core/src/core"; import * as ng from "@angular/core"; import { LayoutBaseDef } from "../../directives/layout/layoutDef"; /** * Base data grid columns */ export interface DataGridColumn { field?: string; title?: string; format?: string; template?: string; width?: string; customClassField?: string; hidden?: boolean; groupHeaderTemplate?: string | any; headerTemplate?: string; sortable?: boolean; disableToolTip?: boolean; locked?: boolean; } /** * Layout definition for the Grid */ export declare class GridLayoutDef extends LayoutBaseDef { gridPageSize?: number; isExpanded?: boolean; columns?: Array; } /** * Layout definition for the GridColumn */ export declare class GridColumnLayoutDef { uniqueId: string; width?: string; isDisplayed?: boolean; /** * Get unique identifier for a column taking into account the following priorities: * a) field (if unique in the set) * b) field + template (if unique in the set) * c) field + template + index * @param column Column from which uniqueId will be generated * @param allColumns All grid columns (to check for uniqueness) */ static getUniqueId(framework: Framework, column: DataGridColumn, columnIdx?: number, allColumns?: DataGridColumn[]): string; private static sanitizeString; private static sanitizeTemplateToString; } /** * Bag to share data between sliding window and dependent children */ export declare class SlidingGridBag { /** * Store inner grids layouts */ slidingWindowGridLayouts: GridLayoutDef[]; /** * When some inner grid columns options change */ onInnerGridColumnsSave: ng.EventEmitter; }