@etherisc/gif-contracts
Version:
This repository holds the GIF core contracts and tools to develop, test and deploy GIF instances.
1,355 lines • 44.6 kB
JSON
{
"abi": [
{
"inputs": [
{
"internalType": "bytes32",
"name": "requestId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "payment",
"type": "uint256"
},
{
"internalType": "bytes4",
"name": "callbackFunctionId",
"type": "bytes4"
},
{
"internalType": "uint256",
"name": "expiration",
"type": "uint256"
}
],
"name": "cancelOracleRequest",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable[]",
"name": "receivers",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]"
}
],
"name": "distributeFunds",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"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": "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": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "fulfillOracleRequest2",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "getAuthorizedSenders",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "getForwarder",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"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": "sender",
"type": "address"
},
{
"internalType": "uint256",
"name": "payment",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "specId",
"type": "bytes32"
},
{
"internalType": "bytes4",
"name": "callbackFunctionId",
"type": "bytes4"
},
{
"internalType": "uint256",
"name": "nonce",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "dataVersion",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "operatorRequest",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"internalType": "uint256",
"name": "requestPrice",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "serviceAgreementID",
"type": "bytes32"
},
{
"internalType": "address",
"name": "callbackAddress",
"type": "address"
},
{
"internalType": "bytes4",
"name": "callbackFunctionId",
"type": "bytes4"
},
{
"internalType": "uint256",
"name": "nonce",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "dataVersion",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "oracleRequest",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "ownerTransferAndCall",
"outputs": [
{
"internalType": "bool",
"name": "success",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "senders",
"type": "address[]"
}
],
"name": "setAuthorizedSenders",
"outputs": [],
"stateMutability": "nonpayable",
"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": {
"56": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/ChainlinkRequestInterface.sol",
"59": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/OperatorInterface.sol",
"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/OperatorInterface.sol",
"exportedSymbols": {
"ChainlinkRequestInterface": [
25709
],
"OperatorInterface": [
25964
],
"OracleInterface": [
28626
]
},
"id": 25965,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 25886,
"literals": [
"solidity",
"^",
"0.8",
".0"
],
"nodeType": "PragmaDirective",
"src": "32:23:59"
},
{
"absolutePath": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/OracleInterface.sol",
"file": "./OracleInterface.sol",
"id": 25887,
"nameLocation": "-1:-1:-1",
"nodeType": "ImportDirective",
"scope": 25965,
"sourceUnit": 28627,
"src": "57:31:59",
"symbolAliases": [],
"unitAlias": ""
},
{
"absolutePath": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/ChainlinkRequestInterface.sol",
"file": "./ChainlinkRequestInterface.sol",
"id": 25888,
"nameLocation": "-1:-1:-1",
"nodeType": "ImportDirective",
"scope": 25965,
"sourceUnit": 25710,
"src": "89:41:59",
"symbolAliases": [],
"unitAlias": ""
},
{
"abstract": false,
"baseContracts": [
{
"baseName": {
"id": 25889,
"name": "OracleInterface",
"nodeType": "IdentifierPath",
"referencedDeclaration": 28626,
"src": "163:15:59"
},
"id": 25890,
"nodeType": "InheritanceSpecifier",
"src": "163:15:59"
},
{
"baseName": {
"id": 25891,
"name": "ChainlinkRequestInterface",
"nodeType": "IdentifierPath",
"referencedDeclaration": 25709,
"src": "180:25:59"
},
"id": 25892,
"nodeType": "InheritanceSpecifier",
"src": "180:25:59"
}
],
"contractDependencies": [
25709,
28626
],
"contractKind": "interface",
"fullyImplemented": false,
"id": 25964,
"linearizedBaseContracts": [
25964,
25709,
28626
],
"name": "OperatorInterface",
"nameLocation": "142:17:59",
"nodeType": "ContractDefinition",
"nodes": [
{
"functionSelector": "3c6d41b9",
"id": 25909,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "operatorRequest",
"nameLocation": "219:15:59",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 25907,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25894,
"mutability": "mutable",
"name": "sender",
"nameLocation": "248:6:59",
"nodeType": "VariableDeclaration",
"scope": 25909,
"src": "240:14:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 25893,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "240:7:59",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25896,
"mutability": "mutable",
"name": "payment",
"nameLocation": "268:7:59",
"nodeType": "VariableDeclaration",
"scope": 25909,
"src": "260:15:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 25895,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "260:7:59",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25898,
"mutability": "mutable",
"name": "specId",
"nameLocation": "289:6:59",
"nodeType": "VariableDeclaration",
"scope": 25909,
"src": "281:14:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 25897,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "281:7:59",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25900,
"mutability": "mutable",
"name": "callbackFunctionId",
"nameLocation": "308:18:59",
"nodeType": "VariableDeclaration",
"scope": 25909,
"src": "301:25:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes4",
"typeString": "bytes4"
},
"typeName": {
"id": 25899,
"name": "bytes4",
"nodeType": "ElementaryTypeName",
"src": "301:6:59",
"typeDescriptions": {
"typeIdentifier": "t_bytes4",
"typeString": "bytes4"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25902,
"mutability": "mutable",
"name": "nonce",
"nameLocation": "340:5:59",
"nodeType": "VariableDeclaration",
"scope": 25909,
"src": "332:13:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 25901,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "332:7:59",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25904,
"mutability": "mutable",
"name": "dataVersion",
"nameLocation": "359:11:59",
"nodeType": "VariableDeclaration",
"scope": 25909,
"src": "351:19:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 25903,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "351:7:59",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25906,
"mutability": "mutable",
"name": "data",
"nameLocation": "391:4:59",
"nodeType": "VariableDeclaration",
"scope": 25909,
"src": "376:19:59",
"stateVariable": false,
"storageLocation": "calldata",
"typeDescriptions": {
"typeIdentifier": "t_bytes_calldata_ptr",
"typeString": "bytes"
},
"typeName": {
"id": 25905,
"name": "bytes",
"nodeType": "ElementaryTypeName",
"src": "376:5:59",
"typeDescriptions": {
"typeIdentifier": "t_bytes_storage_ptr",
"typeString": "bytes"
}
},
"visibility": "internal"
}
],
"src": "234:165:59"
},
"returnParameters": {
"id": 25908,
"nodeType": "ParameterList",
"parameters": [],
"src": "408:0:59"
},
"scope": 25964,
"src": "210:199:59",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "6ae0bc76",
"id": 25926,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "fulfillOracleRequest2",
"nameLocation": "422:21:59",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 25922,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25911,
"mutability": "mutable",
"name": "requestId",
"nameLocation": "457:9:59",
"nodeType": "VariableDeclaration",
"scope": 25926,
"src": "449:17:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 25910,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "449:7:59",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25913,
"mutability": "mutable",
"name": "payment",
"nameLocation": "480:7:59",
"nodeType": "VariableDeclaration",
"scope": 25926,
"src": "472:15:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 25912,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "472:7:59",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25915,
"mutability": "mutable",
"name": "callbackAddress",
"nameLocation": "501:15:59",
"nodeType": "VariableDeclaration",
"scope": 25926,
"src": "493:23:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 25914,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "493:7:59",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25917,
"mutability": "mutable",
"name": "callbackFunctionId",
"nameLocation": "529:18:59",
"nodeType": "VariableDeclaration",
"scope": 25926,
"src": "522:25:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes4",
"typeString": "bytes4"
},
"typeName": {
"id": 25916,
"name": "bytes4",
"nodeType": "ElementaryTypeName",
"src": "522:6:59",
"typeDescriptions": {
"typeIdentifier": "t_bytes4",
"typeString": "bytes4"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25919,
"mutability": "mutable",
"name": "expiration",
"nameLocation": "561:10:59",
"nodeType": "VariableDeclaration",
"scope": 25926,
"src": "553:18:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 25918,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "553:7:59",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25921,
"mutability": "mutable",
"name": "data",
"nameLocation": "592:4:59",
"nodeType": "VariableDeclaration",
"scope": 25926,
"src": "577:19:59",
"stateVariable": false,
"storageLocation": "calldata",
"typeDescriptions": {
"typeIdentifier": "t_bytes_calldata_ptr",
"typeString": "bytes"
},
"typeName": {
"id": 25920,
"name": "bytes",
"nodeType": "ElementaryTypeName",
"src": "577:5:59",
"typeDescriptions": {
"typeIdentifier": "t_bytes_storage_ptr",
"typeString": "bytes"
}
},
"visibility": "internal"
}
],
"src": "443:157:59"
},
"returnParameters": {
"id": 25925,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25924,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 25926,
"src": "619:4:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 25923,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "619:4:59",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"visibility": "internal"
}
],
"src": "618:6:59"
},
"scope": 25964,
"src": "413:212:59",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "902fc370",
"id": 25937,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "ownerTransferAndCall",
"nameLocation": "638:20:59",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 25933,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25928,
"mutability": "mutable",
"name": "to",
"nameLocation": "672:2:59",
"nodeType": "VariableDeclaration",
"scope": 25937,
"src": "664:10:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 25927,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "664:7:59",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25930,
"mutability": "mutable",
"name": "value",
"nameLocation": "688:5:59",
"nodeType": "VariableDeclaration",
"scope": 25937,
"src": "680:13:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 25929,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "680:7:59",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25932,
"mutability": "mutable",
"name": "data",
"nameLocation": "714:4:59",
"nodeType": "VariableDeclaration",
"scope": 25937,
"src": "699:19:59",
"stateVariable": false,
"storageLocation": "calldata",
"typeDescriptions": {
"typeIdentifier": "t_bytes_calldata_ptr",
"typeString": "bytes"
},
"typeName": {
"id": 25931,
"name": "bytes",
"nodeType": "ElementaryTypeName",
"src": "699:5:59",
"typeDescriptions": {
"typeIdentifier": "t_bytes_storage_ptr",
"typeString": "bytes"
}
},
"visibility": "internal"
}
],
"src": "658:64:59"
},
"returnParameters": {
"id": 25936,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25935,
"mutability": "mutable",
"name": "success",
"nameLocation": "746:7:59",
"nodeType": "VariableDeclaration",
"scope": 25937,
"src": "741:12:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 25934,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "741:4:59",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"visibility": "internal"
}
],
"src": "740:14:59"
},
"scope": 25964,
"src": "629:126:59",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "6bd59ec0",
"id": 25946,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "distributeFunds",
"nameLocation": "768:15:59",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 25944,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25940,
"mutability": "mutable",
"name": "receivers",
"nameLocation": "811:9:59",
"nodeType": "VariableDeclaration",
"scope": 25946,
"src": "784:36:59",
"stateVariable": false,
"storageLocation": "calldata",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_payable_$dyn_calldata_ptr",
"typeString": "address payable[]"
},
"typeName": {
"baseType": {
"id": 25938,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "784:15:59",
"stateMutability": "payable",
"typeDescriptions": {
"typeIdentifier": "t_address_payable",
"typeString": "address payable"
}
},
"id": 25939,
"nodeType": "ArrayTypeName",
"src": "784:17:59",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_payable_$dyn_storage_ptr",
"typeString": "address payable[]"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25943,
"mutability": "mutable",
"name": "amounts",
"nameLocation": "841:7:59",
"nodeType": "VariableDeclaration",
"scope": 25946,
"src": "822:26:59",
"stateVariable": false,
"storageLocation": "calldata",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 25941,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "822:7:59",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 25942,
"nodeType": "ArrayTypeName",
"src": "822:9:59",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"visibility": "internal"
}
],
"src": "783:66:59"
},
"returnParameters": {
"id": 25945,
"nodeType": "ParameterList",
"parameters": [],
"src": "866:0:59"
},
"scope": 25964,
"src": "759:108:59",
"stateMutability": "payable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "2408afaa",
"id": 25952,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "getAuthorizedSenders",
"nameLocation": "880:20:59",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 25947,
"nodeType": "ParameterList",
"parameters": [],
"src": "900:2:59"
},
"returnParameters": {
"id": 25951,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25950,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 25952,
"src": "921:16:59",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
"typeString": "address[]"
},
"typeName": {
"baseType": {
"id": 25948,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "921:7:59",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 25949,
"nodeType": "ArrayTypeName",
"src": "921:9:59",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
"typeString": "address[]"
}
},
"visibility": "internal"
}
],
"src": "920:18:59"
},
"scope": 25964,
"src": "871:68:59",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "ee56997b",
"id": 25958,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "setAuthorizedSenders",
"nameLocation": "952:20:59",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 25956,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25955,
"mutability": "mutable",
"name": "senders",
"nameLocation": "992:7:59",
"nodeType": "VariableDeclaration",
"scope": 25958,
"src": "973:26:59",
"stateVariable": false,
"storageLocation": "calldata",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
"typeString": "address[]"
},
"typeName": {
"baseType": {
"id": 25953,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "973:7:59",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 25954,
"nodeType": "ArrayTypeName",
"src": "973:9:59",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
"typeString": "address[]"
}
},
"visibility": "internal"
}
],
"src": "972:28:59"
},
"returnParameters": {
"id": 25957,
"nodeType": "ParameterList",
"parameters": [],
"src": "1009:0:59"
},
"scope": 25964,
"src": "943:67:59",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "a0042526",
"id": 25963,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "getForwarder",
"nameLocation": "1023:12:59",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 25959,
"nodeType": "ParameterList",
"parameters": [],
"src": "1035:2:59"
},
"returnParameters": {
"id": 25962,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25961,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 25963,
"src": "1056:7:59",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 25960,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1056:7:59",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
}
],
"src": "1055:9:59"
},
"scope": 25964,
"src": "1014:51:59",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
}
],
"scope": 25965,
"src": "132:935:59"
}
],
"src": "32:1036:59"
},
"bytecode": "",
"bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
"compiler": {
"evm_version": "istanbul",
"optimizer": {
"enabled": true,
"runs": 200
},
"version": "0.8.2+commit.661d1103"
},
"contractName": "OperatorInterface",
"coverageMap": {
"branches": {},
"statements": {}
},
"dependencies": [
"smartcontractkit/chainlink@1.6.0/ChainlinkRequestInterface",
"smartcontractkit/chainlink@1.6.0/OracleInterface"
],
"deployedBytecode": "",
"deployedSourceMap": "",
"language": "Solidity",
"natspec": {
"kind": "dev",
"methods": {},
"version": 1
},
"offset": [
132,
1067
],
"opcodes": "",
"pcMap": {},
"sha1": "fd028550a0a87f0d334eaa395d499557098aa4e3",
"source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport \"./OracleInterface.sol\";\nimport \"./ChainlinkRequestInterface.sol\";\n\ninterface OperatorInterface is OracleInterface, ChainlinkRequestInterface {\n function operatorRequest(\n address sender,\n uint256 payment,\n bytes32 specId,\n bytes4 callbackFunctionId,\n uint256 nonce,\n uint256 dataVersion,\n bytes calldata data\n ) external;\n\n function fulfillOracleRequest2(\n bytes32 requestId,\n uint256 payment,\n address callbackAddress,\n bytes4 callbackFunctionId,\n uint256 expiration,\n bytes calldata data\n ) external returns (bool);\n\n function ownerTransferAndCall(\n address to,\n uint256 value,\n bytes calldata data\n ) external returns (bool success);\n\n function distributeFunds(address payable[] calldata receivers, uint256[] calldata amounts) external payable;\n\n function getAuthorizedSenders() external returns (address[] memory);\n\n function setAuthorizedSenders(address[] calldata senders) external;\n\n function getForwarder() external returns (address);\n}\n",
"sourceMap": "",
"sourcePath": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/OperatorInterface.sol",
"type": "interface"
}