# PinnedRowsConfig

> _Since v0.1.1_

Configuration options for the status bar plugin *

## Properties

| Property | Type | Description |
| -------- | ---- | ----------- |
| `slots?` | <code><a href="/grid/plugins/pinned-rows/types/pinnedrowslot/">PinnedRowSlot</a>[]</code> | Unified ordered list of pinned-row slots. When provided, `aggregationRows`, `customPanels`, `position`, `showRowCount`, `showSelectedCount` and `showFilteredCount` are ignored — slots are rendered in declared order within their `position` ('top' or 'bottom', default 'bottom'). |
| `position?` | <code><a href="/grid/plugins/pinned-rows/types/pinnedrowsposition/">PinnedRowsPosition</a></code> | ⚠️ Position of the info bar (default: 'bottom'). |
| `showRowCount?` | <code>boolean</code> | ⚠️ Show total row count in info bar (default: true). |
| `showSelectedCount?` | <code>boolean</code> | ⚠️ Show selected row count in info bar (default: true). |
| `showFilteredCount?` | <code>boolean</code> | ⚠️ Show filtered row count when filter is active (default: true). |
| `customPanels?` | <code><a href="/grid/plugins/pinned-rows/interfaces/pinnedrowspanel/">PinnedRowsPanel</a>[]</code> | ⚠️ Custom panels to display in the info bar. |
| `aggregationRows?` | <code><a href="/grid/plugins/pinned-rows/interfaces/aggregationrowconfig/">AggregationRowConfig</a>[]</code> | ⚠️ Aggregation rows (footer/header rows with computed values). |
| `fullWidth?` | <code>boolean</code> | Default fullWidth mode for all aggregation rows. When true, each aggregation row renders as a single spanning cell with label and aggregated values inline. When false (default), rows render per-column cells aligned to the grid template. Individual `AggregationRowConfig.fullWidth` (or `AggregationSlot.fullWidth`) overrides this. |

### Property Details

#### slots

Unified ordered list of pinned-row slots. When provided, `aggregationRows`,
`customPanels`, `position`, `showRowCount`, `showSelectedCount` and
`showFilteredCount` are ignored — slots are rendered in declared order
within their `position` ('top' or 'bottom', default 'bottom').

When omitted, the plugin synthesizes a slot list from the legacy fields so
existing consumers keep their current DOM byte-identical.

```ts
import { rowCountPanel, selectedCountPanel } from '@toolbox-web/grid/plugins/pinned-rows';

new PinnedRowsPlugin({
  slots: [
    { position: 'top', render: rowCountPanel() },
    { position: 'top', aggregators: { price: 'sum' }, label: 'Total' },
    { position: 'bottom', render: selectedCountPanel() },
  ],
});
```

---

#### fullWidth

**Default:** `false`

---
