[**@wocart/theme v4.1.0**](../../README)

***

[@wocart/theme](../../README) / [index](../README) / PageData

# Interface: PageData

One composed surface's persisted document.

At runtime the envelope is **forward-compatible**: `parsePageData` and
`PageDataSchema` carry unknown *top-level* keys through verbatim, so a later
writer can record metadata without a `PageData.version` bump. Those keys
are never read by the renderer, which only walks `sections`, and they are
deliberately **not declared here**: an index signature would turn a
`page.sectons` typo into `unknown` instead of a compile error. A key is
declared once it has a reader — `theme`, the document's provenance.

Unknown keys *inside* an instance are still stripped — the envelope is
extensible, the instance is not.

## Properties

### hiddenAreas?

> `optional` **hiddenAreas?**: `string`[]

The keys of the theme's areas this page leaves out. Only the areas its
surface lists in `hideableAreas` are left out; read it with `isAreaShown`.

***

### sections

> **sections**: [`ComponentInstance`](ComponentInstance)[]

***

### surface

> **surface**: `string`

***

### theme?

> `optional` **theme?**: `object`

The theme and theme version that wrote the document. A document that
names another theme is reported (`theme-mismatch`): its sections were
composed from another catalog.

#### key

> **key**: `string`

#### version

> **version**: `string`

***

### version

> **version**: `1`
