# FeatureName

> _Since v0.6.0_

Feature names supported by the Grid directive, derived from the core
augmentable `FeatureConfig` interface — stays in lockstep with core: any
feature that augments `FeatureConfig` (via `declare module
'@toolbox-web/grid'`) is automatically a member of this union, including
third-party features.

The `__brand` sentinel declared on core's `FeatureConfig` (to keep the
interface non-empty for excess-property checks) is filtered out — it is
not a real feature name.

The `feature-registry.spec.ts` superset check enforces the strict
additive contract (gh #356 §7): every previously-accepted name must stay
assignable to the derived union.

```ts
type FeatureName = Exclude<keyof FeatureConfig, "__brand">
```
