# tmux_schema:field_metadata/0

- **Package:** libtmux_erlang
- **Language:** Erlang
- **Kind:** typealias
- **Source:** https://github.com/libtmux/libtmux-erlang/blob/d1b6308440cf9eb8f6647e7ae434bce60e849368/apps/libtmux_erlang/src/tmux_schema.erl#L35
- **Page:** https://libtmux.org/en/erlang/latest/reference/t-tmux_schema-field_metadata-0/

```
-type field_metadata() ::
          #{type := value_type(),
            wire := binary(),
            stable := binary(),
            required := boolean(),
            nullable := boolean(),
            format => binary(),
            capture_codec => escaped_columns_v1,
            minimum => integer()}.
```

Generated field contract. stable is a versioned portable identity; wire is the JSON key. required controls construction and nullable permits known absence. format is present only for directly observed tmux fields; derived fields omit it. capture_codec identifies an admitted batched source encoding; its absence selects isolated reads for that entity. minimum tightens an integer field's lower bound. Field names themselves are the keys returned by `fields/1`, not this map's wire or stable values.
