### ObjectValue · type

The value type produced by `object` for a given shape. Keys whose field
type permits `undefined` (e.g. wrapped in `opt`) become optional; all
others are required.

**Type:** `Prettify<
    { [K in keyof S as undefined extends UnwrapField<S[K]> ? never : K]: UnwrapField<S[K]> } &
    { [K in keyof S as undefined extends UnwrapField<S[K]> ? K : never]?: UnwrapField<S[K]> }
>`
