# `ExWapp.Message.Handler.Inbound.Decryptor`
[🔗](https://github.com/elchemista/ex_wapp/blob/v0.1.5/lib/ex_wapp/message/handler/inbound/decryptor.ex#L1)

Signal and sender-key decryption for inbound message envelopes.

This module resolves and tries encrypted payload/sender candidates, updates
Signal sessions, processes group sender-key distributions, and normalizes
decrypt failures. It returns plaintext without classifying message content.

# `success`

```elixir
@type success() :: %{
  message_data: map(),
  plaintext: binary(),
  updated_sessions: ExWapp.Signal.SessionStore.t(),
  sender_jid: String.t(),
  payload: map(),
  sender_key_distribution_count: non_neg_integer(),
  enc_type: term()
}
```

# `decrypt`

```elixir
@spec decrypt(map(), map(), term(), term(), map()) ::
  {:ok, success(), map()} | {:error, map(), map()}
```

Decrypts one encrypted inbound message without classifying its content.

---

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