# AfterCellRenderContext

> _Since v1.2.0_

Context passed to the `afterCellRender` plugin hook.

This provides efficient cell-level access without requiring DOM queries.
Plugins receive this context for each cell as it's rendered, enabling
targeted modifications instead of post-render DOM traversal.

#### Example

```typescript
afterCellRender(context: AfterCellRenderContext): void {
  if (this.isSelected(context.rowIndex, context.colIndex)) {
    context.cellElement.classList.add('selected');
  }
}
```

## Properties

| Property | Type | Description |
| -------- | ---- | ----------- |
| `row` | <code>TRow</code> | The row data object |
| `rowIndex` | <code>number</code> | Zero-based row index in the visible rows array |
| `column` | <code><a href="/grid/api/core/interfaces/columnconfig/">ColumnConfig</a>&lt;TRow&gt;</code> | The column configuration |
| `colIndex` | <code>number</code> | Zero-based column index in the visible columns array |
| `value` | <code>unknown</code> | The cell value (row[column.field]) |
| `cellElement` | <code>HTMLElement</code> | The cell DOM element - can be modified by the plugin |
| `rowElement` | <code>HTMLElement</code> | The row DOM element - for context, prefer using cellElement |
