# Contract reference

> Every field of the component manifest and of the data API, generated from the contract.

> Generated from the contract schemas of `@taggor/contract` 1.10.0 by `pnpm docs:contract`; do not edit.

The contract is what a component declares and what the platform checks. These pages list every
field of each contract document with its type, limits and description. They are generated from the
JSON Schemas of `@taggor/contract`, so they cannot drift from what the build enforces.

| Page | What it covers |
| --- | --- |
| [Manifest](manifest/) | The top-level fields of a component manifest, size hints, permissions, locales, assets and the named types |
| [Props](props/) | The nine prop types, how an attribute becomes a value, and the schema of a prop |
| [Events, slots and theming](events-and-slots/) | Events, slots, parts and CSS variables |
| [Data](data/) | Collections and tracked interactions, and the payloads between a component and the data API |
| [Other documents](other/) | The library manifest, the source package config and a build diagnostic |

Each document is also published as a JSON Schema under `/schema/<name>/v1.json`
(`component-manifest`, `library-manifest`, `data-api`, `build-diagnostic`, `taggor-config`).
For the prose guide, read [the component contract](../../contract/).
