# `Sycophant.Schema.NormalizedSchema`

Holds a normalized JSON Schema alongside its pre-resolved form and origin tag.

Wire adapters receive `json_schema` (a plain map) for encoding.
Validation uses `resolved` (an `ExJsonSchema.Schema.Root`).
Key coercion to atoms is applied only when `source` is `:zoi`.

# `t`

```elixir
@type t() :: %Sycophant.Schema.NormalizedSchema{
  json_schema: map(),
  resolved: ExJsonSchema.Schema.Root.t(),
  source: :zoi | :json_schema
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
