# HierarchyNode

> _Since v3.9.0_

One node of the row hierarchy. The HierarchyPlugin flattens nodes into the
grid's row list in pre-order, descending into HierarchyNode.children
only when HierarchyNode.expanded is `true`.

## Properties

| Property | Type | Description |
| -------- | ---- | ----------- |
| <span id="row"></span>`row` | <code>unknown</code> | The object emitted into the grid's row list — a source row, or a synthetic row such as a group header. |
| <span id="key"></span>`key?` | <code>string</code> | Contributor-assigned stable key. Passed to the children's HierarchySiblingContext.parentKey. |
| <span id="children"></span>`children?` | <code><a href="/grid/plugins/hierarchy/interfaces/hierarchynode/">HierarchyNode</a>[]</code> | Child nodes. Rendered only while HierarchyNode.expanded is `true`. |
| <span id="expanded"></span>`expanded?` | <code>boolean</code> | Whether HierarchyNode.children are rendered. |
| <span id="shaped"></span>`shaped?` | <code>boolean</code> | `true` when HierarchyNode.children is already final (e.g. a group's members) and must not be passed through the contributors again. Omitted: `children` is a natural sibling list (e.g. a tree row's children) that every contributor gets to reshape. |
