# `BaileysEx.Signal.Address`
[🔗](https://github.com/jeffhuen/baileys_ex/blob/main/lib/baileys_ex/signal/address.ex#L1)

Signal protocol address derived from a WhatsApp JID.

Matches the Baileys `jidToSignalProtocolAddress()` naming rules:
non-WhatsApp domains are encoded as `user_domainType`, and the device number
defaults to `0`.

# `error`

```elixir
@type error() :: :invalid_signal_address
```

# `t`

```elixir
@type t() :: %BaileysEx.Signal.Address{device_id: non_neg_integer(), name: String.t()}
```

# `from_jid`

```elixir
@spec from_jid(String.t()) :: {:ok, t()} | {:error, error()}
```

Constructs a Signal Address handle from a valid user JID.

# `to_string`

```elixir
@spec to_string(t()) :: String.t()
```

Formats a Signal protocol address structure to its native string identifier payload.

---

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