# `Jido.Chat.StateAdapters.Memory`
[🔗](https://github.com/agentjido/jido_chat/blob/v1.0.0/lib/jido/chat/state_adapters/memory.ex#L1)

Default in-memory state adapter.

This preserves the current pure-struct semantics while routing all state access
through the `Jido.Chat.StateAdapter` contract.

# `t`

```elixir
@type t() :: %Jido.Chat.StateAdapters.Memory{
  channel_state: %{optional(String.t()) =&gt; map()},
  dedupe: MapSet.t(Jido.Chat.StateAdapter.dedupe_key()),
  dedupe_order: [Jido.Chat.StateAdapter.dedupe_key()],
  locks: %{optional(String.t()) =&gt; map()},
  pending_locks: %{optional(String.t()) =&gt; [map()]},
  subscriptions: MapSet.t(String.t()),
  thread_state: %{optional(String.t()) =&gt; map()}
}
```

---

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