# `EEVM.Transaction`
[🔗](https://github.com/mw2000/eevm/blob/main/lib/eevm/transaction.ex#L1)

Ethereum transaction wire-format structs.

These structs represent signed transaction payloads as they appear on the
network (legacy and typed transaction envelopes). They are intentionally
separate from `EEVM.Context.Transaction`, which models execution context.

# `access_list`

```elixir
@type access_list() :: [{address(), [hash32()]}]
```

# `address`

```elixir
@type address() :: binary()
```

# `authorization_tuple`

```elixir
@type authorization_tuple() :: EEVM.Transaction.Authorization.t()
```

# `hash32`

```elixir
@type hash32() :: binary()
```

# `t`

```elixir
@type t() ::
  EEVM.Transaction.Legacy.t()
  | EEVM.Transaction.AccessList.t()
  | EEVM.Transaction.FeeMarket.t()
  | EEVM.Transaction.Blob.t()
  | EEVM.Transaction.SetCode.t()
```

---

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