UNPKG

@etherisc/gif-interface

Version:

This repository holds the necessary interfaces and base contracts to interact with an existing GIF instance. The repository is not intended to be used on its own.

733 lines 20.1 kB
{ "abi": [ { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "componentName", "type": "bytes32" }, { "indexed": false, "internalType": "enum IComponent.ComponentType", "name": "componentType", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "componentAddress", "type": "address" }, { "indexed": false, "internalType": "address", "name": "registryAddress", "type": "address" } ], "name": "LogComponentCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogOracleApproved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oracleAddress", "type": "address" } ], "name": "LogOracleCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogOracleDeclined", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogOracleProposed", "type": "event" }, { "inputs": [], "name": "approvalCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "archiveCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "requestId", "type": "uint256" } ], "name": "cancel", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "declineCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getName", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRegistry", "outputs": [ { "internalType": "contract IRegistry", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getState", "outputs": [ { "internalType": "enum IComponent.ComponentState", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getType", "outputs": [ { "internalType": "enum IComponent.ComponentType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isOracle", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isProduct", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isRiskpool", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "proposalCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "requestId", "type": "uint256" }, { "internalType": "bytes", "name": "input", "type": "bytes" } ], "name": "request", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "resumeCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "setId", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "suspendCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpauseCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "allSourcePaths": { "21": "contracts/modules/IRegistry.sol", "7": "contracts/components/IComponent.sol", "8": "contracts/components/IOracle.sol" }, "ast": { "absolutePath": "contracts/components/IOracle.sol", "exportedSymbols": { "IComponent": [ 812 ], "IOracle": [ 846 ], "IRegistry": [ 3538 ] }, "id": 847, "license": "Apache-2.0", "nodeType": "SourceUnit", "nodes": [ { "id": 814, "literals": [ "solidity", "0.8", ".2" ], "nodeType": "PragmaDirective", "src": "39:22:8" }, { "absolutePath": "contracts/components/IComponent.sol", "file": "./IComponent.sol", "id": 815, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 847, "sourceUnit": 813, "src": "63:26:8", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 816, "name": "IComponent", "nodeType": "IdentifierPath", "referencedDeclaration": 812, "src": "112:10:8" }, "id": 817, "nodeType": "InheritanceSpecifier", "src": "112:10:8" } ], "contractDependencies": [ 812 ], "contractKind": "interface", "fullyImplemented": false, "id": 846, "linearizedBaseContracts": [ 846, 812 ], "name": "IOracle", "nameLocation": "101:7:8", "nodeType": "ContractDefinition", "nodes": [ { "anonymous": false, "id": 821, "name": "LogOracleCreated", "nameLocation": "140:16:8", "nodeType": "EventDefinition", "parameters": { "id": 820, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 819, "indexed": false, "mutability": "mutable", "name": "oracleAddress", "nameLocation": "166:13:8", "nodeType": "VariableDeclaration", "scope": 821, "src": "158:21:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 818, "name": "address", "nodeType": "ElementaryTypeName", "src": "158:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "157:23:8" }, "src": "134:47:8" }, { "anonymous": false, "id": 825, "name": "LogOracleProposed", "nameLocation": "192:17:8", "nodeType": "EventDefinition", "parameters": { "id": 824, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 823, "indexed": false, "mutability": "mutable", "name": "componentId", "nameLocation": "219:11:8", "nodeType": "VariableDeclaration", "scope": 825, "src": "211:19:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 822, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "211:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "210:21:8" }, "src": "186:46:8" }, { "anonymous": false, "id": 829, "name": "LogOracleApproved", "nameLocation": "243:17:8", "nodeType": "EventDefinition", "parameters": { "id": 828, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 827, "indexed": false, "mutability": "mutable", "name": "componentId", "nameLocation": "270:11:8", "nodeType": "VariableDeclaration", "scope": 829, "src": "262:19:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 826, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "262:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "261:21:8" }, "src": "237:46:8" }, { "anonymous": false, "id": 833, "name": "LogOracleDeclined", "nameLocation": "294:17:8", "nodeType": "EventDefinition", "parameters": { "id": 832, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 831, "indexed": false, "mutability": "mutable", "name": "componentId", "nameLocation": "321:11:8", "nodeType": "VariableDeclaration", "scope": 833, "src": "313:19:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 830, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "313:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "312:21:8" }, "src": "288:46:8" }, { "functionSelector": "ffc79065", "id": 840, "implemented": false, "kind": "function", "modifiers": [], "name": "request", "nameLocation": "353:7:8", "nodeType": "FunctionDefinition", "parameters": { "id": 838, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 835, "mutability": "mutable", "name": "requestId", "nameLocation": "369:9:8", "nodeType": "VariableDeclaration", "scope": 840, "src": "361:17:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 834, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "361:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 837, "mutability": "mutable", "name": "input", "nameLocation": "395:5:8", "nodeType": "VariableDeclaration", "scope": 840, "src": "380:20:8", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes" }, "typeName": { "id": 836, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "380:5:8", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "360:41:8" }, "returnParameters": { "id": 839, "nodeType": "ParameterList", "parameters": [], "src": "410:0:8" }, "scope": 846, "src": "344:67:8", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "40e58ee5", "id": 845, "implemented": false, "kind": "function", "modifiers": [], "name": "cancel", "nameLocation": "425:6:8", "nodeType": "FunctionDefinition", "parameters": { "id": 843, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 842, "mutability": "mutable", "name": "requestId", "nameLocation": "440:9:8", "nodeType": "VariableDeclaration", "scope": 845, "src": "432:17:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 841, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "432:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "431:19:8" }, "returnParameters": { "id": 844, "nodeType": "ParameterList", "parameters": [], "src": "459:0:8" }, "scope": 846, "src": "416:44:8", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], "scope": 847, "src": "91:371:8" } ], "src": "39:424:8" }, "bytecode": "", "bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709", "compiler": { "evm_version": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "version": "0.8.2+commit.661d1103" }, "contractName": "IOracle", "coverageMap": { "branches": {}, "statements": {} }, "dependencies": [ "IComponent", "IRegistry" ], "deployedBytecode": "", "deployedSourceMap": "", "language": "Solidity", "natspec": { "kind": "dev", "methods": {}, "version": 1 }, "offset": [ 91, 462 ], "opcodes": "", "pcMap": {}, "sha1": "c7fe17eba5b49c1fa2ac46e359cd7d5b17a38115", "source": "// SPDX-License-Identifier: Apache-2.0\npragma solidity 0.8.2;\n\nimport \"./IComponent.sol\";\n\ninterface IOracle is IComponent {\n \n event LogOracleCreated (address oracleAddress);\n event LogOracleProposed (uint256 componentId);\n event LogOracleApproved (uint256 componentId);\n event LogOracleDeclined (uint256 componentId);\n \n function request(uint256 requestId, bytes calldata input) external;\n function cancel(uint256 requestId) external;\n}\n", "sourceMap": "", "sourcePath": "contracts/components/IOracle.sol", "type": "interface" }