@etherisc/gif-contracts
Version:
This repository holds the GIF core contracts and tools to develop, test and deploy GIF instances.
620 lines • 20.4 kB
JSON
{
"abi": [
{
"inputs": [
{
"internalType": "bytes32",
"name": "requestId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "payment",
"type": "uint256"
},
{
"internalType": "address",
"name": "callbackAddress",
"type": "address"
},
{
"internalType": "bytes4",
"name": "callbackFunctionId",
"type": "bytes4"
},
{
"internalType": "uint256",
"name": "expiration",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "data",
"type": "bytes32"
}
],
"name": "fulfillOracleRequest",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "node",
"type": "address"
}
],
"name": "isAuthorizedSender",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "recipient",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "withdraw",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "withdrawable",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"allSourcePaths": {
"60": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/OracleInterface.sol"
},
"ast": {
"absolutePath": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/OracleInterface.sol",
"exportedSymbols": {
"OracleInterface": [
28626
]
},
"id": 28627,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 28589,
"literals": [
"solidity",
"^",
"0.8",
".0"
],
"nodeType": "PragmaDirective",
"src": "32:23:60"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "interface",
"fullyImplemented": false,
"id": 28626,
"linearizedBaseContracts": [
28626
],
"name": "OracleInterface",
"nameLocation": "67:15:60",
"nodeType": "ContractDefinition",
"nodes": [
{
"functionSelector": "4ab0d190",
"id": 28606,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "fulfillOracleRequest",
"nameLocation": "96:20:60",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 28602,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 28591,
"mutability": "mutable",
"name": "requestId",
"nameLocation": "130:9:60",
"nodeType": "VariableDeclaration",
"scope": 28606,
"src": "122:17:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 28590,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "122:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 28593,
"mutability": "mutable",
"name": "payment",
"nameLocation": "153:7:60",
"nodeType": "VariableDeclaration",
"scope": 28606,
"src": "145:15:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 28592,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "145:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 28595,
"mutability": "mutable",
"name": "callbackAddress",
"nameLocation": "174:15:60",
"nodeType": "VariableDeclaration",
"scope": 28606,
"src": "166:23:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 28594,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "166:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 28597,
"mutability": "mutable",
"name": "callbackFunctionId",
"nameLocation": "202:18:60",
"nodeType": "VariableDeclaration",
"scope": 28606,
"src": "195:25:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes4",
"typeString": "bytes4"
},
"typeName": {
"id": 28596,
"name": "bytes4",
"nodeType": "ElementaryTypeName",
"src": "195:6:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes4",
"typeString": "bytes4"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 28599,
"mutability": "mutable",
"name": "expiration",
"nameLocation": "234:10:60",
"nodeType": "VariableDeclaration",
"scope": 28606,
"src": "226:18:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 28598,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "226:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 28601,
"mutability": "mutable",
"name": "data",
"nameLocation": "258:4:60",
"nodeType": "VariableDeclaration",
"scope": 28606,
"src": "250:12:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 28600,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "250:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
}
],
"src": "116:150:60"
},
"returnParameters": {
"id": 28605,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 28604,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 28606,
"src": "285:4:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 28603,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "285:4:60",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"visibility": "internal"
}
],
"src": "284:6:60"
},
"scope": 28626,
"src": "87:204:60",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "fa00763a",
"id": 28613,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "isAuthorizedSender",
"nameLocation": "304:18:60",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 28609,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 28608,
"mutability": "mutable",
"name": "node",
"nameLocation": "331:4:60",
"nodeType": "VariableDeclaration",
"scope": 28613,
"src": "323:12:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 28607,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "323:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
}
],
"src": "322:14:60"
},
"returnParameters": {
"id": 28612,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 28611,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 28613,
"src": "360:4:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 28610,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "360:4:60",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"visibility": "internal"
}
],
"src": "359:6:60"
},
"scope": 28626,
"src": "295:71:60",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "f3fef3a3",
"id": 28620,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "withdraw",
"nameLocation": "379:8:60",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 28618,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 28615,
"mutability": "mutable",
"name": "recipient",
"nameLocation": "396:9:60",
"nodeType": "VariableDeclaration",
"scope": 28620,
"src": "388:17:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 28614,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "388:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 28617,
"mutability": "mutable",
"name": "amount",
"nameLocation": "415:6:60",
"nodeType": "VariableDeclaration",
"scope": 28620,
"src": "407:14:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 28616,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "407:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "387:35:60"
},
"returnParameters": {
"id": 28619,
"nodeType": "ParameterList",
"parameters": [],
"src": "431:0:60"
},
"scope": 28626,
"src": "370:62:60",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "50188301",
"id": 28625,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "withdrawable",
"nameLocation": "445:12:60",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 28621,
"nodeType": "ParameterList",
"parameters": [],
"src": "457:2:60"
},
"returnParameters": {
"id": 28624,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 28623,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 28625,
"src": "483:7:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 28622,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "483:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "482:9:60"
},
"scope": 28626,
"src": "436:56:60",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
}
],
"scope": 28627,
"src": "57:437:60"
}
],
"src": "32:463:60"
},
"bytecode": "",
"bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
"compiler": {
"evm_version": "istanbul",
"optimizer": {
"enabled": true,
"runs": 200
},
"version": "0.8.2+commit.661d1103"
},
"contractName": "OracleInterface",
"coverageMap": {
"branches": {},
"statements": {}
},
"dependencies": [],
"deployedBytecode": "",
"deployedSourceMap": "",
"language": "Solidity",
"natspec": {
"kind": "dev",
"methods": {},
"version": 1
},
"offset": [
57,
494
],
"opcodes": "",
"pcMap": {},
"sha1": "61f4996e722b48a087db224a73d0d373988d80c1",
"source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface OracleInterface {\n function fulfillOracleRequest(\n bytes32 requestId,\n uint256 payment,\n address callbackAddress,\n bytes4 callbackFunctionId,\n uint256 expiration,\n bytes32 data\n ) external returns (bool);\n\n function isAuthorizedSender(address node) external view returns (bool);\n\n function withdraw(address recipient, uint256 amount) external;\n\n function withdrawable() external view returns (uint256);\n}\n",
"sourceMap": "",
"sourcePath": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/OracleInterface.sol",
"type": "interface"
}