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
167 lines (166 loc) • 3.75 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "IUpgradeableDeployer",
"sourceName": "contracts/interfaces/IUpgradeableDeployer.sol",
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "registry",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "name",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "proxyOrLogic",
"type": "address"
},
{
"indexed": true,
"internalType": "uint16",
"name": "version",
"type": "uint16"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "logicCodeHash",
"type": "bytes32"
}
],
"name": "ContractDeployed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "registry",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "name",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "proxy",
"type": "address"
},
{
"indexed": true,
"internalType": "uint16",
"name": "version",
"type": "uint16"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "logicCodeHash",
"type": "bytes32"
}
],
"name": "ContractUpgraded",
"type": "event"
},
{
"inputs": [
{
"internalType": "contract IContractRegistry",
"name": "registry",
"type": "address"
},
{
"internalType": "bytes",
"name": "bytecode",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "name",
"type": "bytes32"
},
{
"internalType": "uint16",
"name": "version",
"type": "uint16"
}
],
"name": "deployContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract IContractRegistry",
"name": "registry",
"type": "address"
},
{
"internalType": "bytes32",
"name": "name",
"type": "bytes32"
},
{
"internalType": "bytes",
"name": "bytecode",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
},
{
"internalType": "uint16",
"name": "version",
"type": "uint16"
},
{
"internalType": "address",
"name": "newAdmin",
"type": "address"
}
],
"name": "upgradeContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x",
"deployedBytecode": "0x",
"linkReferences": {},
"deployedLinkReferences": {}
}