UNPKG

standard-contract-registry

Version:

Contract that use the Transparent Upgradeable model (openzeppelin) to keep a registry of the current deployed contracts, their types and versions

318 lines (317 loc) 7.11 kB
{ "_format": "hh-sol-artifact-1", "contractName": "IContractRegistry", "sourceName": "contracts/interfaces/IContractRegistry.sol", "abi": [ { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "oldAdmin", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newAdmin", "type": "address" } ], "name": "AdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "indexed": true, "internalType": "bytes", "name": "oldExtraData", "type": "bytes" }, { "indexed": true, "internalType": "bytes", "name": "newExtraData", "type": "bytes" } ], "name": "ExtraDataUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "proxy", "type": "address" }, { "indexed": false, "internalType": "address", "name": "logic", "type": "address" }, { "indexed": true, "internalType": "uint16", "name": "version", "type": "uint16" }, { "indexed": false, "internalType": "bytes32", "name": "logicCodeHash", "type": "bytes32" } ], "name": "NewRecord", "type": "event" }, { "inputs": [ { "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "internalType": "address", "name": "newAdmin", "type": "address" } ], "name": "changeRegisteredAdmin", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "internalType": "bytes", "name": "newExtraData", "type": "bytes" } ], "name": "editExtraData", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getMyRecords", "outputs": [ { "internalType": "bytes32[]", "name": "latestRecords", "type": "bytes32[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "internalType": "address", "name": "admin", "type": "address" }, { "internalType": "uint16", "name": "version", "type": "uint16" } ], "name": "getRecord", "outputs": [ { "internalType": "bool", "name": "found", "type": "bool" }, { "components": [ { "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "internalType": "address", "name": "proxy", "type": "address" }, { "internalType": "address", "name": "logic", "type": "address" }, { "internalType": "address", "name": "admin", "type": "address" }, { "internalType": "uint16", "name": "version", "type": "uint16" }, { "internalType": "bytes32", "name": "logicCodeHash", "type": "bytes32" }, { "internalType": "bytes", "name": "extraData", "type": "bytes" }, { "internalType": "uint256", "name": "timestamp", "type": "uint256" } ], "internalType": "struct ContractRecord", "name": "record", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getSystemRecords", "outputs": [ { "internalType": "bytes32[]", "name": "latestRecords", "type": "bytes32[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "internalType": "address", "name": "proxy", "type": "address" }, { "internalType": "address", "name": "logic", "type": "address" }, { "internalType": "uint16", "name": "version", "type": "uint16" }, { "internalType": "bytes32", "name": "logicCodeHash", "type": "bytes32" }, { "internalType": "address", "name": "admin", "type": "address" } ], "name": "register", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "name", "type": "bytes32" }, { "internalType": "address", "name": "proxy", "type": "address" }, { "internalType": "address", "name": "logic", "type": "address" }, { "internalType": "address", "name": "newAdmin", "type": "address" }, { "internalType": "uint16", "name": "version", "type": "uint16" }, { "internalType": "bytes32", "name": "logicCodeHash", "type": "bytes32" }, { "internalType": "address", "name": "admin", "type": "address" } ], "name": "update", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x", "deployedBytecode": "0x", "linkReferences": {}, "deployedLinkReferences": {} }