The cell coords that is being rendered.
Optionaldata-Absolute cell-coordinate stamp ("rowIndex:colIndex"), provided by the layer.
A renderer that spreads its rest props onto its root element carries this automatically; a
custom renderer must place it on its root itself. It is the hook the layer's live suppression
rule targets (see CellLayerProps.suppressCell) — per-coordinate CSS over immutable cached
tiles, so transient state (an open editor) never invalidates the tile cache. Coordinates are
SHEET-absolute (never tile- or pane-relative): a cell rendered in more than one pane (a merge
spanning a freeze line) matches the one selector in every instance.
OptionalheaderOptionalhorizontalOptionalisWhether a filter holds a condition over this header (ISheetHeader.getFilteredRanges): a row header draws it as filtered, as Excel's blue row numbers.
OptionalisOptionalisOptionalonCallback for when a filter has been clicked.
The mouse event
OptionalpropsCustom properties for the filter button
OptionalrangeThe RangeCoords that is being rendered.
OptionalrenderCallback for creating a custom column button.
A React Element representing the ColumnButton.
A value to render.
OptionalverticalOptionalzoomThe zoom CellRendererProps.bounds were measured at.
A renderer is handed the zoom, never the pane it came from: everything it needs to draw one cell
is data (the value, the bounds, the scale), so it stays a pure function of its props and can be
rendered anywhere a caller can supply bounds — a preview, a tooltip, a cell drawn outside its own
column. A renderer that genuinely needs the live view (hover, scroll) reads it from context with
useGridPane.
The bounds already have the zoom applied; this is for what CSS pixels do not carry — an unscaled inset, a glyph size, a stroke width the renderer picks itself.
OptionalzoomThis is not the default grid zoom this is just for rendering.
The range bounds relative to the current viewport and zoom.