Parameters
- params: {
args:
| readonly []
| readonly [`0x${string}`, boolean]
| readonly [`0x${string}`, `0x${string}`]
| readonly [`0x${string}`, `0x${string}`, `0x${string}`, bigint]
| readonly [`0x${string}`, `0x${string}`, `0x${string}`]
| readonly [
`0x${string}`,
`0x${string}`,
`0x${string}`,
`0x${string}`,
bigint,
]
| readonly [`0x${string}`, bigint]
| readonly [`0x${string}`, `0x${string}`, bigint]
| readonly [boolean]
| readonly [`0x${string}`]
| readonly [readonly `0x${string}`[], `0x${string}`]
| readonly [`0x${string}`, bigint, bigint, number]
| readonly [`0x${string}`, `0x${string}`, number]
| readonly [`0x${string}`, bigint, bigint, `0x${string}`]
| readonly [`0x${string}`, bigint, `0x${string}`]
| readonly [
`0x${string}`,
bigint,
`0x${string}`,
bigint,
number,
`0x${string}`,
`0x${string}`,
];
contractName: | "ERC20"
| "SpecialERC20WithAddress"
| "EnsRegistry"
| "AaveFaucet"
| "AAVEWeth"
| "OPL1CrossDomainMessengerProxy";
fromChain: {}
| {};
functionName:
| "setApprovalForAll"
| "setOwner"
| "setRecord"
| "setResolver"
| "setSubnodeOwner"
| "setSubnodeRecord"
| "setTTL"
| "mint"
| "renounceOwnership"
| "setMintable"
| "setPermissioned"
| "transferOwnership"
| "transferOwnershipOfChild"
| "borrowETH"
| "depositETH"
| "emergencyEtherTransfer"
| "emergencyTokenTransfer"
| "repayETH"
| "withdrawETH"
| "withdrawETHWithPermit"
| "sendMessage"
| "approve"
| "transfer"
| "transferFrom";
l2ContractAddress: `0x${string}`;
value: bigint;
}args:
| readonly []
| readonly [`0x${string}`, boolean]
| readonly [`0x${string}`, `0x${string}`]
| readonly [`0x${string}`, `0x${string}`, `0x${string}`, bigint]
| readonly [`0x${string}`, `0x${string}`, `0x${string}`]
| readonly [
`0x${string}`,
`0x${string}`,
`0x${string}`,
`0x${string}`,
bigint,
]
| readonly [`0x${string}`, bigint]
| readonly [`0x${string}`, `0x${string}`, bigint]
| readonly [boolean]
| readonly [`0x${string}`]
| readonly [readonly `0x${string}`[], `0x${string}`]
| readonly [`0x${string}`, bigint, bigint, number]
| readonly [`0x${string}`, `0x${string}`, number]
| readonly [`0x${string}`, bigint, bigint, `0x${string}`]
| readonly [`0x${string}`, bigint, `0x${string}`]
| readonly [
`0x${string}`,
bigint,
`0x${string}`,
bigint,
number,
`0x${string}`,
`0x${string}`,
]
contractName:
| "ERC20"
| "SpecialERC20WithAddress"
| "EnsRegistry"
| "AaveFaucet"
| "AAVEWeth"
| "OPL1CrossDomainMessengerProxy"
fromChain: {} | {}
functionName:
| "setApprovalForAll"
| "setOwner"
| "setRecord"
| "setResolver"
| "setSubnodeOwner"
| "setSubnodeRecord"
| "setTTL"
| "mint"
| "renounceOwnership"
| "setMintable"
| "setPermissioned"
| "transferOwnership"
| "transferOwnershipOfChild"
| "borrowETH"
| "depositETH"
| "emergencyEtherTransfer"
| "emergencyTokenTransfer"
| "repayETH"
| "withdrawETH"
| "withdrawETHWithPermit"
| "sendMessage"
| "approve"
| "transfer"
| "transferFrom"
l2ContractAddress: `0x${string}`
value: bigint
Returns () => Promise<`0x${string}`>
Async function that executes the cross-domain message when called
Custom hook to send a cross-domain message from L1 (Ethereum Mainnet or Sepolia) to Optimism.
Handles the complex process of sending a message from L1 to L2 through Optimism's CrossDomainMessenger contract, including: