UNPKG

witnet-solidity-bridge

Version:

Witnet Solidity Bridge contracts for EVM-compatible chains

341 lines 16.1 kB
{ "contractName": "IWitOracleQueriableConsumer", "abi": [ { "inputs": [ { "internalType": "uint256", "name": "queryId", "type": "uint256" }, { "internalType": "bytes", "name": "queryResult", "type": "bytes" } ], "name": "reportWitOracleQueryResult", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "reportableFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" } ], "metadata": "{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"queryResult\",\"type\":\"bytes\"}],\"name\":\"reportWitOracleQueryResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"reportableFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"reportWitOracleQueryResult(uint256,bytes)\":{\"details\":\"It should revert if called from an address different to the WitOracle instance being used by consumer.\",\"params\":{\"queryId\":\"The unique identifier of the Witnet query being reported.\",\"queryResult\":\"Abi-encoded Witnet.DataResult containing the CBOR-encoded query's result, and metadata.\"}},\"reportableFrom(address)\":{\"details\":\"In practice, must only be true on the WitOracle address that's being used bythe WitOracleQueriableConsumer to post queries. \"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"reportWitOracleQueryResult(uint256,bytes)\":{\"notice\":\"Method to be called from the WitOracle contract as soon as the given Witnet `queryId` gets reported.\"},\"reportableFrom(address)\":{\"notice\":\"Determines if Witnet queries can be reported from given address.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/interfaces/IWitOracleQueriableConsumer.sol\":\"IWitOracleQueriableConsumer\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/interfaces/IWitOracleQueriable.sol\":{\"keccak256\":\"0xdb0da1e377a35a7d620f43cb583a876750a52d91da2b888f48042483ad9c4910\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://edfcdf3e96ec3c5de7438f82e3d5a1dc9af9eb29080044213dccb26ff978354c\",\"dweb:/ipfs/Qmap2FzSysh2fug88eortbsTM7itFygRzKc9HfV43ePMik\"]},\"project:/contracts/interfaces/IWitOracleQueriableConsumer.sol\":{\"keccak256\":\"0xe8143d2387d674022f453b57652998f53cbe4c21fe35e59421428142355c8ebf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e6c3e3d3e7168a3fb75b1eca23d078d5240e5b02dac8a449d1ddf79256a34d8\",\"dweb:/ipfs/QmbGk4tQzTogTBVYiT8t3Gqtk6qDs5nyp9Z53GryTjKAm5\"]},\"project:/contracts/libs/Bech32.sol\":{\"keccak256\":\"0x14618323a0efe7586c20906a2e9cee7ad63baa976ff231c57f7f2d7d3707fb8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a19f05fe84047a7a6d3d6fc39972b432e6e536aa70472386a9d7a6d9aab64a64\",\"dweb:/ipfs/QmcHwUY66yjiotRH4Q3kbRvSzcHyLQ1yHL3KbtQKiMhtZE\"]},\"project:/contracts/libs/Secp256k1.sol\":{\"keccak256\":\"0xbe686002da5004ff39dd70709f3820eba2afe9323ae9cb894009c161e4b1a666\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18fab91775216de0707cea9ad285b10be09127461a13432fea358bf9cb2a0c2e\",\"dweb:/ipfs/QmeRUGsgstnM4hxM9hpkBf3L6cE5btirEaowcMxmuw3utj\"]},\"project:/contracts/libs/Witnet.sol\":{\"keccak256\":\"0x1d446c3e534e40e676d1763bfb2897fadfac8afed904ab757843d7d6770b0a6c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://338fb1073f17d64e8d31bfe492d9475ce906788ee08e6489ce30413f91dc1328\",\"dweb:/ipfs/QmPe5QX2AGTnQFjse1Xttq4ZYWwYAiXoySb5VUui3PqPhk\"]},\"project:/contracts/libs/WitnetBuffer.sol\":{\"keccak256\":\"0x8e07aebe2954ab3e6f2d8eceedb12db7cf915c1f3e8630f4fa9999cecb1c78ec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed6c54cc901183d61546e8fd15bd5ea8ef238ebc915642946071d435dd7481ea\",\"dweb:/ipfs/Qmcaqta7YjUSBbBUGqoh44bsCS6UqqoyHjBuz4qnKBShXM\"]},\"project:/contracts/libs/WitnetCBOR.sol\":{\"keccak256\":\"0xd99308373575cc10fb7f2ceb0f6a8625f3911275c1fa27811fae498d98d03d97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b4909a999d7b660a2dc54ca957b6eccfa523e2765fc4d6a2574dee7d5cd67b43\",\"dweb:/ipfs/QmWGQT4KDcfSFe1hcHVoWx6E4PhYMaod5iLpJCWBEeShzh\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [], "sourceMap": "", "deployedSourceMap": "", "source": "// SPDX-License-Identifier: MIT\r\n\r\npragma solidity ^0.8.0;\r\n\r\nimport \"./IWitOracleQueriable.sol\";\r\n\r\ninterface IWitOracleQueriableConsumer {\r\n\r\n /// Method to be called from the WitOracle contract as soon as the given Witnet `queryId` gets reported.\r\n /// @dev It should revert if called from an address different to the WitOracle instance being used by consumer.\r\n /// @param queryId The unique identifier of the Witnet query being reported.\r\n /// @param queryResult Abi-encoded Witnet.DataResult containing the CBOR-encoded query's result, and metadata.\r\n function reportWitOracleQueryResult(\r\n uint256 queryId,\r\n bytes calldata queryResult\r\n ) external;\r\n\r\n /// @notice Determines if Witnet queries can be reported from given address.\r\n /// @dev In practice, must only be true on the WitOracle address that's being used by\r\n /// @dev the WitOracleQueriableConsumer to post queries. \r\n function reportableFrom(address) external view returns (bool);\r\n}\r\n", "sourcePath": "C:\\Users\\guill\\github\\guidiaz\\witnet-solidity-bridge\\contracts\\interfaces\\IWitOracleQueriableConsumer.sol", "ast": { "absolutePath": "project:/contracts/interfaces/IWitOracleQueriableConsumer.sol", "exportedSymbols": { "Bech32": [ 31372 ], "IWitOracleQueriable": [ 26795 ], "IWitOracleQueriableConsumer": [ 26815 ], "Secp256k1": [ 32535 ], "Witnet": [ 40741 ], "WitnetBuffer": [ 42631 ], "WitnetCBOR": [ 44174 ] }, "id": 26816, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { "id": 26797, "literals": [ "solidity", "^", "0.8", ".0" ], "nodeType": "PragmaDirective", "src": "35:23:68" }, { "absolutePath": "project:/contracts/interfaces/IWitOracleQueriable.sol", "file": "./IWitOracleQueriable.sol", "id": 26798, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 26816, "sourceUnit": 26796, "src": "62:35:68", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [], "canonicalName": "IWitOracleQueriableConsumer", "contractDependencies": [], "contractKind": "interface", "fullyImplemented": false, "id": 26815, "linearizedBaseContracts": [ 26815 ], "name": "IWitOracleQueriableConsumer", "nameLocation": "111:27:68", "nodeType": "ContractDefinition", "nodes": [ { "documentation": { "id": 26799, "nodeType": "StructuredDocumentation", "src": "148:419:68", "text": "Method to be called from the WitOracle contract as soon as the given Witnet `queryId` gets reported.\n @dev It should revert if called from an address different to the WitOracle instance being used by consumer.\n @param queryId The unique identifier of the Witnet query being reported.\n @param queryResult Abi-encoded Witnet.DataResult containing the CBOR-encoded query's result, and metadata." }, "functionSelector": "d6f29e81", "id": 26806, "implemented": false, "kind": "function", "modifiers": [], "name": "reportWitOracleQueryResult", "nameLocation": "582:26:68", "nodeType": "FunctionDefinition", "parameters": { "id": 26804, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 26801, "mutability": "mutable", "name": "queryId", "nameLocation": "631:7:68", "nodeType": "VariableDeclaration", "scope": 26806, "src": "623:15:68", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 26800, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "623:7:68", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 26803, "mutability": "mutable", "name": "queryResult", "nameLocation": "668:11:68", "nodeType": "VariableDeclaration", "scope": 26806, "src": "653:26:68", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes" }, "typeName": { "id": 26802, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "653:5:68", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "608:82:68" }, "returnParameters": { "id": 26805, "nodeType": "ParameterList", "parameters": [], "src": "699:0:68" }, "scope": 26815, "src": "573:127:68", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "documentation": { "id": 26807, "nodeType": "StructuredDocumentation", "src": "708:230:68", "text": "@notice Determines if Witnet queries can be reported from given address.\n @dev In practice, must only be true on the WitOracle address that's being used by\n @dev the WitOracleQueriableConsumer to post queries. " }, "functionSelector": "47a10e56", "id": 26814, "implemented": false, "kind": "function", "modifiers": [], "name": "reportableFrom", "nameLocation": "953:14:68", "nodeType": "FunctionDefinition", "parameters": { "id": 26810, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 26809, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 26814, "src": "968:7:68", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 26808, "name": "address", "nodeType": "ElementaryTypeName", "src": "968:7:68", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "967:9:68" }, "returnParameters": { "id": 26813, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 26812, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 26814, "src": "1000:4:68", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 26811, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1000:4:68", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "999:6:68" }, "scope": 26815, "src": "944:62:68", "stateMutability": "view", "virtual": false, "visibility": "external" } ], "scope": 26816, "src": "101:908:68", "usedErrors": [], "usedEvents": [] } ], "src": "35:976:68" }, "compiler": { "name": "solc", "version": "0.8.30+commit.73712a01.Emscripten.clang" }, "networks": {}, "schemaVersion": "3.4.16", "updatedAt": "2025-10-15T14:34:45.896Z", "devdoc": { "kind": "dev", "methods": { "reportWitOracleQueryResult(uint256,bytes)": { "details": "It should revert if called from an address different to the WitOracle instance being used by consumer.", "params": { "queryId": "The unique identifier of the Witnet query being reported.", "queryResult": "Abi-encoded Witnet.DataResult containing the CBOR-encoded query's result, and metadata." } }, "reportableFrom(address)": { "details": "In practice, must only be true on the WitOracle address that's being used bythe WitOracleQueriableConsumer to post queries. " } }, "version": 1 }, "userdoc": { "kind": "user", "methods": { "reportWitOracleQueryResult(uint256,bytes)": { "notice": "Method to be called from the WitOracle contract as soon as the given Witnet `queryId` gets reported." }, "reportableFrom(address)": { "notice": "Determines if Witnet queries can be reported from given address." } }, "version": 1 } }