// DO NOT MODIFY THIS FILE IS AUTOGENERATED /** * ABI for the OP Stack contract `GasTank` * @category ABI */ export const gasTankAbi = [ { type: 'function', name: 'GAS_PRICE_ORACLE', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'contract IGasPriceOracle', }, ], stateMutability: 'view', }, { type: 'function', name: 'MESSENGER', inputs: [], outputs: [ { name: '', type: 'address', internalType: 'contract IL2ToL2CrossDomainMessenger', }, ], stateMutability: 'view', }, { type: 'function', name: 'WITHDRAWAL_DELAY', inputs: [], outputs: [ { name: '', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'authorizeClaim', inputs: [ { name: '_messageHashes', type: 'bytes32[]', internalType: 'bytes32[]', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'authorizedMessages', inputs: [ { name: 'gasProvider', type: 'address', internalType: 'address', }, { name: 'messageHash', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [ { name: 'authorized', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'function', name: 'balanceOf', inputs: [ { name: 'gasProvider', type: 'address', internalType: 'address', }, ], outputs: [ { name: 'balance', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'function', name: 'claim', 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: '_payload', type: 'bytes', internalType: 'bytes', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'claimed', inputs: [ { name: 'messageHash', type: 'bytes32', internalType: 'bytes32', }, ], outputs: [ { name: 'claimed', type: 'bool', internalType: 'bool', }, ], stateMutability: 'view', }, { type: 'function', name: 'decodeGasReceiptPayload', inputs: [ { name: '_payload', type: 'bytes', internalType: 'bytes', }, ], outputs: [ { name: 'messageHash_', type: 'bytes32', internalType: 'bytes32', }, { name: 'relayer_', type: 'address', internalType: 'address', }, { name: 'gasProvider_', type: 'address', internalType: 'address', }, { name: 'gasProviderChainID_', type: 'uint256', internalType: 'uint256', }, { name: 'relayCost_', type: 'uint256', internalType: 'uint256', }, { name: 'nestedMessageHashes_', type: 'bytes32[]', internalType: 'bytes32[]', }, ], stateMutability: 'pure', }, { type: 'function', name: 'deposit', inputs: [ { name: '_to', type: 'address', internalType: 'address', }, ], outputs: [], stateMutability: 'payable', }, { type: 'function', name: 'finalizeWithdrawal', inputs: [ { name: '_to', type: 'address', internalType: 'address', }, ], outputs: [], stateMutability: 'nonpayable', }, { type: 'function', name: 'initiateWithdrawal', inputs: [ { name: '_amount', type: 'uint256', internalType: 'uint256', }, ], outputs: [], stateMutability: 'nonpayable', }, { 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', }, { name: '_gasProvider', type: 'address', internalType: 'address', }, { name: '_gasProviderChainID', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: 'relayCost_', type: 'uint256', internalType: 'uint256', }, { name: 'nestedMessageHashes_', type: 'bytes32[]', internalType: 'bytes32[]', }, ], stateMutability: 'nonpayable', }, { type: 'function', name: 'simulateClaimOverhead', inputs: [ { name: '_numHashes', type: 'uint256', internalType: 'uint256', }, { name: '_baseFee', type: 'uint256', internalType: 'uint256', }, ], outputs: [ { name: 'overhead_', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'pure', }, { type: 'function', name: 'withdrawals', inputs: [ { name: 'gasProvider', type: 'address', internalType: 'address', }, ], outputs: [ { name: 'timestamp', type: 'uint256', internalType: 'uint256', }, { name: 'amount', type: 'uint256', internalType: 'uint256', }, ], stateMutability: 'view', }, { type: 'event', name: 'AuthorizedClaims', inputs: [ { name: 'gasProvider', type: 'address', indexed: true, internalType: 'address', }, { name: 'messageHashes', type: 'bytes32[]', indexed: false, internalType: 'bytes32[]', }, ], anonymous: false, }, { type: 'event', name: 'Claimed', inputs: [ { name: 'messageHash', type: 'bytes32', indexed: true, internalType: 'bytes32', }, { name: 'relayer', type: 'address', indexed: true, internalType: 'address', }, { name: 'gasProvider', type: 'address', indexed: true, internalType: 'address', }, { name: 'claimer', type: 'address', indexed: false, internalType: 'address', }, { name: 'relayCost', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'claimCost', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'Deposit', inputs: [ { name: 'gasProvider', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'event', name: 'RelayedMessageGasReceipt', inputs: [ { name: 'messageHash', type: 'bytes32', indexed: true, internalType: 'bytes32', }, { name: 'relayer', type: 'address', indexed: true, internalType: 'address', }, { name: 'gasProvider', type: 'address', indexed: false, internalType: 'address', }, { name: 'gasProviderChainID', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'relayCost', type: 'uint256', indexed: false, internalType: 'uint256', }, { name: 'nestedMessageHashes', type: 'bytes32[]', indexed: false, internalType: 'bytes32[]', }, ], anonymous: false, }, { type: 'event', name: 'WithdrawalFinalized', 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: 'event', name: 'WithdrawalInitiated', inputs: [ { name: 'from', type: 'address', indexed: true, internalType: 'address', }, { name: 'amount', type: 'uint256', indexed: false, internalType: 'uint256', }, ], anonymous: false, }, { type: 'error', name: 'AlreadyClaimed', inputs: [], }, { type: 'error', name: 'InsufficientBalance', inputs: [], }, { type: 'error', name: 'InvalidChainID', inputs: [], }, { type: 'error', name: 'InvalidLength', inputs: [], }, { type: 'error', name: 'InvalidOrigin', inputs: [], }, { type: 'error', name: 'InvalidPayload', inputs: [], }, { type: 'error', name: 'MessageNotAuthorized', inputs: [], }, { type: 'error', name: 'WithdrawPending', inputs: [], }, ] as const