import { SlickEventHandler, type SlickDataView, type SlickEventData, type SlickGrid } from '../core/index.js'; import type { Column, Formatter, GridOption, GroupingFormatterItem, GroupItemMetadataProviderOption, ItemMetadata, OnClickEventArgs, SlickPlugin } from '../interfaces/index.js'; /** * Provides item metadata for group (SlickGroup) and totals (SlickTotals) rows produced by the DataView. * This metadata overrides the default behavior and formatting of those rows so that they appear and function * correctly when processed by the grid. * * This class also acts as a grid plugin providing event handlers to expand & collapse groups. * If "grid.registerPlugin(...)" is not called, expand & collapse will not work. */ export declare class SlickGroupItemMetadataProvider implements SlickPlugin { readonly pluginName = "GroupItemMetadataProvider"; protected _eventHandler: SlickEventHandler; protected _grid: SlickGrid; protected _options: GroupItemMetadataProviderOption; protected _defaults: GroupItemMetadataProviderOption; constructor(inputOptions?: GroupItemMetadataProviderOption); /** Getter of the SlickGrid Event Handler */ get eventHandler(): SlickEventHandler; /** Getter of SlickGrid DataView object */ protected get dataView(): SlickDataView; get gridOptions(): GridOption; init(grid: SlickGrid, inputOptions?: GroupItemMetadataProviderOption): void; destroy(): void; dispose(): void; getOptions(): GroupItemMetadataProviderOption; setOptions(inputOptions: GroupItemMetadataProviderOption): void; getGroupRowMetadata(item: GroupingFormatterItem, _row: number): ItemMetadata; getTotalsRowMetadata(item: { group: GroupingFormatterItem; }, _row: number): { selectable: boolean; focusable: boolean | undefined; cssClasses: string; formatter: Formatter | undefined; editorClass: null; }; protected defaultGroupCellFormatter(_row: number, _cell: number, _value: any, _columnDef: Column, item: any): any; protected defaultTotalsCellFormatter(_row: number, _cell: number, _value: any, columnDef: Column, item: any, grid: SlickGrid): string | HTMLElement; /** Handle a grid cell clicked, it could be a Group that is being collapsed/expanded or do nothing when it's not */ protected handleGridClick(e: SlickEventData, args: OnClickEventArgs): void; /** * Handle a keyboard down event on a grouping cell. * Supports Space, ArrowRight (expand), and ArrowLeft (collapse) for a11y consistency. */ protected handleGridKeyDown(e: SlickEventData): void; protected handleDataViewExpandOrCollapse(item: any): void; } //# sourceMappingURL=slickGroupItemMetadataProvider.d.ts.map