Expand description
Extended chain enums, chain info types, and utility functions.
Mirrors the TypeScript SDK chains package. This module is the
authoritative source for chain metadata beyond what SupportedChainId
provides — it covers bridge-only chains, non-EVM chains (BTC, Solana),
rich per-chain metadata (ChainInfo), and classification helpers.
§Key items
| Item | Purpose |
|---|---|
EvmChains | Superset of SupportedChainId including bridge-only EVM chains |
NonEvmChains | BTC and Solana chain IDs |
AdditionalTargetChainId | Bridge destination chains not in SupportedChainId |
ChainInfo | Rich per-chain metadata (RPC URLs, contracts, tokens, …) |
get_chain_info | Look up ChainInfo by numeric chain ID |
is_evm_chain / is_btc_chain | Chain classification helpers |
all_supported_chains / all_chain_ids | Iteration helpers |
Structs§
- ApiContext
- The
CoWProtocol API context. - Chain
Contract - An on-chain contract reference with an optional creation block.
- Chain
Contracts - Well-known contracts on an EVM chain.
- Chain
RpcUrls - RPC URL configuration for an EVM chain.
- Chain
Token Info - Token info used in chain metadata.
- EvmCall
- An EVM call with a target address, calldata, and value.
- EvmChain
Info - Metadata for an EVM chain.
- Ipfs
Config - IPFS configuration for reading and writing app data.
- NonEvm
Chain Info - Metadata for a non-EVM chain (e.g. Bitcoin, Solana).
- Protocol
Options - Protocol-level options for overriding
CoWProtocol contract addresses and environment. - Themed
Image - A themed image with light and dark variants.
- WebUrl
- A named URL.
Enums§
- Additional
Target Chain Id - Chains where you can buy tokens using bridge functionality but that are not
directly supported by
CoWProtocol for selling. - Chain
Info - A chain on the network – either an EVM chain or a non-EVM chain.
- EvmChains
- All EVM chains supported by
CoWProtocol or available for bridging. - NonEvm
Chains - All non-EVM chains available for bridging only.
- Target
Chain Id - A chain ID that is either a
SupportedChainIdor anAdditionalTargetChainId.
Constants§
- RAW_
CHAINS_ FILES_ PATH - CDN path for chain data.
- RAW_
FILES_ PATH - Base CDN path for SDK files.
- TOKEN_
LIST_ IMAGES_ PATH - CDN path for token list images.
Functions§
- additional_
target_ chain_ info - Return the
ChainInfofor anAdditionalTargetChainId. - all_
additional_ target_ chain_ ids - Return all chain IDs for additional target chains (bridge-only).
- all_
additional_ target_ chains - Return chain info for all additional target chains (bridge-only).
- all_
chain_ ids - Return all known chain IDs as
TargetChainIdvalues. - all_
chains - Return chain info for all known chains (both supported and bridge-only).
- all_
chains_ map - Return a map of every known chain keyed by its numeric chain ID.
- all_
supported_ chain_ ids - Return all supported chain IDs as a
Vec. - all_
supported_ chains - Return chain info for all supported chains.
- get_
chain_ info - Return the chain info for a given chain ID, or
Noneif the chain is not known. - is_
additional_ target_ chain - Check if a chain ID is a bridge-only target chain.
- is_
btc_ chain - Check if a chain ID represents Bitcoin.
- is_
chain_ deprecated - Check if a chain is deprecated (no new trading; chain remains for history/Explorer).
- is_
chain_ under_ development - Check if a chain is under development.
- is_
evm_ chain - Check if a chain ID represents an EVM chain (including bridge-only ones like Optimism).
- is_
evm_ chain_ info - Check if a
ChainInforepresents an EVM chain. - is_
non_ evm_ chain - Check if a chain ID represents a non-EVM chain (Bitcoin, Solana).
- is_
non_ evm_ chain_ info - Check if a
ChainInforepresents a non-EVM chain. - is_
solana_ chain - Check if a chain ID is the Solana non-EVM chain.
- is_
supported_ chain - Check if a chain ID is directly supported by
CoWProtocol for trading. - is_
target_ chain_ id - Check if a chain ID is either a supported chain or a bridge target.
- is_
zk_ sync_ chain - Check if a chain is zkSync-based.
- map_
address_ to_ supported_ networks - Map an address to all supported networks.
- map_
all_ networks - Map a value across all target chains (supported + additional), returning a
Vecof(TargetChainId, T)pairs. - map_
supported_ networks - Map a value across all supported chains, returning a
Vecof(SupportedChainId, T)pairs. - supported_
chain_ info - Return the
ChainInfofor aSupportedChainId. - tradable_
supported_ chain_ ids - Return chain IDs where new trading is allowed (excludes deprecated chains).
- tradable_
supported_ chains - Return chain info for tradable supported chains (excludes deprecated).
Type Aliases§
- Address
PerChain - Per-chain address mapping for supported chains.
- ApiBase
Urls - Per-chain base URL mapping for supported chains.