import { BeanStub } from '../context/beanStub'; import type { AgColumnGroupEvent, Column, ColumnGroup, ColumnGroupShowType, ColumnPinnedType, HeaderColumnId } from '../interfaces/iColumn'; import type { AgColumn } from './agColumn'; import type { AgProvidedColumnGroup } from './agProvidedColumnGroup'; import type { AbstractColDef, ColGroupDef, HeaderLocation } from './colDef'; export declare const isColumnGroup: (col: Column | ColumnGroup | string) => col is AgColumnGroup; /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */ export declare class AgColumnGroup extends BeanStub implements ColumnGroup { readonly providedColumnGroup: AgProvidedColumnGroup; readonly groupId: string; readonly partId: number; pinned: ColumnPinnedType; readonly isColumn: false; readonly uniqueId: HeaderColumnId; /** Sanitised version of the column id */ readonly colIdSanitised: string; children: (AgColumn | AgColumnGroup)[] | null; displayedChildren: (AgColumn | AgColumnGroup)[] | null; autoHeaderHeight: number | null; left: number | null; oldLeft: number | null; parent: AgColumnGroup | null; /** Most recent build token that claimed this instance — sweeps use it to spot orphans. */ buildToken: number; constructor(providedColumnGroup: AgProvidedColumnGroup, groupId: string, partId: number, pinned: ColumnPinnedType); getParent(): AgColumnGroup | null; getUniqueId(): HeaderColumnId; isEmptyGroup(): boolean; /** Returns true only when every leaf column in this group is currently moving. */ isMoving(): boolean; checkLeft(): void; getLeft(): number | null; getOldLeft(): number | null; setLeft(left: number | null): void; getPinned(): ColumnPinnedType; getGroupId(): string; getDisplayName(location?: HeaderLocation): string; getPartId(): number; getActualWidth(): number; isResizable(): boolean; getMinWidth(): number; getDisplayedChildren(): (AgColumn | AgColumnGroup)[] | null; getLeafColumns(): AgColumn[]; getDisplayedLeafColumns(): AgColumn[]; /** 1-based aria column index for this group's header cell: first leaf column's index */ get ariaColIndex(): number; getDefinition(): AbstractColDef | null; getColGroupDef(): ColGroupDef | null; isPadding(): boolean; isExpandable(): boolean; isExpanded(): boolean; isAutoHeaderHeight(): boolean; getAutoHeaderHeight(): number | null; /** Returns true if the header height has changed */ setAutoHeaderHeight(height: number): boolean; private addDisplayedLeafColumns; private addLeafColumns; getChildren(): (AgColumn | AgColumnGroup)[] | null; getColumnGroupShow(): ColumnGroupShowType | undefined; getProvidedColumnGroup(): AgProvidedColumnGroup; getPaddingLevel(): number; } /** First/last (`last`) leaf under `group`, walking `children` or `displayedChildren` (`displayed`) — the * `get(Displayed)LeafColumns()` edge without allocating the array; `null` if empty. * @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */ export declare const edgeLeafColumn: (group: AgColumnGroup, displayed: boolean, last: boolean) => AgColumn | null; /** Walk up `column`'s parent chain to the group sitting at header-row `level`. */ export declare const getColGroupAtLevel: (column: AgColumn, level: number) => AgColumnGroup | null;