Static
Readonly
abi
abi: readonly [{
inputs: readonly [{
internalType: "address";
name: "circleIntegration_";
type: "address";
}, {
internalType: "uint8";
name: "nativeTokenDecimals_";
type: "uint8";
}, {
internalType: "address";
name: "feeRecipient_";
type: "address";
}, {
internalType: "address";
name: "ownerAssistant_";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "address";
name: "previousAdmin";
type: "address";
}, {
indexed: false;
internalType: "address";
name: "newAdmin";
type: "address";
}];
name: "AdminChanged";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "beacon";
type: "address";
}];
name: "BeaconUpgraded";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "oldRecipient";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newRecipient";
type: "address";
}];
name: "FeeRecipientUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "oldOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransfered";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "recipient";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "relayer";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "tokenAmount";
type: "uint256";
}, {
indexed: false;
internalType: "uint256";
name: "nativeAmount";
type: "uint256";
}];
name: "SwapExecuted";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "token";
type: "address";
}, {
indexed: true;
internalType: "uint256";
name: "swapRate";
type: "uint256";
}];
name: "SwapRateUpdated";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "implementation";
type: "address";
}];
name: "Upgraded";
type: "event";
}, {
inputs: readonly [];
name: "VERSION";
outputs: readonly [{
internalType: "string";
name: "";
type: "string";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "address_";
type: "bytes32";
}];
name: "bytes32ToAddress";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
internalType: "contract IERC20Metadata";
name: "token";
type: "address";
}];
name: "calculateMaxSwapAmountIn";
outputs: readonly [{
internalType: "uint256";
name: "maxAllowed";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "contract IERC20Metadata";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "toNativeAmount";
type: "uint256";
}];
name: "calculateNativeSwapAmountOut";
outputs: readonly [{
internalType: "uint256";
name: "nativeAmount";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}];
name: "cancelOwnershipTransferRequest";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "chainId";
outputs: readonly [{
internalType: "uint16";
name: "";
type: "uint16";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "circleIntegration";
outputs: readonly [{
internalType: "contract ICircleIntegration";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "confirmOwnershipTransferRequest";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes";
name: "encoded";
type: "bytes";
}];
name: "decodeTransferTokensWithRelay";
outputs: readonly [{
components: readonly [{
internalType: "uint8";
name: "payloadId";
type: "uint8";
}, {
internalType: "uint256";
name: "targetRelayerFee";
type: "uint256";
}, {
internalType: "uint256";
name: "toNativeTokenAmount";
type: "uint256";
}, {
internalType: "bytes32";
name: "targetRecipientWallet";
type: "bytes32";
}];
internalType: "struct CircleRelayerStructs.TransferTokensWithRelay";
name: "transfer";
type: "tuple";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: "uint8";
name: "payloadId";
type: "uint8";
}, {
internalType: "uint256";
name: "targetRelayerFee";
type: "uint256";
}, {
internalType: "uint256";
name: "toNativeTokenAmount";
type: "uint256";
}, {
internalType: "bytes32";
name: "targetRecipientWallet";
type: "bytes32";
}];
internalType: "struct CircleRelayerStructs.TransferTokensWithRelay";
name: "transfer";
type: "tuple";
}];
name: "encodeTransferTokensWithRelay";
outputs: readonly [{
internalType: "bytes";
name: "encoded";
type: "bytes";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [];
name: "feeRecipient";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "getPaused";
outputs: readonly [{
internalType: "bool";
name: "paused";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "emitterChainId";
type: "uint16";
}];
name: "getRegisteredContract";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "maxNativeSwapAmount";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "token";
type: "address";
}];
name: "nativeSwapRate";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "nativeSwapRatePrecision";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "nativeTokenDecimals";
outputs: readonly [{
internalType: "uint8";
name: "";
type: "uint8";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "ownerAssistant";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "pendingOwner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
components: readonly [{
internalType: "bytes";
name: "encodedWormholeMessage";
type: "bytes";
}, {
internalType: "bytes";
name: "circleBridgeMessage";
type: "bytes";
}, {
internalType: "bytes";
name: "circleAttestation";
type: "bytes";
}];
internalType: "struct ICircleIntegration.RedeemParameters";
name: "redeemParams";
type: "tuple";
}];
name: "redeemTokens";
outputs: readonly [];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "bytes32";
name: "contractAddress";
type: "bytes32";
}];
name: "registerContract";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "address";
name: "token";
type: "address";
}];
name: "relayerFee";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "bool";
name: "paused";
type: "bool";
}];
name: "setPauseForTransfers";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "submitOwnershipTransferRequest";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "contract IERC20Metadata";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
internalType: "uint256";
name: "toNativeTokenAmount";
type: "uint256";
}, {
internalType: "uint16";
name: "targetChain";
type: "uint16";
}, {
internalType: "bytes32";
name: "targetRecipientWallet";
type: "bytes32";
}];
name: "transferTokensWithRelay";
outputs: readonly [{
internalType: "uint64";
name: "messageSequence";
type: "uint64";
}];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "address";
name: "newFeeRecipient";
type: "address";
}];
name: "updateFeeRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "maxAmount";
type: "uint256";
}];
name: "updateMaxNativeSwapAmount";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "swapRate";
type: "uint256";
}];
name: "updateNativeSwapRate";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "uint256";
name: "nativeSwapRatePrecision_";
type: "uint256";
}];
name: "updateNativeSwapRatePrecision";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "address";
name: "newAssistant";
type: "address";
}];
name: "updateOwnerAssistant";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint16";
name: "chainId_";
type: "uint16";
}, {
internalType: "address";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}];
name: "updateRelayerFee";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "wormhole";
outputs: readonly [{
internalType: "contract IWormhole";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}] = _abi