Skip to content

FeatureConfig

Declarative feature configuration interface.

This interface is intentionally empty in core — it is populated via module augmentation by feature side-effect imports (@toolbox-web/grid/features/selection, etc.). Third-party plugins can also augment this interface to add their own features.

// Each feature import augments this interface:
import '@toolbox-web/grid/features/selection';
import '@toolbox-web/grid/features/filtering';
grid.gridConfig = {
features: {
selection: 'range', // ← typed by selection feature module
filtering: { debounceMs: 200 }, // ← typed by filtering feature module
},
};
PropertyTypeDescription
clipboard?boolean | ClipboardConfigEnable clipboard copy/paste. Requires selection.
columnVirtualization?boolean | ColumnVirtualizationConfigEnable horizontal column virtualization.
contextMenu?boolean | ContextMenuConfigEnable right-click context menu.
editing?boolean | click | dblclick | manual | EditingConfigEnable inline cell editing.
export?boolean | ExportConfigEnable data export (CSV, Excel, etc.).
filtering?boolean | FilterConfig<TRow>Enable column filtering.
groupingColumns?boolean | GroupingColumnsConfigEnable column grouping headers.
groupingRows?GroupingRowsConfigEnable row grouping with expand/collapse.
masterDetail?MasterDetailConfigEnable master-detail rows with expandable detail panels.
multiSort?boolean | multi | MultiSortConfig | singleEnable multi-column sorting.
sorting?boolean | multi | MultiSortConfig | single⚠️
pinnedColumns?booleanEnable column pinning (left/right).
pinnedRows?boolean | PinnedRowsConfigEnable pinned (frozen) rows at top/bottom of the grid.
pivot?PivotConfigEnable pivot table mode.
print?boolean | PrintConfigEnable print support with configurable layout.
reorderColumns?boolean | ReorderConfigEnable column drag-to-reorder.
reorder?boolean | ReorderConfig⚠️
reorderRows?boolean | RowReorderConfigEnable row drag-to-reorder.
rowReorder?boolean | RowReorderConfig⚠️
responsive?boolean | ResponsivePluginConfig<unknown>Enable responsive column hiding based on breakpoints.
selection?row | cell | range | SelectionConfig<TRow>Enable cell/row/range selection.
serverSide?ServerSideConfigEnable server-side data fetching, sorting, filtering, etc.
tree?boolean | TreeConfigEnable tree (hierarchical) data display with expand/collapse.
undoRedo?boolean | UndoRedoConfigEnable undo/redo for cell edits. Requires editing.
visibility?boolean | VisibilityConfigEnable column visibility toggling.
AI assistants: For complete API documentation, implementation guides, and code examples for this library, see https://raw.githubusercontent.com/OysteinAmundsen/toolbox/main/llms-full.txt