UNPKG

@etherisc/registry-contracts

Version:

Etherisc's smart contracts for the registry.

458 lines 14.8 kB
{ "abi": [ { "inputs": [], "name": "activeBundles", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getActiveBundleId", "outputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getStaking", "outputs": [ { "internalType": "contract IStaking", "name": "staking", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "staking", "type": "address" } ], "name": "setStakingAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "allSourcePaths": { "14": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/token/ERC20/IERC20.sol", "15": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/token/ERC20/extensions/IERC20Metadata.sol", "17": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/token/ERC721/IERC721.sol", "20": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/token/ERC721/extensions/IERC721Enumerable.sol", "29": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/utils/introspection/IERC165.sol", "34": "contracts/registry/IChainNft.sol", "36": "contracts/registry/IChainRegistry.sol", "39": "contracts/registry/IInstanceServiceFacade.sol", "41": "contracts/registry/IRiskpoolFacade.sol", "43": "contracts/shared/IBaseTypes.sol", "44": "contracts/shared/IVersionType.sol", "45": "contracts/shared/IVersionable.sol", "47": "contracts/shared/UFixedMath.sol", "50": "contracts/staking/IStaking.sol" }, "ast": { "absolutePath": "contracts/registry/IRiskpoolFacade.sol", "exportedSymbols": { "IRiskpoolFacade": [ 4344 ], "IStaking": [ 6479 ] }, "id": 4345, "license": "Apache-2.0", "nodeType": "SourceUnit", "nodes": [ { "id": 4318, "literals": [ "solidity", "^", "0.8", ".19" ], "nodeType": "PragmaDirective", "src": "39:24:41" }, { "absolutePath": "contracts/staking/IStaking.sol", "file": "../staking/IStaking.sol", "id": 4320, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 4345, "sourceUnit": 6480, "src": "135:49:41", "symbolAliases": [ { "foreign": { "id": 4319, "name": "IStaking", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6479, "src": "143:8:41", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "abstract": false, "baseContracts": [], "canonicalName": "IRiskpoolFacade", "contractDependencies": [], "contractKind": "interface", "fullyImplemented": false, "id": 4344, "linearizedBaseContracts": [ 4344 ], "name": "IRiskpoolFacade", "nameLocation": "196:15:41", "nodeType": "ContractDefinition", "nodes": [ { "functionSelector": "f4e0d9ac", "id": 4325, "implemented": false, "kind": "function", "modifiers": [], "name": "setStakingAddress", "nameLocation": "228:17:41", "nodeType": "FunctionDefinition", "parameters": { "id": 4323, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4322, "mutability": "mutable", "name": "staking", "nameLocation": "254:7:41", "nodeType": "VariableDeclaration", "scope": 4325, "src": "246:15:41", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4321, "name": "address", "nodeType": "ElementaryTypeName", "src": "246:7:41", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "245:17:41" }, "returnParameters": { "id": 4324, "nodeType": "ParameterList", "parameters": [], "src": "271:0:41" }, "scope": 4344, "src": "219:53:41", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "4101b90c", "id": 4330, "implemented": false, "kind": "function", "modifiers": [], "name": "activeBundles", "nameLocation": "287:13:41", "nodeType": "FunctionDefinition", "parameters": { "id": 4326, "nodeType": "ParameterList", "parameters": [], "src": "300:2:41" }, "returnParameters": { "id": 4329, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4328, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 4330, "src": "325:7:41", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4327, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "325:7:41", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "324:9:41" }, "scope": 4344, "src": "278:56:41", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "0676cb0e", "id": 4337, "implemented": false, "kind": "function", "modifiers": [], "name": "getActiveBundleId", "nameLocation": "348:17:41", "nodeType": "FunctionDefinition", "parameters": { "id": 4333, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4332, "mutability": "mutable", "name": "idx", "nameLocation": "374:3:41", "nodeType": "VariableDeclaration", "scope": 4337, "src": "366:11:41", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4331, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "366:7:41", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "365:13:41" }, "returnParameters": { "id": 4336, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4335, "mutability": "mutable", "name": "bundleId", "nameLocation": "409:8:41", "nodeType": "VariableDeclaration", "scope": 4337, "src": "401:16:41", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4334, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "401:7:41", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "400:18:41" }, "scope": 4344, "src": "339:80:41", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "7b1391a6", "id": 4343, "implemented": false, "kind": "function", "modifiers": [], "name": "getStaking", "nameLocation": "433:10:41", "nodeType": "FunctionDefinition", "parameters": { "id": 4338, "nodeType": "ParameterList", "parameters": [], "src": "443:2:41" }, "returnParameters": { "id": 4342, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4341, "mutability": "mutable", "name": "staking", "nameLocation": "477:7:41", "nodeType": "VariableDeclaration", "scope": 4343, "src": "468:16:41", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_IStaking_$6479", "typeString": "contract IStaking" }, "typeName": { "id": 4340, "nodeType": "UserDefinedTypeName", "pathNode": { "id": 4339, "name": "IStaking", "nameLocations": [ "468:8:41" ], "nodeType": "IdentifierPath", "referencedDeclaration": 6479, "src": "468:8:41" }, "referencedDeclaration": 6479, "src": "468:8:41", "typeDescriptions": { "typeIdentifier": "t_contract$_IStaking_$6479", "typeString": "contract IStaking" } }, "visibility": "internal" } ], "src": "467:18:41" }, "scope": 4344, "src": "424:62:41", "stateMutability": "view", "virtual": false, "visibility": "external" } ], "scope": 4345, "src": "186:302:41", "usedErrors": [] } ], "src": "39:449:41" }, "bytecode": "", "bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709", "compiler": { "evm_version": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "version": "0.8.19+commit.7dd6d404" }, "contractName": "IRiskpoolFacade", "coverageMap": { "branches": {}, "statements": {} }, "dependencies": [ "IBaseTypes", "IChainNft", "IChainRegistry", "IComponent", "OpenZeppelin/openzeppelin-contracts@4.8.2/IERC165", "OpenZeppelin/openzeppelin-contracts@4.8.2/IERC20", "OpenZeppelin/openzeppelin-contracts@4.8.2/IERC20Metadata", "OpenZeppelin/openzeppelin-contracts@4.8.2/IERC721", "OpenZeppelin/openzeppelin-contracts@4.8.2/IERC721Enumerable", "IInstanceServiceFacade", "IStaking", "IVersionable" ], "deployedBytecode": "", "deployedSourceMap": "", "language": "Solidity", "natspec": { "kind": "dev", "methods": {}, "version": 1 }, "offset": [ 186, 488 ], "opcodes": "", "pcMap": {}, "sha1": "148f353a54cc761a91395a1ee2a35c10a30b4b90", "source": "// SPDX-License-Identifier: Apache-2.0\npragma solidity ^0.8.19;\n\n/*\n * @dev needs to be in sync with definition in DepegRiskpool\n */\n\nimport {IStaking} from \"../staking/IStaking.sol\";\n\ninterface IRiskpoolFacade {\n\n function setStakingAddress(address staking) external;\n\n function activeBundles() external view returns(uint256);\n function getActiveBundleId(uint256 idx) external view returns(uint256 bundleId);\n function getStaking() external view returns(IStaking staking);\n}", "sourceMap": "", "sourcePath": "contracts/registry/IRiskpoolFacade.sol", "type": "interface" }