UNPKG

@soma-finance/core-contracts

Version:

SOMA Finance core contracts

833 lines (832 loc) 18.3 kB
{ "_format": "hh-sol-artifact-1", "contractName": "ITemplateFactory", "sourceName": "contracts/soma/TemplateFactory/ITemplateFactory.sol", "abi": [ { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "prevRole", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "newRole", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "DeployRoleUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "target", "type": "address" }, { "indexed": false, "internalType": "bytes", "name": "data", "type": "bytes" }, { "indexed": false, "internalType": "bytes", "name": "result", "type": "bytes" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "FunctionCalled", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "instance", "type": "address" }, { "indexed": true, "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "version", "type": "uint256" }, { "indexed": false, "internalType": "bytes[]", "name": "functionCalls", "type": "bytes[]" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "TemplateCloned", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "instance", "type": "address" }, { "indexed": true, "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "version", "type": "uint256" }, { "indexed": false, "internalType": "bytes", "name": "args", "type": "bytes" }, { "indexed": false, "internalType": "bytes[]", "name": "functionCalls", "type": "bytes[]" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "TemplateDeployed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "TemplateDisabled", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "TemplateEnabled", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "indexed": true, "internalType": "uint256", "name": "version", "type": "uint256" }, { "indexed": false, "internalType": "address", "name": "implementation", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "TemplateVersionCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "indexed": true, "internalType": "uint256", "name": "version", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "TemplateVersionDeprecated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "indexed": true, "internalType": "uint256", "name": "version", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "TemplateVersionUndeprecated", "type": "event" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "_version", "type": "uint256" }, { "internalType": "bytes[]", "name": "functionCalls", "type": "bytes[]" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" } ], "name": "cloneTemplate", "outputs": [ { "internalType": "address", "name": "instance", "type": "address" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" } ], "name": "deployRole", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "_version", "type": "uint256" }, { "internalType": "bytes", "name": "args", "type": "bytes" }, { "internalType": "bytes[]", "name": "functionCalls", "type": "bytes[]" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" } ], "name": "deployTemplate", "outputs": [ { "internalType": "address", "name": "instance", "type": "address" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "instance", "type": "address" } ], "name": "deployedByFactory", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "instance", "type": "address" } ], "name": "deploymentInfo", "outputs": [ { "components": [ { "internalType": "bool", "name": "exists", "type": "bool" }, { "internalType": "uint64", "name": "block", "type": "uint64" }, { "internalType": "uint64", "name": "timestamp", "type": "uint64" }, { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "version", "type": "uint256" }, { "internalType": "bytes", "name": "args", "type": "bytes" }, { "internalType": "bytes[]", "name": "functionCalls", "type": "bytes[]" }, { "internalType": "bool", "name": "cloned", "type": "bool" } ], "internalType": "struct ITemplateFactory.DeploymentInfo", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "_version", "type": "uint256" } ], "name": "deprecateVersion", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" } ], "name": "disableTemplate", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" } ], "name": "enableTemplate", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "functionCall", "outputs": [ { "internalType": "bytes", "name": "result", "type": "bytes" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "_version", "type": "uint256" }, { "internalType": "bytes", "name": "args", "type": "bytes" } ], "name": "initCodeHash", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" } ], "name": "latestVersion", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "_version", "type": "uint256" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" } ], "name": "predictCloneAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "_version", "type": "uint256" }, { "internalType": "bytes", "name": "args", "type": "bytes" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" } ], "name": "predictDeployAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" } ], "name": "templateInstances", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "_version", "type": "uint256" } ], "name": "undeprecateVersion", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "bytes32", "name": "_deployRole", "type": "bytes32" } ], "name": "updateDeployRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "bytes", "name": "initialPart", "type": "bytes" }, { "internalType": "uint256", "name": "totalParts", "type": "uint256" }, { "internalType": "address", "name": "implementation", "type": "address" } ], "name": "uploadTemplate", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "version", "type": "uint256" }, { "internalType": "bytes", "name": "part", "type": "bytes" } ], "name": "uploadTemplatePart", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "templateId", "type": "bytes32" }, { "internalType": "uint256", "name": "_version", "type": "uint256" } ], "name": "version", "outputs": [ { "components": [ { "internalType": "bool", "name": "deprecated", "type": "bool" }, { "internalType": "address", "name": "implementation", "type": "address" }, { "internalType": "bytes", "name": "creationCode", "type": "bytes" }, { "internalType": "uint256", "name": "totalParts", "type": "uint256" }, { "internalType": "uint256", "name": "partsUploaded", "type": "uint256" }, { "internalType": "address[]", "name": "instances", "type": "address[]" } ], "internalType": "struct ITemplateFactory.Version", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x", "deployedBytecode": "0x", "linkReferences": {}, "deployedLinkReferences": {} }