// DO NOT MODIFY THIS FILE IS AUTOGENERATED /** * ABI for the OP Stack contract `CrossDomainMessenger` * @category ABI */ export const crossDomainMessengerAbi = [ { type: 'function', name: 'ENCODING_OVERHEAD', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'FLOOR_CALLDATA_OVERHEAD', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'MESSAGE_VERSION', inputs: [], outputs: [ { name: '', type: 'uint16', internalType: 'uint16', }, ], stateMutability: 'view', }, { type: 'function', name: 'MIN_GAS_CALLDATA_OVERHEAD', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'MIN_GAS_DYNAMIC_OVERHEAD_DENOMINATOR', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'MIN_GAS_DYNAMIC_OVERHEAD_NUMERATOR', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'OTHER_MESSENGER', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'contract CrossDomainMessenger', }, ], stateMutability: 'view', }, { type: 'function', name: 'RELAY_CALL_OVERHEAD', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'RELAY_CONSTANT_OVERHEAD', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'RELAY_GAS_CHECK_BUFFER', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'RELAY_RESERVED_GAS', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'TX_BASE_GAS', inputs: [], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'view', }, { type: 'function', name: 'baseGas', inputs: [ { name: '_message', type: 'bytes', internalType: 'bytes', }, { name: '_minGasLimit', type: 'uint32', internalType: 'uint32', }, ], outputs: [ { name: '', type: 'uint64', internalType: 'uint64', }, ], stateMutability: 'pure', }, { type: 'function', name: 'failedMessages', inputs: [ { name: '', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'function', name: 'messageNonce', inputs: [], outputs: [ { name: '', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'otherMessenger', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'contract CrossDomainMessenger', }, ], stateMutability: 'view', }, { type: 'function', name: 'paused', inputs: [], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'function', name: 'relayMessage', inputs: [ { name: '_nonce', type: 'uint256', internalType: 'uint256', }, { name: '_sender', type: 'address', internalType: 'address', }, { name: '_target', type: 'address', internalType: 'address', }, { name: '_value', type: 'uint256', internalType: 'uint256', }, { name: '_minGasLimit', type: 'uint256', internalType: 'uint256', }, { name: '_message', type: 'bytes', internalType: 'bytes', }, ], outputs: [], stateMutability: 'payable', }, { type: 'function', name: 'sendMessage', inputs: [ { name: '_target', type: 'address', internalType: 'address', }, { name: '_message', type: 'bytes', internalType: 'bytes', }, { name: '_minGasLimit', type: 'uint32', internalType: 'uint32', }, ], outputs: [], stateMutability: 'payable', }, { type: 'function', name: 'successfulMessages', inputs: [ { name: '', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'function', name: 'xDomainMessageSender', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'event', name: 'FailedRelayedMessage', inputs: [ { name: 'msgHash', type: 'bytes32', indexed: true, internalType: 'bytes32', }, ], anonymous: false, }, { type: 'event', name: 'Initialized', inputs: [ { name: 'version', type: 'uint8', indexed: false, internalType: 'uint8', }, ], anonymous: false, }, { type: 'event', name: 'RelayedMessage', inputs: [ { name: 'msgHash', type: 'bytes32', indexed: true, internalType: 'bytes32', }, ], anonymous: false, }, { type: 'event', name: 'SentMessage', inputs: [ { name: 'target', type: 'address', indexed: true, internalType: 'address', }, { name: 'sender', type: 'address', indexed: false, internalType: 'address', }, { name: 'message', type: 'bytes', indexed: false, internalType: 'bytes', }, { name: 'messageNonce', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'gasLimit', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'SentMessageExtension1', inputs: [ { name: 'sender', type: 'address', indexed: true, internalType: 'address', }, { name: 'value', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, ] as const /** * ABI for the OP Stack contract `CrossL2Inbox` * @category ABI */ export const crossL2InboxAbi = [ { type: 'function', name: 'calculateChecksum', inputs: [ { name: '_id', type: 'tuple', internalType: 'struct Identifier', components: [ { name: 'origin', type: 'address', internalType: 'address', }, { name: 'blockNumber', type: 'uint256', internalType: 'uint256', }, { name: 'logIndex', type: 'uint256', internalType: 'uint256', }, { name: 'timestamp', type: 'uint256', internalType: 'uint256', }, { name: 'chainId', type: 'uint256', internalType: 'uint256', }, ], }, { name: '_msgHash', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [ { name: 'checksum_', type: 'bytes32', internalType: 'bytes32', }, ], stateMutability: 'pure', }, { type: 'function', name: 'validateMessage', inputs: [ { name: '_id', type: 'tuple', internalType: 'struct Identifier', components: [ { name: 'origin', type: 'address', internalType: 'address', }, { name: 'blockNumber', type: 'uint256', internalType: 'uint256', }, { name: 'logIndex', type: 'uint256', internalType: 'uint256', }, { name: 'timestamp', type: 'uint256', internalType: 'uint256', }, { name: 'chainId', type: 'uint256', internalType: 'uint256', }, ], }, { name: '_msgHash', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'version', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'event', name: 'ExecutingMessage', inputs: [ { name: 'msgHash', type: 'bytes32', indexed: true, internalType: 'bytes32', }, { name: 'id', type: 'tuple', indexed: false, internalType: 'struct Identifier', components: [ { name: 'origin', type: 'address', internalType: 'address', }, { name: 'blockNumber', type: 'uint256', internalType: 'uint256', }, { name: 'logIndex', type: 'uint256', internalType: 'uint256', }, { name: 'timestamp', type: 'uint256', internalType: 'uint256', }, { name: 'chainId', type: 'uint256', internalType: 'uint256', }, ], }, ], anonymous: false, }, { type: 'error', name: 'BlockNumberTooHigh', inputs: [], }, { type: 'error', name: 'LogIndexTooHigh', inputs: [], }, { type: 'error', name: 'NotInAccessList', inputs: [], }, { type: 'error', name: 'TimestampTooHigh', inputs: [], }, ] as const /** * ABI for the OP Stack contract `L2ToL2CrossDomainMessenger` * @category ABI */ export const l2ToL2CrossDomainMessengerAbi = [ { type: 'function', name: 'crossDomainMessageContext', inputs: [], outputs: [ { name: 'sender_', type: 'address', internalType: 'address', }, { name: 'source_', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'crossDomainMessageSender', inputs: [], outputs: [ { name: 'sender_', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'crossDomainMessageSource', inputs: [], outputs: [ { name: 'source_', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'messageNonce', inputs: [], outputs: [ { name: '', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'messageVersion', inputs: [], outputs: [ { name: '', type: 'uint16', internalType: 'uint16', }, ], stateMutability: 'view', }, { type: 'function', name: 'relayMessage', inputs: [ { name: '_id', type: 'tuple', internalType: 'struct Identifier', components: [ { name: 'origin', type: 'address', internalType: 'address', }, { name: 'blockNumber', type: 'uint256', internalType: 'uint256', }, { name: 'logIndex', type: 'uint256', internalType: 'uint256', }, { name: 'timestamp', type: 'uint256', internalType: 'uint256', }, { name: 'chainId', type: 'uint256', internalType: 'uint256', }, ], }, { name: '_sentMessage', type: 'bytes', internalType: 'bytes', }, ], outputs: [ { name: 'returnData_', type: 'bytes', internalType: 'bytes', }, ], stateMutability: 'payable', }, { type: 'function', name: 'resendMessage', inputs: [ { name: '_destination', type: 'uint256', internalType: 'uint256', }, { name: '_nonce', type: 'uint256', internalType: 'uint256', }, { name: '_sender', type: 'address', internalType: 'address', }, { name: '_target', type: 'address', internalType: 'address', }, { name: '_message', type: 'bytes', internalType: 'bytes', }, ], outputs: [ { name: 'messageHash_', type: 'bytes32', internalType: 'bytes32', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'sendMessage', inputs: [ { name: '_destination', type: 'uint256', internalType: 'uint256', }, { name: '_target', type: 'address', internalType: 'address', }, { name: '_message', type: 'bytes', internalType: 'bytes', }, ], outputs: [ { name: 'messageHash_', type: 'bytes32', internalType: 'bytes32', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'sentMessages', inputs: [ { name: '', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'function', name: 'successfulMessages', inputs: [ { name: '', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'function', name: 'version', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'event', name: 'RelayedMessage', inputs: [ { name: 'source', type: 'uint256', indexed: true, internalType: 'uint256', }, { name: 'messageNonce', type: 'uint256', indexed: true, internalType: 'uint256', }, { name: 'messageHash', type: 'bytes32', indexed: true, internalType: 'bytes32', }, { name: 'returnDataHash', type: 'bytes32', indexed: false, internalType: 'bytes32', }, ], anonymous: false, }, { type: 'event', name: 'SentMessage', inputs: [ { name: 'destination', type: 'uint256', indexed: true, internalType: 'uint256', }, { name: 'target', type: 'address', indexed: true, internalType: 'address', }, { name: 'messageNonce', type: 'uint256', indexed: true, internalType: 'uint256', }, { name: 'sender', type: 'address', indexed: false, internalType: 'address', }, { name: 'message', type: 'bytes', indexed: false, internalType: 'bytes', }, ], anonymous: false, }, { type: 'error', name: 'EventPayloadNotSentMessage', inputs: [], }, { type: 'error', name: 'IdOriginNotL2ToL2CrossDomainMessenger', inputs: [], }, { type: 'error', name: 'InvalidMessage', inputs: [], }, { type: 'error', name: 'MessageAlreadyRelayed', inputs: [], }, { type: 'error', name: 'MessageDestinationNotRelayChain', inputs: [], }, { type: 'error', name: 'MessageDestinationSameChain', inputs: [], }, { type: 'error', name: 'MessageTargetL2ToL2CrossDomainMessenger', inputs: [], }, { type: 'error', name: 'NotEntered', inputs: [], }, { type: 'error', name: 'ReentrantCall', inputs: [], }, ] as const /** * ABI for the OP Stack contract `OptimismMintableERC20` * @category ABI */ export const optimismMintableERC20Abi = [ { type: 'constructor', inputs: [ { name: '_bridge', type: 'address', internalType: 'address', }, { name: '_remoteToken', type: 'address', internalType: 'address', }, { name: '_name', type: 'string', internalType: 'string', }, { name: '_symbol', type: 'string', internalType: 'string', }, { name: '_decimals', type: 'uint8', internalType: 'uint8', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'BRIDGE', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'DOMAIN_SEPARATOR', inputs: [], outputs: [ { name: '', type: 'bytes32', internalType: 'bytes32', }, ], stateMutability: 'view', }, { type: 'function', name: 'PERMIT2', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'pure', }, { type: 'function', name: 'REMOTE_TOKEN', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'allowance', inputs: [ { name: '_owner', type: 'address', internalType: 'address', }, { name: '_spender', type: 'address', internalType: 'address', }, ], outputs: [ { name: '', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'approve', inputs: [ { name: 'spender', type: 'address', internalType: 'address', }, { name: 'amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'balanceOf', inputs: [ { name: 'account', type: 'address', internalType: 'address', }, ], outputs: [ { name: '', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'bridge', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'burn', inputs: [ { name: '_from', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'decimals', inputs: [], outputs: [ { name: '', type: 'uint8', internalType: 'uint8', }, ], stateMutability: 'view', }, { type: 'function', name: 'decreaseAllowance', inputs: [ { name: 'spender', type: 'address', internalType: 'address', }, { name: 'subtractedValue', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'increaseAllowance', inputs: [ { name: 'spender', type: 'address', internalType: 'address', }, { name: 'addedValue', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'l1Token', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'l2Bridge', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'mint', inputs: [ { name: '_to', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'name', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'function', name: 'nonces', inputs: [ { name: 'owner', type: 'address', internalType: 'address', }, ], outputs: [ { name: '', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'permit', inputs: [ { name: 'owner', type: 'address', internalType: 'address', }, { name: 'spender', type: 'address', internalType: 'address', }, { name: 'value', type: 'uint256', internalType: 'uint256', }, { name: 'deadline', type: 'uint256', internalType: 'uint256', }, { name: 'v', type: 'uint8', internalType: 'uint8', }, { name: 'r', type: 'bytes32', internalType: 'bytes32', }, { name: 's', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'remoteToken', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'supportsInterface', inputs: [ { name: '_interfaceId', type: 'bytes4', internalType: 'bytes4', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'pure', }, { type: 'function', name: 'symbol', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'function', name: 'totalSupply', inputs: [], outputs: [ { name: '', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'transfer', inputs: [ { name: 'to', type: 'address', internalType: 'address', }, { name: 'amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'transferFrom', inputs: [ { name: 'from', type: 'address', internalType: 'address', }, { name: 'to', type: 'address', internalType: 'address', }, { name: 'amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'version', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'event', name: 'Approval', inputs: [ { name: 'owner', type: 'address', indexed: true, internalType: 'address', }, { name: 'spender', type: 'address', indexed: true, internalType: 'address', }, { name: 'value', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'Burn', inputs: [ { name: 'account', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'Mint', inputs: [ { name: 'account', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'Transfer', inputs: [ { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'value', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, ] as const /** * ABI for the OP Stack contract `OptimismMintableERC20Factory` * @category ABI */ export const optimismMintableERC20FactoryAbi = [ { type: 'constructor', inputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'BRIDGE', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'bridge', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'createOptimismMintableERC20', inputs: [ { name: '_remoteToken', type: 'address', internalType: 'address', }, { name: '_name', type: 'string', internalType: 'string', }, { name: '_symbol', type: 'string', internalType: 'string', }, ], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'createOptimismMintableERC20WithDecimals', inputs: [ { name: '_remoteToken', type: 'address', internalType: 'address', }, { name: '_name', type: 'string', internalType: 'string', }, { name: '_symbol', type: 'string', internalType: 'string', }, { name: '_decimals', type: 'uint8', internalType: 'uint8', }, ], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'createStandardL2Token', inputs: [ { name: '_remoteToken', type: 'address', internalType: 'address', }, { name: '_name', type: 'string', internalType: 'string', }, { name: '_symbol', type: 'string', internalType: 'string', }, ], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'deployments', inputs: [ { name: '', type: 'address', internalType: 'address', }, ], outputs: [ { name: '', type: 'address', internalType: 'address', }, ], stateMutability: 'view', }, { type: 'function', name: 'initialize', inputs: [ { name: '_bridge', type: 'address', internalType: 'address', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'version', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'event', name: 'Initialized', inputs: [ { name: 'version', type: 'uint8', indexed: false, internalType: 'uint8', }, ], anonymous: false, }, { type: 'event', name: 'OptimismMintableERC20Created', inputs: [ { name: 'localToken', type: 'address', indexed: true, internalType: 'address', }, { name: 'remoteToken', type: 'address', indexed: true, internalType: 'address', }, { name: 'deployer', type: 'address', indexed: false, internalType: 'address', }, ], anonymous: false, }, { type: 'event', name: 'StandardL2TokenCreated', inputs: [ { name: 'remoteToken', type: 'address', indexed: true, internalType: 'address', }, { name: 'localToken', type: 'address', indexed: true, internalType: 'address', }, ], anonymous: false, }, ] as const /** * ABI for the OP Stack contract `StandardBridge` * @category ABI */ export const standardBridgeAbi = [ { type: 'receive', stateMutability: 'payable', }, { type: 'function', name: 'MESSENGER', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'contract ICrossDomainMessenger', }, ], stateMutability: 'view', }, { type: 'function', name: 'OTHER_BRIDGE', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'contract StandardBridge', }, ], stateMutability: 'view', }, { type: 'function', name: 'bridgeERC20', inputs: [ { name: '_localToken', type: 'address', internalType: 'address', }, { name: '_remoteToken', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, { name: '_minGasLimit', type: 'uint32', internalType: 'uint32', }, { name: '_extraData', type: 'bytes', internalType: 'bytes', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'bridgeERC20To', inputs: [ { name: '_localToken', type: 'address', internalType: 'address', }, { name: '_remoteToken', type: 'address', internalType: 'address', }, { name: '_to', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, { name: '_minGasLimit', type: 'uint32', internalType: 'uint32', }, { name: '_extraData', type: 'bytes', internalType: 'bytes', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'bridgeETH', inputs: [ { name: '_minGasLimit', type: 'uint32', internalType: 'uint32', }, { name: '_extraData', type: 'bytes', internalType: 'bytes', }, ], outputs: [], stateMutability: 'payable', }, { type: 'function', name: 'bridgeETHTo', inputs: [ { name: '_to', type: 'address', internalType: 'address', }, { name: '_minGasLimit', type: 'uint32', internalType: 'uint32', }, { name: '_extraData', type: 'bytes', internalType: 'bytes', }, ], outputs: [], stateMutability: 'payable', }, { type: 'function', name: 'deposits', inputs: [ { name: '', type: 'address', internalType: 'address', }, { name: '', type: 'address', internalType: 'address', }, ], outputs: [ { name: '', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'finalizeBridgeERC20', inputs: [ { name: '_localToken', type: 'address', internalType: 'address', }, { name: '_remoteToken', type: 'address', internalType: 'address', }, { name: '_from', type: 'address', internalType: 'address', }, { name: '_to', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, { name: '_extraData', type: 'bytes', internalType: 'bytes', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'finalizeBridgeETH', inputs: [ { name: '_from', type: 'address', internalType: 'address', }, { name: '_to', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, { name: '_extraData', type: 'bytes', internalType: 'bytes', }, ], outputs: [], stateMutability: 'payable', }, { type: 'function', name: 'messenger', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'contract ICrossDomainMessenger', }, ], stateMutability: 'view', }, { type: 'function', name: 'otherBridge', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'contract StandardBridge', }, ], stateMutability: 'view', }, { type: 'function', name: 'paused', inputs: [], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'event', name: 'ERC20BridgeFinalized', inputs: [ { name: 'localToken', type: 'address', indexed: true, internalType: 'address', }, { name: 'remoteToken', type: 'address', indexed: true, internalType: 'address', }, { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: false, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'extraData', type: 'bytes', indexed: false, internalType: 'bytes', }, ], anonymous: false, }, { type: 'event', name: 'ERC20BridgeInitiated', inputs: [ { name: 'localToken', type: 'address', indexed: true, internalType: 'address', }, { name: 'remoteToken', type: 'address', indexed: true, internalType: 'address', }, { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: false, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'extraData', type: 'bytes', indexed: false, internalType: 'bytes', }, ], anonymous: false, }, { type: 'event', name: 'ETHBridgeFinalized', inputs: [ { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'extraData', type: 'bytes', indexed: false, internalType: 'bytes', }, ], anonymous: false, }, { type: 'event', name: 'ETHBridgeInitiated', inputs: [ { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'extraData', type: 'bytes', indexed: false, internalType: 'bytes', }, ], anonymous: false, }, { type: 'event', name: 'Initialized', inputs: [ { name: 'version', type: 'uint8', indexed: false, internalType: 'uint8', }, ], anonymous: false, }, ] as const /** * ABI for the OP Stack contract `SuperchainERC20` * @category ABI */ export const superchainERC20Abi = [ { type: 'function', name: 'DOMAIN_SEPARATOR', inputs: [], outputs: [ { name: 'result', type: 'bytes32', internalType: 'bytes32', }, ], stateMutability: 'view', }, { type: 'function', name: 'allowance', inputs: [ { name: 'owner', type: 'address', internalType: 'address', }, { name: 'spender', type: 'address', internalType: 'address', }, ], outputs: [ { name: 'result', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'approve', inputs: [ { name: 'spender', type: 'address', internalType: 'address', }, { name: 'amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'balanceOf', inputs: [ { name: 'owner', type: 'address', internalType: 'address', }, ], outputs: [ { name: 'result', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'crosschainBurn', inputs: [ { name: '_from', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'crosschainMint', inputs: [ { name: '_to', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'decimals', inputs: [], outputs: [ { name: '', type: 'uint8', internalType: 'uint8', }, ], stateMutability: 'view', }, { type: 'function', name: 'name', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'function', name: 'nonces', inputs: [ { name: 'owner', type: 'address', internalType: 'address', }, ], outputs: [ { name: 'result', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'permit', inputs: [ { name: 'owner', type: 'address', internalType: 'address', }, { name: 'spender', type: 'address', internalType: 'address', }, { name: 'value', type: 'uint256', internalType: 'uint256', }, { name: 'deadline', type: 'uint256', internalType: 'uint256', }, { name: 'v', type: 'uint8', internalType: 'uint8', }, { name: 'r', type: 'bytes32', internalType: 'bytes32', }, { name: 's', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'supportsInterface', inputs: [ { name: '_interfaceId', type: 'bytes4', internalType: 'bytes4', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'function', name: 'symbol', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'function', name: 'totalSupply', inputs: [], outputs: [ { name: 'result', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'transfer', inputs: [ { name: 'to', type: 'address', internalType: 'address', }, { name: 'amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'transferFrom', inputs: [ { name: 'from', type: 'address', internalType: 'address', }, { name: 'to', type: 'address', internalType: 'address', }, { name: 'amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: '', type: 'bool', internalType: 'bool', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'version', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'event', name: 'Approval', inputs: [ { name: 'owner', type: 'address', indexed: true, internalType: 'address', }, { name: 'spender', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'CrosschainBurn', inputs: [ { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'sender', type: 'address', indexed: true, internalType: 'address', }, ], anonymous: false, }, { type: 'event', name: 'CrosschainMint', inputs: [ { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'sender', type: 'address', indexed: true, internalType: 'address', }, ], anonymous: false, }, { type: 'event', name: 'Transfer', inputs: [ { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'error', name: 'AllowanceOverflow', inputs: [], }, { type: 'error', name: 'AllowanceUnderflow', inputs: [], }, { type: 'error', name: 'InsufficientAllowance', inputs: [], }, { type: 'error', name: 'InsufficientBalance', inputs: [], }, { type: 'error', name: 'InvalidPermit', inputs: [], }, { type: 'error', name: 'Permit2AllowanceIsFixedAtInfinity', inputs: [], }, { type: 'error', name: 'PermitExpired', inputs: [], }, { type: 'error', name: 'TotalSupplyOverflow', inputs: [], }, { type: 'error', name: 'Unauthorized', inputs: [], }, ] as const /** * ABI for the OP Stack contract `SuperchainETHBridge` * @category ABI */ export const superchainETHBridgeAbi = [ { type: 'function', name: 'relayETH', inputs: [ { name: '_from', type: 'address', internalType: 'address', }, { name: '_to', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'sendETH', inputs: [ { name: '_to', type: 'address', internalType: 'address', }, { name: '_chainId', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: 'msgHash_', type: 'bytes32', internalType: 'bytes32', }, ], stateMutability: 'payable', }, { type: 'function', name: 'version', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'event', name: 'RelayETH', inputs: [ { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'source', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'SendETH', inputs: [ { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'destination', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'error', name: 'InvalidCrossDomainSender', inputs: [], }, { type: 'error', name: 'Unauthorized', inputs: [], }, { type: 'error', name: 'ZeroAddress', inputs: [], }, ] as const /** * ABI for the OP Stack contract `SuperchainTokenBridge` * @category ABI */ export const superchainTokenBridgeAbi = [ { type: 'function', name: 'relayERC20', inputs: [ { name: '_token', type: 'address', internalType: 'address', }, { name: '_from', type: 'address', internalType: 'address', }, { name: '_to', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'sendERC20', inputs: [ { name: '_token', type: 'address', internalType: 'address', }, { name: '_to', type: 'address', internalType: 'address', }, { name: '_amount', type: 'uint256', internalType: 'uint256', }, { name: '_chainId', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: 'msgHash_', type: 'bytes32', internalType: 'bytes32', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'version', inputs: [], outputs: [ { name: '', type: 'string', internalType: 'string', }, ], stateMutability: 'view', }, { type: 'event', name: 'RelayERC20', inputs: [ { name: 'token', type: 'address', indexed: true, internalType: 'address', }, { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'source', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'SendERC20', inputs: [ { name: 'token', type: 'address', indexed: true, internalType: 'address', }, { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'to', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'destination', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'error', name: 'InvalidCrossDomainSender', inputs: [], }, { type: 'error', name: 'InvalidERC7802', inputs: [], }, { type: 'error', name: 'Unauthorized', inputs: [], }, { type: 'error', name: 'ZeroAddress', inputs: [], }, ] as const /** * ABI for the OP Stack contract `Create2Deployer` * @category ABI */ export const create2DeployerAbi = [ { type: 'function', name: 'computeAddress', inputs: [ { name: 'salt', type: 'bytes32', internalType: 'bytes32' }, { name: 'codeHash', type: 'bytes32', internalType: 'bytes32' }, ], outputs: [{ name: '', type: 'address', internalType: 'address' }], stateMutability: 'view', }, { type: 'function', name: 'deploy', inputs: [ { name: 'value', type: 'uint256', internalType: 'uint256' }, { name: 'salt', type: 'bytes32', internalType: 'bytes32' }, { name: 'code', type: 'bytes', internalType: 'bytes' }, ], outputs: [], stateMutability: 'nonpayable', }, ] as const