import { Ext } from "../../tr-grid-util/es6/Ext.js"; import { GridPlugin } from "../../tr-grid-util/es6/GridPlugin.js"; import { GroupDefinitions } from "../../tr-grid-util/es6/GroupDefinitions.js"; import { cloneObject, injectCss, prettifyCss, deepEqual, isEmptyObject } from "../../tr-grid-util/es6/Util.js"; declare namespace ColumnGroupingPlugin { type Options = { groupDefinitions: ColumnGroupingPlugin.GroupDefinitions|null, minChildCount?: number|null }; type GroupDefinitions = (ColumnGroupingPlugin.GroupDefinition)[]|null; type GroupDefinition = { id: string, name: string, tooltip?: (boolean|string)|null, children: (string)[]|null, alignment?: string|null, render?: ((...params: any[]) => any)|null, backgroundColor?: string|null }; } declare class ColumnGroupingPlugin extends GridPlugin { constructor(options?: ColumnGroupingPlugin.Options|null); public getName(): string; public initialize(host: any, options?: any): void; public beforeProcessOption(optionName: string, optionValue: any): any; public unload(host: any): void; public config(options: any): void; public getConfigObject(gridOptions?: any): any; public renderGroups(): void; public getMutualGroupId(colRefs: (string|number)[]|null): string; public addColumnToGroup(column: any, groupId: string, colIndex: number): void; public addGroup(groupDef: ColumnGroupingPlugin.GroupDefinition|null): string; public addColumnGrouping(groupDef: ColumnGroupingPlugin.GroupDefinition|null): void; public removeGroup(groupId: string): boolean; public getGroupDefinition(groupId: string): ColumnGroupingPlugin.GroupDefinition|null; public getGroupDefinitions(): ColumnGroupingPlugin.GroupDefinitions; public setGroupDefinition(groupId: string, groupDef?: ColumnGroupingPlugin.GroupDefinition|null): string; public setGroupDefinitions(groupDefs: ColumnGroupingPlugin.GroupDefinitions|null): void; public setGroupChildren(groupId: string, newChildList: (string)[]|null): boolean; public setGroupName(groupId: string, groupName: string): void; public getGroupChildren(groupId: string): (string)[]|null; public getChildColumnIndices(groupId: string): (number)[]|null; public getGroupIds(colRef: string|number|null): (string)[]|null; public getMaxGroupLevel(): number; public getGroupLevel(groupId: string): number; public getCellInfo(e: Element|Event|MouseEvent|null): any; public moveColumnIntoGroup(colRef: number|string|null, to: number, groupId: string): void; public setColumnParent(colRef: number|string|null, groupId: string): boolean; public addGroupChild(parentId: string, childRef: number|string|null): boolean; public removeGroupChild(parentId: string, childRef: number|string|null): boolean; public unsetParent(childRef: number|string|null): boolean; public getValidDestinationIndex(id: string, destCol: number|string|null): number; public moveGroup(id: string, destCol?: (number|string)|null): void; public reorderColumns(colList: (number|string)[]|null, destCol?: (number|string)|null): boolean; public moveColumnById(srcCol: number|string|null, destCol?: (number|string)|null): boolean; public pinGroup(groupId: string, side?: string|null): void; public unpinGroup(groupId: string, dest?: (number|string)|null): void; public selectGroupHeaders(colIndices: (number)[]|null): void; public static getObjectIndex(column: any): number; public static getObjectId(column: any): string; } export default ColumnGroupingPlugin; export { ColumnGroupingPlugin, ColumnGroupingPlugin as ColumnGrouping, ColumnGroupingPlugin as ColumnGroupingExtension };