Variable: TOKEN_POOL_INTERFACES
constTOKEN_POOL_INTERFACES: {BurnFromMintTokenPool: {1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; };BurnMintTokenPool: {1.5.0:Interface;1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; };BurnMintWithLockReleaseFlagTokenPool: {2.0.0:Interface; };BurnToAddressTokenPool: {1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; };BurnWithFromMintTokenPool: {1.5.0:Interface;1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; };CrossChainPoolToken: {2.0.0:Interface; };LockReleaseTokenPool: {1.5.0:Interface;1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; };SiloedLockReleaseTokenPool: {1.6.0:Interface;1.6.1:Interface;2.0.0:Interface; }; }
Defined in: cct/evm/token-pool/contracts.ts:563
Cached pool Interfaces per TokenPoolType, for exactly the
TokenPoolVersions that type shipped at, built once from TOKEN_POOL_ABIS (no per-call
new Interface). V1_5_0 uses the *_and_proxy variants, the only form
@chainlink/contracts-ccip ships at 1.5.0. Types with the same ABI share the same instance.
Type Declaration
BurnFromMintTokenPool
BurnFromMintTokenPool: {
1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; }
BurnFromMintTokenPool.1.5.1
1.5.1:
Interface
BurnFromMintTokenPool.1.6.1
1.6.1:
Interface
BurnFromMintTokenPool.2.0.0
2.0.0:
Interface
BurnMintTokenPool
BurnMintTokenPool: {
1.5.0:Interface;1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; } =BURN_MINT_ABIS
BurnMintTokenPool.1.5.0
1.5.0:
Interface=BURN_MINT_TOKEN_POOL_V1_5_0_ABI
BurnMintTokenPool.1.5.1
1.5.1:
Interface=BURN_MINT_TOKEN_POOL_V1_5_1_ABI
BurnMintTokenPool.1.6.1
1.6.1:
Interface=BURN_MINT_TOKEN_POOL_V1_6_1_ABI
BurnMintTokenPool.2.0.0
2.0.0:
Interface=BURN_MINT_TOKEN_POOL_V2_0_0_ABI
BurnMintWithLockReleaseFlagTokenPool
BurnMintWithLockReleaseFlagTokenPool: {
2.0.0:Interface; }
BurnMintWithLockReleaseFlagTokenPool.2.0.0
2.0.0:
Interface
BurnToAddressTokenPool
BurnToAddressTokenPool: {
1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; }
BurnToAddressTokenPool.1.5.1
1.5.1:
Interface=BURN_TO_ADDRESS_MINT_TOKEN_POOL_V1_5_1_ABI
BurnToAddressTokenPool.1.6.1
1.6.1:
Interface=BURN_TO_ADDRESS_MINT_TOKEN_POOL_V1_6_1_ABI
BurnToAddressTokenPool.2.0.0
2.0.0:
Interface=BURN_TO_ADDRESS_MINT_TOKEN_POOL_V2_0_0_ABI
BurnWithFromMintTokenPool
BurnWithFromMintTokenPool: {
1.5.0:Interface;1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; } =BURN_MINT_ABIS
BurnWithFromMintTokenPool.1.5.0
1.5.0:
Interface=BURN_MINT_TOKEN_POOL_V1_5_0_ABI
BurnWithFromMintTokenPool.1.5.1
1.5.1:
Interface=BURN_MINT_TOKEN_POOL_V1_5_1_ABI
BurnWithFromMintTokenPool.1.6.1
1.6.1:
Interface=BURN_MINT_TOKEN_POOL_V1_6_1_ABI
BurnWithFromMintTokenPool.2.0.0
2.0.0:
Interface=BURN_MINT_TOKEN_POOL_V2_0_0_ABI
CrossChainPoolToken
CrossChainPoolToken: {
2.0.0:Interface; }
CrossChainPoolToken.2.0.0
2.0.0:
Interface=CROSS_CHAIN_POOL_TOKEN_V2_0_0_ABI
LockReleaseTokenPool
LockReleaseTokenPool: {
1.5.0:Interface;1.5.1:Interface;1.6.1:Interface;2.0.0:Interface; }
LockReleaseTokenPool.1.5.0
1.5.0:
Interface=LOCK_RELEASE_TOKEN_POOL_V1_5_0_ABI
LockReleaseTokenPool.1.5.1
1.5.1:
Interface=LOCK_RELEASE_TOKEN_POOL_V1_5_1_ABI
LockReleaseTokenPool.1.6.1
1.6.1:
Interface=LOCK_RELEASE_TOKEN_POOL_V1_6_1_ABI
LockReleaseTokenPool.2.0.0
2.0.0:
Interface=LOCK_RELEASE_TOKEN_POOL_V2_0_0_ABI
SiloedLockReleaseTokenPool
SiloedLockReleaseTokenPool: {
1.6.0:Interface;1.6.1:Interface;2.0.0:Interface; }
SiloedLockReleaseTokenPool.1.6.0
1.6.0:
Interface=SILOED_LOCK_RELEASE_TOKEN_POOL_V1_6_0_ABI
SiloedLockReleaseTokenPool.1.6.1
1.6.1:
Interface=SILOED_LOCK_RELEASE_TOKEN_POOL_V1_6_1_ABI
SiloedLockReleaseTokenPool.2.0.0
2.0.0:
Interface=SILOED_LOCK_RELEASE_TOKEN_POOL_V2_0_0_ABI
Remarks
The table is the allowlist of pool versions, per type: 1.6.0 shipped only the siloed
pool, the siloed pool first shipped at 1.6.0, and BurnFromMintTokenPool and
BurnToAddressTokenPool at 1.5.1 (1.5.0 shipped no BurnFromMintTokenPoolAndProxy), and
BurnMintWithLockReleaseFlagTokenPool only at 2.0.0 (its 1.6.1 bytecode reports
BurnMintTokenPool 1.6.1). parseTokenPoolVersion rejects a pool
claiming a missing pair, so every resolved pool has an entry.