config

package
v0.0.0-...-67263d3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 29, 2026 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AcceptTokenAdminInput

type AcceptTokenAdminInput struct {
	ChainSelector uint64
	Accepts       []TokenAcceptInput
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type AcceptTokenOwnershipInput

type AcceptTokenOwnershipInput struct {
	ChainSelector uint64
	Accepts       []TokenAcceptInput
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type AcceptTokenPoolOwnershipInput

type AcceptTokenPoolOwnershipInput struct {
	ChainSelector uint64
	Accepts       []TokenPoolAccept
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type AddTokenPoolConfig

type AddTokenPoolConfig struct {
	// DeployAptosTokenConfig
	ChainSelector                       uint64
	TokenAddress                        aptos.AccountAddress // if empty, token will be deployed
	TokenCodeObjAddress                 aptos.AccountAddress // if empty, token will be deployed
	TokenPoolAddress                    aptos.AccountAddress // if empty, token pool will be deployed
	PoolType                            cldf.ContractType
	TokenTransferFeeByRemoteChainConfig map[uint64]fee_quoter.TokenTransferFeeConfig
	EVMRemoteConfigs                    map[uint64]EVMRemoteConfig
	TokenParams                         TokenParams
	MCMSConfig                          *cldfproposalutils.TimelockConfig
	TokenMint                           *TokenMint
}

type AptosChainDefinition

type AptosChainDefinition struct {
	// ConnectionConfig holds configuration for connection.
	v1_6.ConnectionConfig `json:"connectionConfig"`
	// Selector is the chain selector of this chain.
	Selector uint64 `json:"selector"`
	// GasPrice defines the USD price (18 decimals) per unit gas for this chain as a destination.
	GasPrice *big.Int `json:"gasPrice"`
	// TokenPrices defines USD price for a token address (28 decimals)
	TokenPrices map[aptos.AccountAddress]*big.Int
	// FeeQuoterDestChainConfig is the configuration on a fee quoter for this chain as a destination.
	FeeQuoterDestChainConfig aptos_fee_quoter.DestChainConfig `json:"feeQuoterDestChainConfig"`
	// AddTokenTransferFeeConfigs is the configuration for token transfer fees to be added to fee quoter
	AddTokenTransferFeeConfigs []aptos_fee_quoter.TokenTransferFeeConfigAdded
	// RemoveTokenTransferFeeConfigs holds token transfer fees to be removed from fee quoter
	RemoveTokenTransferFeeConfigs []aptos_fee_quoter.TokenTransferFeeConfigRemoved
}

func (AptosChainDefinition) GetChainFamily

func (c AptosChainDefinition) GetChainFamily() string

func (AptosChainDefinition) GetConvertedEVMFeeQuoterConfig

func (c AptosChainDefinition) GetConvertedEVMFeeQuoterConfig() evm_fee_quoter.FeeQuoterDestChainConfig

func (AptosChainDefinition) GetSelector

func (c AptosChainDefinition) GetSelector() uint64

func (AptosChainDefinition) Validate

type ChainContractParams

type ChainContractParams struct {
	FeeQuoterParams FeeQuoterParams
	OffRampParams   OffRampParams
	OnRampParams    OnRampParams
}

ChainContractParams stores configuration to call initialize in CCIP contracts

func (ChainContractParams) Validate

func (c ChainContractParams) Validate() error

type ChainDefinition

type ChainDefinition interface {
	GetChainFamily() string
	GetSelector() uint64
}

ChainDefinition is an interface that defines a chain config for lane deployment It is used to convert between Aptos and EVM fee quoter configs.

type DeployAptosChainConfig

type DeployAptosChainConfig struct {
	MCMSDeployConfigPerChain   map[uint64]types.MCMSWithTimelockConfigV2
	MCMSTimelockConfigPerChain map[uint64]cldfproposalutils.TimelockConfig
	ContractParamsPerChain     map[uint64]ChainContractParams
}

DeployAptosChainConfig is a configuration for deploying CCIP Package for Aptos chains

func (DeployAptosChainConfig) Validate

func (c DeployAptosChainConfig) Validate() error

type DeployCurseMCMSConfig

type DeployCurseMCMSConfig struct {
	CurseMCMSConfigPerChain    map[uint64]cldfproposalutils.MCMSWithTimelockConfig
	MCMSTimelockConfigPerChain map[uint64]cldfproposalutils.TimelockConfig
}

DeployCurseMCMSConfig holds per-chain configuration for deploying and configuring a CurseMCMS contract on Aptos chains.

func (DeployCurseMCMSConfig) Validate

func (c DeployCurseMCMSConfig) Validate() error

type DeployRegulatedTokenConfig

type DeployRegulatedTokenConfig struct {
	ChainSelector uint64
	TokenParams   TokenParams
	TokenMint     *TokenMint
	// RegistrarPreregister is passed to DeployMCMSRegistrarToExistingObject (default true).
	RegistrarPreregister *bool
	MCMSConfig           *cldfproposalutils.TimelockConfig
}

DeployRegulatedTokenConfig drives the regulated token publish + initialize + transfer_ownership + transfer_admin to the MCMS registry owner, and emits an MCMS proposal with accept_ownership and accept_admin. Note: regulated_token cannot be deployed via MCMS due to DFA re-entrancy; those steps are signed directly by the deployer.

func (DeployRegulatedTokenConfig) RegistrarPreregisterOrDefault

func (c DeployRegulatedTokenConfig) RegistrarPreregisterOrDefault() bool

RegistrarPreregisterOrDefault returns true when unset (matches test helper default).

func (DeployRegulatedTokenConfig) Validate

func (c DeployRegulatedTokenConfig) Validate() error

type DeployTokenFaucetInput

type DeployTokenFaucetInput struct {
	ChainSelector          uint64
	TokenCodeObjectAddress aptos.AccountAddress
	MCMSConfig             *cldfproposalutils.TimelockConfig
}

type DynamicConfig

type DynamicConfig struct {
	Defs          []operations.Definition
	Inputs        []any // Each element should be the corresponding input type for its operation
	ChainSelector uint64
	Description   string
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type EVMChainDefinition

type EVMChainDefinition struct {
	v1_6.ChainDefinition
	OnRampVersion []byte
}

func (EVMChainDefinition) GetChainFamily

func (c EVMChainDefinition) GetChainFamily() string

func (EVMChainDefinition) GetConvertedAptosFeeQuoterConfig

func (c EVMChainDefinition) GetConvertedAptosFeeQuoterConfig() aptos_fee_quoter.DestChainConfig

func (EVMChainDefinition) GetSelector

func (c EVMChainDefinition) GetSelector() uint64

type EVMRemoteConfig

type EVMRemoteConfig struct {
	TokenAddress common.Address
	// TODO: EVM has a way of picking up Pool by token address and type, use this instead of passing PoolAddress
	TokenPoolAddress common.Address
	RateLimiterConfig
}

func (EVMRemoteConfig) Validate

func (erc EVMRemoteConfig) Validate() error

type ExecuteTokenOwnershipTransferInput

type ExecuteTokenOwnershipTransferInput struct {
	ChainSelector uint64
	Transfers     []TokenTransferInput
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type ExecuteTokenPoolOwnershipTransferInput

type ExecuteTokenPoolOwnershipTransferInput struct {
	ChainSelector uint64
	Transfers     []TokenPoolTransfer
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type FeeQuoterParams

type FeeQuoterParams struct {
	MaxFeeJuelsPerMsg                    *big.Int
	TokenPriceStalenessThreshold         uint64
	FeeTokens                            []aptos.AccountAddress
	PremiumMultiplierWeiPerEthByFeeToken map[shared.TokenSymbol]uint64
}

func (FeeQuoterParams) Validate

func (f FeeQuoterParams) Validate() error

type MigrateOnRampDestChainConfigsToV2Config

type MigrateOnRampDestChainConfigsToV2Config struct {
	ChainSelector         uint64
	DestChainSelectors    []uint64
	RouterModuleAddresses []aptos.AccountAddress
	MCMS                  *cldfproposalutils.TimelockConfig
}

type MintTokenInput

type MintTokenInput struct {
	ChainSelector          uint64
	TokenCodeObjectAddress aptos.AccountAddress
	MCMSConfig             *cldfproposalutils.TimelockConfig
	TokenMint
}

type OffRampParams

type OffRampParams struct {
	ChainSelector                    uint64
	PermissionlessExecutionThreshold uint32
	IsRMNVerificationDisabled        []bool
	SourceChainSelectors             []uint64
	SourceChainIsEnabled             []bool
	SourceChainsOnRamp               [][]byte
}

func (OffRampParams) Validate

func (o OffRampParams) Validate() error

type OnRampParams

type OnRampParams struct {
	ChainSelector  uint64
	AllowlistAdmin aptos.AccountAddress
	FeeAggregator  aptos.AccountAddress
}

func (OnRampParams) Validate

func (o OnRampParams) Validate() error

type RateLimiterConfig

type RateLimiterConfig struct {
	RemoteChainSelector uint64
	OutboundIsEnabled   bool
	OutboundCapacity    uint64
	OutboundRate        uint64
	InboundIsEnabled    bool
	InboundCapacity     uint64
	InboundRate         uint64
}

type TokenAcceptInput

type TokenAcceptInput struct {
	TokenCodeObjectAddress aptos.AccountAddress
	TokenType              deployment.ContractType
}

type TokenMint

type TokenMint struct {
	Amount uint64
	To     aptos.AccountAddress
}

type TokenParams

type TokenParams struct {
	MaxSupply *big.Int
	Name      string
	Symbol    shared.TokenSymbol
	Decimals  byte
	Icon      string
	Project   string
}

func (TokenParams) Validate

func (tp TokenParams) Validate() error

type TokenPoolAccept

type TokenPoolAccept struct {
	TokenPoolAddress aptos.AccountAddress
	TokenPoolType    cldf.ContractType
}

type TokenPoolTransfer

type TokenPoolTransfer struct {
	TokenPoolAddress aptos.AccountAddress
	To               aptos.AccountAddress
	TokenPoolType    cldf.ContractType
}

type TokenTransferInput

type TokenTransferInput struct {
	TokenCodeObjectAddress aptos.AccountAddress
	TokenType              deployment.ContractType
	To                     aptos.AccountAddress
}

type TransferTokenAdminInput

type TransferTokenAdminInput struct {
	ChainSelector uint64
	Transfers     []TokenTransferInput
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type TransferTokenOwnershipInput

type TransferTokenOwnershipInput struct {
	ChainSelector uint64
	Transfers     []TokenTransferInput
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type TransferTokenPoolOwnershipInput

type TransferTokenPoolOwnershipInput struct {
	ChainSelector uint64
	Transfers     []TokenPoolTransfer
	MCMSConfig    *cldfproposalutils.TimelockConfig
}

type UpgradeAptosChainConfig

type UpgradeAptosChainConfig struct {
	ChainSelector  uint64
	UpgradeCCIP    bool
	UpgradeOffRamp bool
	UpgradeOnRamp  bool
	UpgradeRouter  bool
	MCMS           *cldfproposalutils.TimelockConfig
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL