UNPKG

@eco-foundation/routes

Version:

The Eco Routes Protocol is a decentralized intent based system that allows users to submit their intent to the network and have it fulfilled by a solver on the destination rollup of their choice.

400 lines (396 loc) 8.38 kB
/** * ABI for the IInbox contract */ export const IInboxAbi = [ { "inputs": [ { "internalType": "address", "name": "_EOA", "type": "address" } ], "name": "CallToEOA", "type": "error" }, { "inputs": [], "name": "CallToProver", "type": "error" }, { "inputs": [ { "internalType": "bytes32", "name": "_hash", "type": "bytes32" } ], "name": "IntentAlreadyFulfilled", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "_addr", "type": "address" }, { "internalType": "bytes", "name": "_data", "type": "bytes" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "bytes", "name": "_returnData", "type": "bytes" } ], "name": "IntentCallFailed", "type": "error" }, { "inputs": [ { "internalType": "bytes32", "name": "_hash", "type": "bytes32" } ], "name": "IntentNotFulfilled", "type": "error" }, { "inputs": [ { "internalType": "bytes32", "name": "_expectedHash", "type": "bytes32" } ], "name": "InvalidHash", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "_inbox", "type": "address" } ], "name": "InvalidInbox", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "_chainID", "type": "uint256" } ], "name": "WrongChain", "type": "error" }, { "inputs": [], "name": "ZeroClaimant", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "_hash", "type": "bytes32" }, { "indexed": true, "internalType": "uint256", "name": "_sourceChainID", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "_prover", "type": "address" }, { "indexed": false, "internalType": "address", "name": "_claimant", "type": "address" } ], "name": "Fulfillment", "type": "event" }, { "inputs": [ { "components": [ { "internalType": "bytes32", "name": "salt", "type": "bytes32" }, { "internalType": "uint256", "name": "source", "type": "uint256" }, { "internalType": "uint256", "name": "destination", "type": "uint256" }, { "internalType": "address", "name": "inbox", "type": "address" }, { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "internalType": "struct TokenAmount[]", "name": "tokens", "type": "tuple[]" }, { "components": [ { "internalType": "address", "name": "target", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "internalType": "struct Call[]", "name": "calls", "type": "tuple[]" } ], "internalType": "struct Route", "name": "_route", "type": "tuple" }, { "internalType": "bytes32", "name": "_rewardHash", "type": "bytes32" }, { "internalType": "address", "name": "_claimant", "type": "address" }, { "internalType": "bytes32", "name": "_expectedHash", "type": "bytes32" }, { "internalType": "address", "name": "_localProver", "type": "address" } ], "name": "fulfill", "outputs": [ { "internalType": "bytes[]", "name": "", "type": "bytes[]" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "bytes32", "name": "salt", "type": "bytes32" }, { "internalType": "uint256", "name": "source", "type": "uint256" }, { "internalType": "uint256", "name": "destination", "type": "uint256" }, { "internalType": "address", "name": "inbox", "type": "address" }, { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "internalType": "struct TokenAmount[]", "name": "tokens", "type": "tuple[]" }, { "components": [ { "internalType": "address", "name": "target", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "internalType": "struct Call[]", "name": "calls", "type": "tuple[]" } ], "internalType": "struct Route", "name": "_route", "type": "tuple" }, { "internalType": "bytes32", "name": "_rewardHash", "type": "bytes32" }, { "internalType": "address", "name": "_claimant", "type": "address" }, { "internalType": "bytes32", "name": "_expectedHash", "type": "bytes32" }, { "internalType": "address", "name": "_localProver", "type": "address" }, { "internalType": "bytes", "name": "_data", "type": "bytes" } ], "name": "fulfillAndProve", "outputs": [ { "internalType": "bytes[]", "name": "", "type": "bytes[]" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_sourceChainId", "type": "uint256" }, { "internalType": "bytes32[]", "name": "_intentHashes", "type": "bytes32[]" }, { "internalType": "address", "name": "_localProver", "type": "address" }, { "internalType": "bytes", "name": "_data", "type": "bytes" } ], "name": "initiateProving", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "version", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" } ] as const /** * Type-safe ABI for the IInbox contract */ export type IInboxAbiType = typeof IInboxAbi /** * Bytecode for the IInbox contract */ export const IInboxBytecode = "0x" /** * Deployed bytecode for the IInbox contract */ export const IInboxDeployedBytecode = "0x"