Skip to main content
Version: 1.10.3

Interface: MessageV1

Defined in: evm/messageCodec.ts:37

A CCIP v2 MessageV1, mirroring MessageV1Codec.MessageV1.

The bytes-typed address fields follow the codec's encoding rules exactly: source-side addresses (onRampAddress, sender, and the token transfer's sourcePoolAddress/sourceTokenAddress) are abi.encode(address) (32 bytes) for EVM; destination-side addresses (offRampAddress, receiver, and the token transfer's destTokenAddress/tokenReceiver) are raw minimal bytes (20 bytes for EVM). Callers building an EVM candidate should encode addresses accordingly before passing them here.

Properties

ccipReceiveGasLimit

ccipReceiveGasLimit: number | bigint

Defined in: evm/messageCodec.ts:47

User callback (ccipReceive) gas limit. Read by getCCVsForMessage (token-only determination).


ccvAndExecutorHash?

optional ccvAndExecutorHash?: string

Defined in: evm/messageCodec.ts:51

Hash of verifiers+executor. Has no meaning on the destination and is not checked. Default ZeroHash.


data?

optional data?: string

Defined in: evm/messageCodec.ts:65

User data payload. Read by getCCVsForMessage (its length drives the token-only determination).


destBlob?

optional destBlob?: string

Defined in: evm/messageCodec.ts:61

Destination-specific blob. Not read by getCCVsForMessage. Default empty.


destChainSelector

destChainSelector: bigint

Defined in: evm/messageCodec.ts:41

Destination chain selector.


executionGasLimit?

optional executionGasLimit?: number | bigint

Defined in: evm/messageCodec.ts:45

Destination execution gas limit. Not read by getCCVsForMessage. Default 0.


finality

finality: string

Defined in: evm/messageCodec.ts:49

Per-message finality, bytes4. Read by getCCVsForMessage.


messageNumber?

optional messageNumber?: bigint

Defined in: evm/messageCodec.ts:43

Per-lane message number. Assigned on-chain at send; not read by getCCVsForMessage. Default 0n.


offRampAddress?

optional offRampAddress?: string

Defined in: evm/messageCodec.ts:55

Destination offRamp, raw bytes. Not read by getCCVsForMessage. Default empty.


onRampAddress?

optional onRampAddress?: string

Defined in: evm/messageCodec.ts:53

Source onRamp, abi.encode(address). Not read by getCCVsForMessage. Default empty.


receiver

receiver: string

Defined in: evm/messageCodec.ts:59

Destination receiver, raw bytes. Read by getCCVsForMessage; must be 20 bytes for EVM.


sender

sender: string

Defined in: evm/messageCodec.ts:57

Source sender, abi.encode(address). Read by getCCVsForMessage (CCV set is sender-scoped).


sourceChainSelector

sourceChainSelector: bigint

Defined in: evm/messageCodec.ts:39

Source chain selector.


tokenTransfer?

optional tokenTransfer?: MessageV1TokenTransfer

Defined in: evm/messageCodec.ts:63

Optional token transfer (0 or 1). Read by getCCVsForMessage (pool CCVs).