---
title: "Grid Events Reference"
framework: react
version: "36.1.0"
---

# Grid Events Reference

To listen to events see [Grid Events](https://www.ag-grid.com/react-data-grid/grid-interface/#grid-events).

### Accessories

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `toolPanelVisibleChanged` | `ToolPanelVisibleChangedEvent` |  |  | The tool panel visibility has changed. Fires twice if switching between panels - once with the old panel and once with the new panel. See [Tool Panel Events](https://www.ag-grid.com/react-data-grid/tool-panel/#events) for more information. |
| `toolPanelSizeChanged` | `ToolPanelSizeChangedEvent` |  |  | The tool panel size has been changed. See [Tool Panel Events](https://www.ag-grid.com/react-data-grid/tool-panel/#events) for more information. |
| `columnMenuVisibleChanged` | `ColumnMenuVisibleChangedEvent` |  |  | The column menu visibility has changed. Fires twice if switching between tabs - once with the old tab and once with the new tab. See [Column Menu API / Events](https://www.ag-grid.com/react-data-grid/column-menu/#column-menu-api--events) for more information. |
| `contextMenuVisibleChanged` | `ContextMenuVisibleChangedEvent` |  |  | The context menu visibility has changed (opened or closed). See [Context Menu API / Events](https://www.ag-grid.com/react-data-grid/context-menu/#context-menu-api--events) for more information. |

### Calculated Columns

See [Calculated Columns](https://www.ag-grid.com/react-data-grid/calculated-columns/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `calculatedColumnCreated` | `CalculatedColumnCreatedEvent` |  |  | A calculated column has been created. See [Calculated Columns Events](https://www.ag-grid.com/react-data-grid/calculated-columns/#events) for more information. |
| `calculatedColumnExpressionChanged` | `CalculatedColumnExpressionChangedEvent` |  |  | A calculated column expression has changed. See [Calculated Columns Events](https://www.ag-grid.com/react-data-grid/calculated-columns/#events) for more information. |
| `calculatedColumnRemoved` | `CalculatedColumnRemovedEvent` |  |  | A calculated column has been removed. See [Calculated Columns Events](https://www.ag-grid.com/react-data-grid/calculated-columns/#events) for more information. |
| `calculatedColumnValidationStateChanged` | `CalculatedColumnValidationStateChangedEvent` |  |  | A calculated column expression has changed between valid and invalid. See [Calculated Columns Events](https://www.ag-grid.com/react-data-grid/calculated-columns/#events) for more information. |

### Clipboard

See [Clipboard](https://www.ag-grid.com/react-data-grid/clipboard/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `cutStart` | `CutStartEvent` |  |  | Cut operation has started. See [Clipboard Events](https://www.ag-grid.com/react-data-grid/clipboard/#clipboard-events) for more information. |
| `cutEnd` | `CutEndEvent` |  |  | Cut operation has ended. See [Clipboard Events](https://www.ag-grid.com/react-data-grid/clipboard/#clipboard-events) for more information. |
| `pasteStart` | `PasteStartEvent` |  |  | Paste operation has started. See [Clipboard Events](https://www.ag-grid.com/react-data-grid/clipboard/#clipboard-events) for more information. |
| `pasteEnd` | `PasteEndEvent` |  |  | Paste operation has ended. See [Clipboard Events](https://www.ag-grid.com/react-data-grid/clipboard/#clipboard-events) for more information. |

### Columns

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `columnVisible` | `ColumnVisibleEvent` |  |  | A column, or group of columns, was hidden / shown. |
| `columnPinned` | `ColumnPinnedEvent` |  |  | A column, or group of columns, was pinned / unpinned. |
| `columnHeaderNameChanged` | `ColumnHeaderNameChangedEvent` |  |  | A column or column group header name changed. Fires for edits made through the UI header-name editor and for header names applied via column state (e.g. `applyColumnState`, state reset). Inspect `event.source` to distinguish (`'uiColumnHeaderEdit'` for editor changes). See [Editable Header Name](https://www.ag-grid.com/react-data-grid/column-headers/#editable-header-name) for more information. |
| `columnResized` | `ColumnResizedEvent` |  |  | A column was resized. |
| `columnMoved` | `ColumnMovedEvent` |  |  | A column was moved. |
| `columnValueChanged` | `ColumnValueChangedEvent` |  |  | A value column was added or removed. |
| `columnPivotModeChanged` | `ColumnPivotModeChangedEvent` |  |  | The pivot mode flag was changed. |
| `columnPivotChanged` | `ColumnPivotChangedEvent` |  |  | A pivot column was added, removed or order changed. |
| `columnGroupOpened` | `ColumnGroupOpenedEvent` |  |  | A column group was opened / closed. |
| `newColumnsLoaded` | `NewColumnsLoadedEvent` |  |  | User set new columns. |
| `gridColumnsChanged` | `GridColumnsChangedEvent` |  |  | The list of grid columns changed. |
| `displayedColumnsChanged` | `DisplayedColumnsChangedEvent` |  |  | The list of displayed columns changed. This can result from columns open / close, column move, pivot, group, etc. |
| `virtualColumnsChanged` | `VirtualColumnsChangedEvent` |  |  | The list of rendered columns changed (only columns in the visible scrolled viewport are rendered by default). |
| `columnHeaderMouseOver` | `ColumnHeaderMouseOverEvent` |  |  | A mouse cursor is initially moved over a column header. |
| `columnHeaderMouseLeave` | `ColumnHeaderMouseLeaveEvent` |  |  | A mouse cursor is moved out of a column header. |
| `columnHeaderClicked` | `ColumnHeaderClickedEvent` |  |  | A click is performed on a column header. |
| `columnHeaderContextMenu` | `ColumnHeaderContextMenuEvent` |  |  | A context menu action, such as right-click or context menu key press, is performed on a column header. |
| `pivotMaxColumnsExceeded` | `PivotMaxColumnsExceededEvent` |  |  | Exceeded the `pivotMaxGeneratedColumns` limit when generating columns. |
| `columnsReset` | `ColumnsResetEvent` |  |  | Columns have been reset to their default state as reflected by the colDefs. |

### Components

See [Components](https://www.ag-grid.com/react-data-grid/components/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `componentStateChanged` | `ComponentStateChangedEvent` |  |  | Only used by Angular, React and VueJS AG Grid components (not used if doing plain JavaScript). If the grid receives changes due to bound properties, this event fires after the grid has finished processing the change. |

### Drag and Drop

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `dragStarted` | `DragStartedEvent` |  |  | When dragging starts. This could be any action that uses the grid's Drag and Drop service, e.g. Column Moving, Column Resizing, Range Selection, Fill Handle, etc. |
| `dragStopped` | `DragStoppedEvent` |  |  | When dragging stops. This could be any action that uses the grid's Drag and Drop service, e.g. Column Moving, Column Resizing, Range Selection, Fill Handle, etc. |
| `dragCancelled` | `DragCancelledEvent` |  |  | When dragging is cancelled stops. This is caused by pressing `Escape` while dragging elements within the grid that uses the grid's Drag and Drop service, e.g. Column Moving, Column Resizing, Range Selection, Fill Handle, etc. |

### Editing

See [Cell Editing](https://www.ag-grid.com/react-data-grid/cell-editing/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `cellValueChanged` | `CellValueChangedEvent` |  |  | Cell value has changed. This occurs after the following scenarios: - Editing. Will not fire if any of the following are true: new value is the same as old value; `readOnlyEdit = true`; editing was cancelled (e.g. Escape key was pressed); or new value is of the wrong cell data type for the column. - Cut. - Paste. - Cell clear (pressing Delete key). - Fill handle. - Copy range down. - Undo and redo. See [Editing Events](https://www.ag-grid.com/react-data-grid/cell-editing/#editing-events) for more information. |
| `cellEditRequest` | `CellEditRequestEvent` |  |  | Value has changed after editing. Only fires when `readOnlyEdit=true`. See [Read Only Edit](https://www.ag-grid.com/react-data-grid/value-setters/#read-only-edit) for more information. |
| `rowValueChanged` | `RowValueChangedEvent` |  |  | A cell's value within a row has changed. This event corresponds to Full Row Editing only. See [Full Row Editing](https://www.ag-grid.com/react-data-grid/cell-editing-full-row/) for more information. |
| `cellEditingStarted` | `CellEditingStartedEvent` |  |  | Editing a cell has started. See [Editing Events](https://www.ag-grid.com/react-data-grid/cell-editing/#editing-events) for more information. |
| `cellEditingStopped` | `CellEditingStoppedEvent` |  |  | Editing a cell has stopped. See [Editing Events](https://www.ag-grid.com/react-data-grid/cell-editing/#editing-events) for more information. |
| `rowEditingStarted` | `RowEditingStartedEvent` |  |  | Editing a row has started (when row editing is enabled). When row editing, this event will be fired once and `cellEditingStarted` will be fired for each individual cell. Only fires when doing Full Row Editing. See [Full Row Editing](https://www.ag-grid.com/react-data-grid/cell-editing-full-row/) for more information. |
| `rowEditingStopped` | `RowEditingStoppedEvent` |  |  | Editing a row has stopped (when row editing is enabled). When row editing, this event will be fired once and `cellEditingStopped` will be fired for each individual cell. Only fires when doing Full Row Editing. See [Full Row Editing](https://www.ag-grid.com/react-data-grid/cell-editing-full-row/) for more information. |
| `batchEditingStarted` | `BatchEditingStartedEvent` |  |  | Fired when the first edit is made after `api.startBatchEdit()` is called. This event fires lazily — not immediately on `api.startBatchEdit()`, but on the first cell value change or editor open within the batch session. See [Batch Editing](https://www.ag-grid.com/react-data-grid/cell-editing-batch/#batch-editing-lifecycle) for more information. |
| `batchEditingStopped` | `BatchEditingStoppedEvent` |  |  | Batch editing has stopped (when batch editing is enabled). Contains a list of edits if the batch was committed via `api.commitBatchEdit()`. See [Batch Editing](https://www.ag-grid.com/react-data-grid/cell-editing-batch/#batch-editing-lifecycle) for more information. |
| `bulkEditingStarted` | `BulkEditingStartedEvent` |  |  | Bulk editing has started. See [Bulk Cell Edit](https://www.ag-grid.com/react-data-grid/cell-selection/#bulk-cell-edit) for more information. |
| `bulkEditingStopped` | `BulkEditingStoppedEvent` |  |  | Bulk editing has stopped. See [Bulk Cell Edit](https://www.ag-grid.com/react-data-grid/cell-selection/#bulk-cell-edit) for more information. |
| `undoStarted` | `UndoStartedEvent` |  |  | Undo operation has started. See [Undo / Redo Events](https://www.ag-grid.com/react-data-grid/undo-redo-edits/#undo--redo-events) for more information. |
| `undoEnded` | `UndoEndedEvent` |  |  | Undo operation has ended. See [Undo / Redo Events](https://www.ag-grid.com/react-data-grid/undo-redo-edits/#undo--redo-events) for more information. |
| `redoStarted` | `RedoStartedEvent` |  |  | Redo operation has started. See [Undo / Redo Events](https://www.ag-grid.com/react-data-grid/undo-redo-edits/#undo--redo-events) for more information. |
| `redoEnded` | `RedoEndedEvent` |  |  | Redo operation has ended. See [Undo / Redo Events](https://www.ag-grid.com/react-data-grid/undo-redo-edits/#undo--redo-events) for more information. |
| `cellSelectionDeleteStart` | `CellSelectionDeleteStartEvent` |  |  | Cell selection delete operation (cell clear) has started. See [Delete Cell Selection](https://www.ag-grid.com/react-data-grid/cell-selection-api-reference/#reference-editing-cellSelectionDeleteStart) for more information. |
| `cellSelectionDeleteEnd` | `CellSelectionDeleteEndEvent` |  |  | Cell selection delete operation (cell clear) has ended. See [Delete Cell Selection](https://www.ag-grid.com/react-data-grid/cell-selection-api-reference/#reference-editing-cellSelectionDeleteEnd) for more information. |

### Filtering

See [Filtering](https://www.ag-grid.com/react-data-grid/filtering-overview/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `filterOpened` | `FilterOpenedEvent` |  |  | Filter has been opened. See [Filter Events](https://www.ag-grid.com/react-data-grid/filter-api/#filter-events) for more information. |
| `filterChanged` | `FilterChangedEvent` |  |  | Filter has been modified and applied. See [Filter Events](https://www.ag-grid.com/react-data-grid/filter-api/#filter-events) for more information. |
| `filterModified` | `FilterModifiedEvent` |  |  | Filter was modified but not applied (when using `enableFilterHandlers = false`). Used when filters have 'Apply' buttons. See [Filter Events](https://www.ag-grid.com/react-data-grid/filter-api/#filter-events) for more information. |
| `filterUiChanged` | `FilterUiChangedEvent` |  |  | Filter UI was modified (when using `enableFilterHandlers = true`). See [Filter Events](https://www.ag-grid.com/react-data-grid/filter-api/#filter-events) for more information. |
| `floatingFilterUiChanged` | `FloatingFilterUiChangedEvent` |  |  | Floating filter UI modified (when using `enableFilterHandlers = true`). See [Filter Events](https://www.ag-grid.com/react-data-grid/filter-api/#filter-events) for more information. |
| `advancedFilterBuilderVisibleChanged` | `AdvancedFilterBuilderVisibleChangedEvent` |  |  | Advanced Filter Builder visibility has changed (opened or closed). See [Advanced Filter](https://www.ag-grid.com/react-data-grid/filter-advanced/#configuring-advanced-filter-builder) for more information. |

### Find

See [Find](https://www.ag-grid.com/react-data-grid/find/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `findChanged` | `FindChangedEvent` |  |  | Find details have changed (e.g. Find search value, active match, or updates to grid cells). See [Find](https://www.ag-grid.com/react-data-grid/find/) for more information. |

### Grid Lifecycle

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `gridReady` | `GridReadyEvent` |  |  | The grid has initialised and is ready for most api calls, but may not be fully rendered yet See [Grid Ready](https://www.ag-grid.com/react-data-grid/grid-lifecycle/#grid-ready) for more information. |
| `gridPreDestroyed` | `GridPreDestroyedEvent` |  |  | Invoked immediately before the grid is destroyed. This is useful for cleanup logic that needs to run before the grid is torn down. See [Grid Pre-Destroyed](https://www.ag-grid.com/react-data-grid/grid-lifecycle/#grid-pre-destroyed) for more information. |
| `firstDataRendered` | `FirstDataRenderedEvent` |  |  | Fired the first time data is rendered into the grid. Use this event if you want to auto resize columns based on their contents See [First Data Rendered](https://www.ag-grid.com/react-data-grid/grid-lifecycle/#first-data-rendered) for more information. |
| `modelUpdated` | `ModelUpdatedEvent` |  |  | Displayed rows have changed. Triggered after sort, filter or tree expand / collapse events. |
| `stateUpdated` | `StateUpdatedEvent` |  |  | Grid state has been updated. See [Grid State](https://www.ag-grid.com/react-data-grid/grid-state/) for more information. |

### Integrated Charts

See [Integrated Charts Events](https://www.ag-grid.com/react-data-grid/integrated-charts-events/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `chartCreated` | `ChartCreatedEvent` |  |  | A chart has been created. See [Chart Created](https://www.ag-grid.com/react-data-grid/integrated-charts-events/#chartcreated) for more information. |
| `chartRangeSelectionChanged` | `ChartRangeSelectionChangedEvent` |  |  | The data range for the chart has been changed. See [Chart Range Selection Changed](https://www.ag-grid.com/react-data-grid/integrated-charts-events/#chartrangeselectionchanged) for more information. |
| `chartOptionsChanged` | `ChartOptionsChangedEvent` |  |  | Formatting changes have been made by users through the Customize Panel. See [Chart Options Changed](https://www.ag-grid.com/react-data-grid/integrated-charts-events/#chartoptionschanged) for more information. |
| `chartDestroyed` | `ChartDestroyedEvent` |  |  | A chart has been destroyed. See [Chart Destroyed](https://www.ag-grid.com/react-data-grid/integrated-charts-events/#chartdestroyed) for more information. |

### Keyboard Navigation

See [Keyboard Navigation](https://www.ag-grid.com/react-data-grid/keyboard-navigation/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `cellKeyDown` | `CellKeyDownEvent \| FullWidthCellKeyDownEvent` |  |  | DOM event `keyDown` happened on a cell. See [Keyboard Events](https://www.ag-grid.com/react-data-grid/keyboard-navigation/#keyboard-events) for more information. |

### Pagination

See [Row Pagination](https://www.ag-grid.com/react-data-grid/row-pagination/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `paginationChanged` | `PaginationChangedEvent` |  |  | Triggered every time the paging state changes. Some of the most common scenarios for this event to be triggered are:The page size changesThe current shown page is changedNew data is loaded onto the grid |

### Row Drag and Drop

See [Row Dragging](https://www.ag-grid.com/react-data-grid/row-dragging/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `rowDragEnter` | `RowDragEnterEvent` |  |  | A drag has started, or dragging was already started and the mouse has re-entered the grid having previously left the grid. See [Row Drag Events](https://www.ag-grid.com/react-data-grid/row-dragging-unmanaged/#row-drag-events) for more information. |
| `rowDragMove` | `RowDragMoveEvent` |  |  | The mouse has moved while dragging. See [Row Drag Events](https://www.ag-grid.com/react-data-grid/row-dragging-unmanaged/#row-drag-events) for more information. |
| `rowDragLeave` | `RowDragLeaveEvent` |  |  | The mouse has left the grid while dragging. See [Row Drag Events](https://www.ag-grid.com/react-data-grid/row-dragging-unmanaged/#row-drag-events) for more information. |
| `rowDragEnd` | `RowDragEndEvent` |  |  | The drag has finished over the grid. See [Row Drag Events](https://www.ag-grid.com/react-data-grid/row-dragging-unmanaged/#row-drag-events) for more information. |
| `rowDragCancel` | `RowDragCancelEvent` |  |  | The drag has been cancelled over the grid. See [Row Drag Events](https://www.ag-grid.com/react-data-grid/row-dragging-unmanaged/#row-drag-events) for more information. |

### Row Grouping

See [Row Grouping](https://www.ag-grid.com/react-data-grid/grouping/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `columnRowGroupChanged` | `ColumnRowGroupChangedEvent` |  |  | A row group column was added, removed or reordered. |
| `rowGroupOpened` | `RowGroupOpenedEvent` |  |  | A row group was opened or closed. |
| `expandOrCollapseAll` | `ExpandOrCollapseAllEvent` |  |  | Fired when calling either of the API methods `expandAll()` or `collapseAll()`. |

### Row Pinning

See [Row Pinning](https://www.ag-grid.com/react-data-grid/row-pinning/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `pinnedRowDataChanged` | `PinnedRowDataChangedEvent` |  |  | The client has set new pinned row data into the grid. |
| `pinnedRowsChanged` | `PinnedRowsChangedEvent` |  |  | A row has been pinned to top or bottom, or unpinned. |

### Row Size

See [Row Resizing](https://www.ag-grid.com/react-data-grid/row-numbers/#row-resizing) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `rowResizeStarted` | `RowResizeStartedEvent` |  |  | The row resize has started (Row Numbers Feature) See [Row Resizing](https://www.ag-grid.com/react-data-grid/row-numbers/#row-resizing) for more information. |
| `rowResizeEnded` | `RowResizeEndedEvent` |  |  | The row resize has ended (Row Numbers Feature) See [Row Resizing](https://www.ag-grid.com/react-data-grid/row-numbers/#row-resizing) for more information. |

### RowModel: Client-Side

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `rowDataUpdated` | `RowDataUpdatedEvent` |  |  | Client-Side Row Model only. The client has updated data for the grid by either a) setting new Row Data or b) Applying a Row Transaction. See [Row Data Updated](https://www.ag-grid.com/react-data-grid/grid-lifecycle/#row-data-updated) for more information. |
| `asyncTransactionsFlushed` | `AsyncTransactionsFlushedEvent` |  |  | Async transactions have been applied. Contains a list of all transaction results. See [Flush Async Transactions](https://www.ag-grid.com/react-data-grid/data-update-high-frequency/#flush-async-transactions) for more information. |

### RowModel: Server-Side

See [Server-Side Row Model](https://www.ag-grid.com/react-data-grid/server-side-model/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `storeRefreshed` | `StoreRefreshedEvent` |  |  | A server side store has finished refreshing. See [SSRM Refresh](https://www.ag-grid.com/react-data-grid/server-side-model-updating-refresh/) for more information. |

### Selection

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `headerFocused` | `HeaderFocusedEvent` |  |  | Header is focused. |
| `cellClicked` | `CellClickedEvent` |  |  | Cell is clicked. |
| `cellDoubleClicked` | `CellDoubleClickedEvent` |  |  | Cell is double clicked. |
| `cellFocused` | `CellFocusedEvent` |  |  | Cell is focused. |
| `cellMouseOver` | `CellMouseOverEvent` |  |  | Mouse entered cell. |
| `cellMouseOut` | `CellMouseOutEvent` |  |  | Mouse left cell. |
| `cellMouseDown` | `CellMouseDownEvent` |  |  | Mouse down on cell. |
| `rowClicked` | `RowClickedEvent` |  |  | Row is clicked. |
| `rowDoubleClicked` | `RowDoubleClickedEvent` |  |  | Row is double clicked. |
| `rowSelected` | `RowSelectedEvent` |  |  | Row is selected or deselected. The event contains the node in question, so call the node's `isSelected()` method to see if it was just selected or deselected. See [Selection Events](https://www.ag-grid.com/react-data-grid/row-selection-api-reference/#reference-selection-rowSelected) for more information. |
| `selectionChanged` | `SelectionChangedEvent` |  |  | Row selection is changed. Use the `selectedNodes` field to get the list of selected nodes at the time of the event. When using the SSRM, `selectedNodes` will be `null` when selecting all nodes. Instead, refer to the `serverSideState` field. See [Selection Events](https://www.ag-grid.com/react-data-grid/row-selection-api-reference/#reference-selection-selectionChanged) for more information. |
| `cellContextMenu` | `CellContextMenuEvent` |  |  | Cell is right clicked. |
| `cellSelectionChanged` | `CellSelectionChangedEvent` |  |  | A change to cell selection has occurred. See [Cell Selection Changed Event](https://www.ag-grid.com/react-data-grid/cell-selection-api-reference/#selection-events) for more information. |
| `fillStart` | `FillStartEvent` |  |  | Fill operation has started. See [Fill Range Event](https://www.ag-grid.com/react-data-grid/cell-selection-fill-handle/#reference-selection-fillStart) for more information. |
| `fillEnd` | `FillEndEvent` |  |  | Fill operation has ended. See [Fill Range Event](https://www.ag-grid.com/react-data-grid/cell-selection-fill-handle/#reference-selection-fillEnd) for more information. |

### Sorting

See [Row Sorting](https://www.ag-grid.com/react-data-grid/row-sorting/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `sortChanged` | `SortChangedEvent` |  |  | Sort has changed. The grid also listens for this and updates the model. |

### Tooltips

See [Tooltip Component](https://www.ag-grid.com/react-data-grid/tooltips/) for more information.

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `tooltipShow` | `TooltipShowEvent` |  |  | A tooltip has been displayed |
| `tooltipHide` | `TooltipHideEvent` |  |  | A tooltip was hidden |

### Viewport

| Property | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `gridSizeChanged` | `GridSizeChangedEvent` |  |  | The size of the grid `div` has changed. In other words, the grid was resized. See [Grid Layout](https://www.ag-grid.com/react-data-grid/grid-size/) for more information. |
| `virtualRowRemoved` | `VirtualRowRemovedEvent` |  |  | A row was removed from the DOM, for any reason. Use to clean up resources (if any) used by the row. |
| `viewportChanged` | `ViewportChangedEvent` |  |  | Which rows are rendered in the DOM has changed. |
| `bodyScroll` | `BodyScrollEvent` |  |  | The body was scrolled horizontally or vertically. |
| `bodyScrollEnd` | `BodyScrollEndEvent` |  |  | Main body of the grid has stopped scrolling, either horizontally or vertically. |
