# `Diffo.Provider.Calculations.TypedCharacteristics`
[🔗](https://github.com/diffo-dev/diffo/blob/v0.9.0/lib/diffo/provider/components/calculations/typed_characteristics.ex#L5)

Loads all typed `BaseCharacteristic`-derived records associated with an
instance.

For each `characteristic :role, ValueModule` declaration on the instance's
resource module — including both singular and `{:array, ValueModule}` forms
— this calculation queries `ValueModule` by `instance_id == record.id` and
returns the collected records as a flat list.

Used by `BaseInstance` to surface typed characteristics alongside the
dynamic `Diffo.Provider.Characteristic` records in the
`serviceCharacteristic` / `resourceCharacteristic` JSON view (#169).

# `describe`

# `has_calculate?`

# `has_expression?`

# `init`

# `strict_loads?`

---

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