Expand description
cow-chains — Layer 0 chain configuration for the CoW Protocol SDK.
Centralises all deployment-specific knowledge: which chains are supported, where the protocol contracts live, what the native/wrapped tokens are, and how to reach the orderbook API.
This crate sits at Layer 0 of the workspace DAG and has no dependencies on any other internal crate.
§Submodules
| Module | Purpose |
|---|---|
chain | SupportedChainId, Env, API base URLs, explorer links |
chains | Extended chain enums (EvmChains, NonEvmChains), rich ChainInfo metadata, classification helpers |
contracts | Protocol contract addresses (SETTLEMENT_CONTRACT, VAULT_RELAYER, …), CREATE2 helpers, EIP-1967 proxy slots |
tokens | Native/wrapped currency constants and per-chain TokenInfo |
params | CowSwapConfig executor configuration and TokenRegistry |
Re-exports§
pub use chain::Env;pub use chain::PARTNER_PROD_BASE_URL;pub use chain::PARTNER_STAGING_BASE_URL;pub use chain::SupportedChainId;pub use chain::api_base_url;pub use chain::api_url;pub use chain::order_explorer_link;pub use chain::partner_api_base_url;pub use chains::AdditionalTargetChainId;pub use chains::AddressPerChain;pub use chains::ApiBaseUrls;pub use chains::ApiContext;pub use chains::ChainContract;pub use chains::ChainContracts;pub use chains::ChainInfo;pub use chains::ChainRpcUrls;pub use chains::ChainTokenInfo;pub use chains::EvmCall;pub use chains::EvmChainInfo;pub use chains::EvmChains;pub use chains::IpfsConfig;pub use chains::NonEvmChainInfo;pub use chains::NonEvmChains;pub use chains::ProtocolOptions;pub use chains::RAW_CHAINS_FILES_PATH;pub use chains::RAW_FILES_PATH;pub use chains::TOKEN_LIST_IMAGES_PATH;pub use chains::TargetChainId;pub use chains::ThemedImage;pub use chains::WebUrl;pub use chains::additional_target_chain_info;pub use chains::all_additional_target_chain_ids;pub use chains::all_additional_target_chains;pub use chains::all_chain_ids;pub use chains::all_chains;pub use chains::all_chains_map;pub use chains::all_supported_chain_ids;pub use chains::all_supported_chains;pub use chains::get_chain_info;pub use chains::is_additional_target_chain;pub use chains::is_btc_chain;pub use chains::is_chain_deprecated;pub use chains::is_chain_under_development;pub use chains::is_evm_chain;pub use chains::is_evm_chain_info;pub use chains::is_non_evm_chain;pub use chains::is_non_evm_chain_info;pub use chains::is_solana_chain;pub use chains::is_supported_chain;pub use chains::is_target_chain_id;pub use chains::is_zk_sync_chain;pub use chains::map_address_to_supported_networks;pub use chains::map_all_networks;pub use chains::map_supported_networks;pub use chains::supported_chain_info;pub use chains::tradable_supported_chain_ids;pub use chains::tradable_supported_chains;pub use contracts::BARN_ETH_FLOW;pub use contracts::BUY_ETH_ADDRESS;pub use contracts::COMPOSABLE_COW;pub use contracts::DEPLOYER_CONTRACT;pub use contracts::ETH_FLOW_PROD;pub use contracts::ETH_FLOW_STAGING;pub use contracts::EXTENSIBLE_FALLBACK_HANDLER;pub use contracts::IMPLEMENTATION_STORAGE_SLOT;pub use contracts::MAX_VALID_TO_EPOCH;pub use contracts::OWNER_STORAGE_SLOT;pub use contracts::SALT;pub use contracts::SETTLEMENT_CONTRACT;pub use contracts::SETTLEMENT_CONTRACT_STAGING;pub use contracts::VAULT_RELAYER;pub use contracts::VAULT_RELAYER_STAGING;pub use contracts::composable_cow;pub use contracts::composable_cow_contract_address;pub use contracts::cow_protocol_settlement_contract_address;pub use contracts::cow_protocol_vault_relayer_address;pub use contracts::cow_protocol_vault_relayer_address_staging;pub use contracts::deterministic_deployment_address;pub use contracts::eth_flow_for_env;pub use contracts::extensible_fallback_handler;pub use contracts::extensible_fallback_handler_contract_address;pub use contracts::implementation_address_slot;pub use contracts::owner_address_slot;pub use contracts::settlement_contract;pub use contracts::settlement_contract_for_env;pub use contracts::vault_relayer;pub use contracts::vault_relayer_for_env;pub use params::CowSwapConfig;pub use params::TokenRegistry;pub use tokens::BTC_CURRENCY_ADDRESS;pub use tokens::EVM_NATIVE_CURRENCY_ADDRESS;pub use tokens::NATIVE_CURRENCY_ADDRESS;pub use tokens::SOL_NATIVE_CURRENCY_ADDRESS;pub use tokens::TokenInfo;pub use tokens::get_wrapped_token_for_chain;pub use tokens::wrapped_native_currency;
Modules§
- chain
- Supported chain IDs, API base URLs, and explorer link helpers.
- chains
- Extended chain enums, chain info types, and utility functions.
- contracts
- Per-chain
CoWProtocol contract addresses. - params
- High-level executor configuration for
CoWProtocol swap operations. - tokens
- Token constants and per-chain wrapped-native-currency info.