# API Reference

| Module | Description |
| --- | --- |
| **ABI** | |
| [Abi](/api/Abi) | Utilities & types for working with [Application Binary Interfaces (ABIs)](https://docs.soliditylang.org/en/latest/abi-spec.html) |
| [AbiConstructor](/api/AbiConstructor) | Utilities & types for working with [Constructors](https://docs.soliditylang.org/en/latest/abi-spec.html#json) on ABIs. |
| [AbiError](/api/AbiError) | Utilities & types for working with [Errors](https://docs.soliditylang.org/en/latest/abi-spec.html#json) on ABIs. |
| [AbiEvent](/api/AbiEvent) | Utilities & types for working with [Events](https://docs.soliditylang.org/en/latest/abi-spec.html#json) on ABIs. |
| [AbiFunction](/api/AbiFunction) | Utilities & types for working with [Functions](https://docs.soliditylang.org/en/latest/abi-spec.html#json) on ABIs. |
| [AbiItem](/api/AbiItem) | Utilities & types for working with [ABI Items](https://docs.soliditylang.org/en/latest/abi-spec.html#json) |
| [AbiParameter](/api/AbiParameter) | Utilities & types for working with a single [ABI Parameter](https://docs.soliditylang.org/en/latest/abi-spec.html#types). |
| [AbiParameters](/api/AbiParameters) | Utilities & types for encoding, decoding, and working with [ABI Parameters](https://docs.soliditylang.org/en/latest/abi-spec.html#types) |
| **Addresses** | |
| [Address](/api/Address) | Utility functions for working with Ethereum addresses. |
| [ContractAddress](/api/ContractAddress) | Utility functions for computing Contract Addresses. |
| **Authorization (EIP-7702)** | |
| [Authorization](/api/Authorization) | Utility functions for working with [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) Authorization lists & tuples. |
| **Binary State Tree (EIP-7864)** | |
| [BinaryStateTree](/api/BinaryStateTree) | Utility functions for working with [EIP-7864](https://eips.ethereum.org/EIPS/eip-7864) Binary State Trees. |
| **Blobs (EIP-4844)** | |
| [Blobs](/api/Blobs) | Utility functions for working with [EIP-4844](https://eips.ethereum.org/EIPS/eip-4844) Blobs. |
| [Kzg](/api/Kzg) | Utility functions for working with KZG Commitments. |
| **Blobs (EIP-7594)** | |
| [BlobCells](/api/BlobCells) | Cell-level helpers for [PeerDAS (EIP-7594)](https://eips.ethereum.org/EIPS/eip-7594): deriving the 128 cells and cell KZG proofs of an extended blob, and verifying cell proofs against blob commitments. |
| **Crypto** | |
| [AesGcm](/api/AesGcm) | Utilities & types for working with AES-GCM encryption. Internally uses the [Web Crypto API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Crypto_API). |
| [Bls](/api/Bls) | Utility functions for [BLS12-381](https://hackmd.io/@benjaminion/bls12-381) cryptography. |
| [BlsPoint](/api/BlsPoint) | Utility functions for working with BLS12-381 points. |
| [CoseKey](/api/CoseKey) | Utility functions for converting between COSE\_Key and P256 public keys. |
| [Ed25519](/api/Ed25519) | Utilities for working with Ed25519 signatures and key pairs. |
| [Hash](/api/Hash) | Utility functions for hashing (keccak256, sha256, etc). |
| [HdKey](/api/HdKey) | Utility functions for generating and working with [BIP-32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki) HD Wallets. |
| [Keystore](/api/Keystore) | Utilities & types for working with [Keystores](https://ethereum.org/en/developers/docs/data-structures-and-encoding/web3-secret-storage). |
| [Mnemonic](/api/Mnemonic) | Utility functions for generating and working with [BIP-39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) mnemonics. |
| [P256](/api/P256) | Utility functions for [NIST P256](https://csrc.nist.gov/csrc/media/events/workshop-on-elliptic-curve-cryptography-standards/documents/papers/session6-adalier-mehmet.pdf) ECDSA cryptography. |
| [PublicKey](/api/PublicKey) | Utility functions for working with ECDSA public keys. |
| [Secp256k1](/api/Secp256k1) | Utility functions for [secp256k1](https://www.secg.org/sec2-v2.pdf) ECDSA cryptography. |
| [Signature](/api/Signature) | Utility functions for working with ECDSA signatures. |
| [WebAuthnP256](/api/WebAuthnP256) | Utility functions for [NIST P256](https://csrc.nist.gov/csrc/media/events/workshop-on-elliptic-curve-cryptography-standards/documents/papers/session6-adalier-mehmet.pdf) ECDSA cryptography using the [Web Authentication API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Authentication_API) |
| [WebCryptoP256](/api/WebCryptoP256) | Utility functions for [NIST P256](https://csrc.nist.gov/csrc/media/events/workshop-on-elliptic-curve-cryptography-standards/documents/papers/session6-adalier-mehmet.pdf) ECDSA cryptography using the [Web Crypto API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Crypto_API) |
| [X25519](/api/X25519) | Utilities for working with X25519 elliptic curve Diffie-Hellman key agreement. |
| **Data** | |
| [Base32](/api/Base32) | Utility functions for working with Base32 values using the [BIP-173](https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki) bech32 alphabet. |
| [Base58](/api/Base58) | Utility functions for working with [Base58](https://digitalbazaar.github.io/base58-spec/) values. |
| [Base64](/api/Base64) | Utility functions for working with [RFC-4648](https://datatracker.ietf.org/doc/html/rfc4648) Base64. |
| [Bech32m](/api/Bech32m) | Utility functions for [BIP-350](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki) bech32m encoding and decoding. |
| [Bytes](/api/Bytes) | A set of Ethereum-related utility functions for working with [`Uint8Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array) instances. |
| [Cbor](/api/Cbor) | Functions for encoding and decoding CBOR (Concise Binary Object Representation) data. |
| [CompactSize](/api/CompactSize) | Utility functions for [Bitcoin's CompactSize](https://en.bitcoin.it/wiki/Protocol_documentation#Variable_length_integer) variable-length integer encoding. |
| [Hex](/api/Hex) | A set of Ethereum-related utility functions for working with hexadecimal string values (e.g. `"0xdeadbeef"`). |
| [Rlp](/api/Rlp) | Utility functions for encoding and decoding [Recursive Length Prefix](https://ethereum.org/en/developers/docs/data-structures-and-encoding/rlp/) structures. |
| [Value](/api/Value) | Utility functions for displaying and parsing Ethereum Values as defined under **2.1. Value** in the [Ethereum Yellow Paper](https://ethereum.github.io/yellowpaper/paper.pdf) |
| **ENS** | |
| [Ens](/api/Ens) | Utility functions for working with ENS names. |
| **Execution Spec** | |
| [AccessList](/api/AccessList) | Utilities & types for working with Access Lists as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/4140e528360fea53c34a766d86a000c6c039100e/src/schemas/transaction.yaml#L73) |
| [AccountProof](/api/AccountProof) | Utilities & types for working with Account Proofs as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/state.yaml) |
| [Block](/api/Block) | Utilities & types for working with Blocks as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/block.yaml) |
| [BlockOverrides](/api/BlockOverrides) | Utilities & types for working with **Block Overrides**. |
| [Bloom](/api/Bloom) | Utility functions for working with Bloom Filters as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/block.yaml) |
| [Fee](/api/Fee) | Utility types for working with Ethereum transaction fees and fee history. |
| [Filter](/api/Filter) | Utilities & types for working with Filters as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/filter.yaml) |
| [Log](/api/Log) | Utilities & types for working with Logs as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/receipt.yaml) |
| [StateOverrides](/api/StateOverrides) | Utilities & types for working with **State Overrides**. |
| [Transaction](/api/Transaction) | Utilities & types for working with **Transactions** as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/transaction.yaml) |
| [TransactionReceipt](/api/TransactionReceipt) | Utilities & types for working with **Transaction Receipts** as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/receipt.yaml) |
| [TransactionRequest](/api/TransactionRequest) | Utilities & types for working with **Transaction Requests** as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/4aca1d7a3e5aab24c8f6437131289ad386944eaa/src/schemas/transaction.yaml#L358-L423) |
| [Withdrawal](/api/Withdrawal) | Utilities & types for working with Withdrawals as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/withdrawal.yaml) |
| **JSON** | |
| [Json](/api/Json) | Utility functions for working with JSON (with support for `bigint`). |
| **JSON-RPC** | |
| [RpcRequest](/api/RpcRequest) | Utility types & functions for working with [JSON-RPC 2.0 Requests](https://www.jsonrpc.org/specification#request_object) and Ethereum JSON-RPC methods as defined on the [Ethereum API specification](https://github.com/ethereum/execution-apis) |
| [RpcResponse](/api/RpcResponse) | Utility types & functions for working with [JSON-RPC 2.0 Responses](https://www.jsonrpc.org/specification#response_object) |
| [RpcSchema](/api/RpcSchema) | Utility types for working with Ethereum JSON-RPC namespaces & schemas. |
| [RpcTransport](/api/RpcTransport) | Utility functions for working with JSON-RPC Transports. |
| **Providers (EIP-1193)** | |
| [Provider](/api/Provider) | Utilities & types for working with [EIP-1193 Providers](https://eips.ethereum.org/EIPS/eip-1193) |
| **Sign-In with Ethereum (EIP-4361)** | |
| [Siwe](/api/Siwe) | Utility functions for working with [EIP-4361: Sign-In with Ethereum](https://eips.ethereum.org/EIPS/eip-4361) |
| **Signed & Typed Data** | |
| [PersonalMessage](/api/PersonalMessage) | Utilities & types for working with [EIP-191 Personal Messages](https://eips.ethereum.org/EIPS/eip-191#version-0x45-e) |
| [TypedData](/api/TypedData) | Utility functions for working with [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) |
| [ValidatorData](/api/ValidatorData) | Utilities & types for working with [EIP-191 Validator Data](https://eips.ethereum.org/EIPS/eip-191#0x00) |
| **Transaction Envelopes** | |
| [TransactionEnvelope](/api/TransactionEnvelope) | Errors & Types for working with Transaction Envelopes. |
| [TxEnvelopeEip1559](/api/TxEnvelopeEip1559) | Utility functions for working with [EIP-1559 Typed Transaction Envelopes](https://eips.ethereum.org/EIPS/eip-1559) |
| [TxEnvelopeEip2930](/api/TxEnvelopeEip2930) | Utility functions for working with [EIP-2930 Typed Transaction Envelopes](https://eips.ethereum.org/EIPS/eip-2930) |
| [TxEnvelopeEip4844](/api/TxEnvelopeEip4844) | Utility functions for working with [EIP-4844 Typed Transaction Envelopes](https://eips.ethereum.org/EIPS/eip-4844) |
| [TxEnvelopeEip7702](/api/TxEnvelopeEip7702) | Utility functions for working with [EIP-7702 Typed Transaction Envelopes](https://eips.ethereum.org/EIPS/eip-7702) |
| [TxEnvelopeLegacy](/api/TxEnvelopeLegacy) | Utility functions for working with **Legacy Transaction Envelopes**. |
