# getGroupCheckStates

Calculates group selection state. Returns rejection reasons when collapsed groups, missing row IDs, or other row models prevent a reliable result.

Canonical: https://grid.syidax.com/docs/methods/getGroupCheckStates/

<a id="meaning"></a>

## What does this API do?

Calculates group selection state. Returns rejection reasons when collapsed groups, missing row IDs, or other row models prevent a reliable result.

API for Pro features: Row grouping, built-in aggregation and group totals

<a id="contract"></a>

## Exact input and result types

```typescript
getGroupCheckStates(options?: SyGridGroupCheckStatesOptions): Promise<SyGridGroupCheckStatesReport>
```

| Arguments | Required | Type |
| --- | --- | --- |
| options | Optional | SyGridGroupCheckStatesOptions |

The return type is `Promise<SyGridGroupCheckStatesReport>`.

<a id="usage"></a>

## Usage flow

After registering and initializing the Grid element, call grid.getGroupCheckStates(…). Read the return value with await. For methods returning a boolean or report, inspect the result before continuing.

<a id="types"></a>

## Read related types

- [SyGridGroupCheckStatesOptions](https://grid.syidax.com/docs/types/SyGridGroupCheckStatesOptions.md)
- [SyGridGroupCheckStatesReport](https://grid.syidax.com/docs/types/SyGridGroupCheckStatesReport.md)

<a id="recipes"></a>

## Feature explanations and examples

- [Grouping and aggregation](https://grid.syidax.com/docs/features/row-grouping.md) — Row grouping collects source rows with the same region or team into expandable groups. Unlike column groups, which organize headers, row groups change displayed rows and aggregation results.
