# `Ethers.Transaction.Eip1559`
[🔗](https://github.com/ExWeb3/elixir_ethers/blob/v0.6.12/lib/ethers/transaction/eip1559.ex#L1)

Transaction struct and protocol implementation for Ethereum Improvement Proposal (EIP) 1559
transactions. EIP-1559 introduced a new fee market mechanism with base fee and priority fee.

See: https://eips.ethereum.org/EIPS/eip-1559

# `t`

```elixir
@type t() :: %Ethers.Transaction.Eip1559{
  access_list: [{binary(), [binary()]}],
  chain_id: non_neg_integer(),
  gas: non_neg_integer(),
  input: binary(),
  max_fee_per_gas: non_neg_integer(),
  max_priority_fee_per_gas: non_neg_integer(),
  nonce: non_neg_integer(),
  to: Ethers.Types.t_address() | nil,
  value: non_neg_integer()
}
```

A transaction type following EIP-1559 (Type-2) and incorporating the following fields:
- `chain_id` - chain ID of network where the transaction is to be executed
- `nonce` - sequence number for the transaction from this sender
- `max_priority_fee_per_gas` - maximum fee per gas (in wei) to give to validators as priority fee (introduced in EIP-1559)
- `max_fee_per_gas` - maximum total fee per gas (in wei) willing to pay (introduced in EIP-1559)
- `gas` - maximum amount of gas allowed for transaction execution
- `to` - destination address for transaction, nil for contract creation
- `value` - amount of ether (in wei) to transfer
- `input` - data payload of the transaction
- `access_list` - list of addresses and storage keys to warm up (introduced in EIP-2930)

---

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