# Closed sets (/docs/reference/closed-sets)

> Every value an enum field accepts: icon names, brand marks, highlighter languages and each smaller set, by field.

A closed set is the list of values one field accepts; any other value is refused. Generated from `PageSchema.toJSONSchema()`.

From `@mdxui/site@7.0.0-alpha.0`. The language set equals `HIGHLIGHT_LANGUAGES`, 44 names.

## Icon names

52 values, accepted by `closing.actions.icon`, `feature-grid.items.icon`, `feature-split.items.icon`, `footer.brand.mark`, `footer.cta.icon`, `hero.actions.icon`, `nav.brand.mark`, `product-head.actions.icon`, `product-head.mark`, `product-list.rows.mark`, `product-list.views.icon`, `stats.items.icon`.

```text
activity anchor arrow-right arrow-up-right badge-check bell blocks bot check chevron-down chevron-left chevron-right clock code compass copy credit-card database file-code-2 file-text files film fingerprint gauge git-commit-horizontal globe history key-round landmark layers layout-grid library link list map-pin menu message-square mic plug radar refresh-cw search shield-check ship shopping-cart sliders-horizontal sparkles terminal ticket waves webhook x
```

## Highlighter languages

44 values, accepted by `terminal.lang`.

```text
text bash sh shell zsh console curl http json jsonc js javascript jsx ts typescript tsx py python go golang rb ruby php java kt kotlin cs csharp rs rust swift sql graphql gql yaml yml toml ini env dotenv html xml diff patch
```

## Every other set

| Values | Fields |
| --- | --- |
| `"none"`, `"section"`, `"compact"`, `"hero"`, `"closing"`, `"footer"`, `"access"`, `"article"`, `"listing"` | `shell.density` |
| `"nav"`, `"bar"`, `"hero"`, `"band"`, `"section"`, `"article"`, `"closing"`, `"footer"` | `section.kind` |
| `"bluesky"`, `"github"`, `"linkedin"`, `"npm"`, `"reddit"`, `"x"`, `"ycombinator"` | `footer.social.mark` |
| `"api-product"`, `"article"`, `"blog"`, `"post"`, `"contact"`, `"directory-list"`, `"directory-product"` | `page.template` |
| `"label"`, `"icon-index"`, `"icon-label"`, `"icon"`, `"none"` | `feature-grid.cellHead` |
| `"GET"`, `"POST"`, `"PUT"`, `"PATCH"`, `"DELETE"` | `api-call.method`, `endpoints.rows.method` |
| `"reddit"`, `"x"`, `"linkedin"`, `"bluesky"`, `"hackernews"` | `article.share.on` |
| `"certificate"`, `"vaultline"`, `"quaypoint"`, `"callboard"`, `"directory"` | `page.theme` |
| `"contained"`, `"bleed"`, `"article"`, `"listing"` | `shell.inset` |
| `"paper"`, `"tint"`, `"plate"`, `"glass"` | `shell.surface` |
| `"none"`, `"dots"`, `"grain"`, `"glow"` | `shell.background` |
| `"columns"`, `"areas"`, `"row"` | `footer.layout` |
| `"none"`, `"sheet"`, `"split"` | `page.frame` |
| `"overlay"`, `"push"` | `nav.menu` |
| `820`, `880` | `nav.collapse` |
| `"centered"`, `"split"` | `hero.layout` |
| `560`, `640` | `hero.stack` |
| `"solid"`, `"ghost"` | `closing.actions.kind`, `hero.actions.kind`, `product-head.actions.kind` |
| `"none"`, `"field"` | `closing.specimen.panel`, `feature-split.specimen.panel`, `hero.specimen.panel`, `steps.specimen.panel` |
| `"compact"`, `"large"` | `bento.head.scale`, `closing.head.scale`, `compare.head.scale`, `cta-form.head.scale`, `endpoints.head.scale`, `faq.head.scale`, `feature-grid.head.scale`, `feature-split.head.scale`, `pricing.head.scale`, `stats.head.scale`, `steps.head.scale`, `text-stack.head.scale` |
| `"stack"`, `"grid"` | `text-stack.layout` |
| `"after"`, `"both"` | `terminal.tabs.lines.space` |
| `"sm"`, `"lg"` | `terminal.tabs.lines.gap` |
| `"ruled"`, `"cards"` | `pricing.layout` |
| `"stack"`, `"split"` | `closing.layout` |
| `"list"`, `"cards"` | `product-list.view` |

