CCTPDeployment

Documentation for eth_defi.cctp.whitelist.CCTPDeployment Python class.

class CCTPDeployment

Bases: object

CCTP V2 deployment configuration for guard whitelisting.

All CCTP V2 contracts share the same address across EVM chains (CREATE2), so this mainly configures which destination domains are allowed.

Attributes summary

token_messenger

message_transmitter

token_minter

allowed_destination_domains

Methods summary

__init__([token_messenger, ...])

create_for_chain(chain_id[, ...])

Create a CCTP deployment configuration for a given chain.

__init__(token_messenger=<factory>, message_transmitter=<factory>, token_minter=<factory>, allowed_destination_domains=<factory>)
Parameters
Return type

None

classmethod create_for_chain(chain_id, allowed_destinations=None)

Create a CCTP deployment configuration for a given chain.

Supports both mainnet and testnet (Sepolia) chain IDs. Testnet chains automatically use testnet contract addresses.

Parameters
  • chain_id (int) – EVM chain ID of the source chain (e.g. 1 for Ethereum, 421614 for Arbitrum Sepolia).

  • allowed_destinations (Optional[list[int]]) – List of EVM chain IDs for allowed destination chains. Automatically converted to CCTP domain IDs. If None, no destinations are allowed (add them separately).

Returns

Configured CCTPDeployment instance.

Raises

ValueError – If the source chain or a destination chain is not supported.

Return type

eth_defi.cctp.whitelist.CCTPDeployment