[
{ "inputs": [], "stateMutability": "nonpayable", "type": "constructor" },
{ "inputs": [], "name": "AuditNotPresent", "type": "error" },
{ "inputs": [], "name": "DuplicateReport", "type": "error" },
{ "inputs": [], "name": "InvalidUserType", "type": "error" },
{ "inputs": [], "name": "MaxContractsExceeded", "type": "error" },
{ "inputs": [], "name": "NotAdmin", "type": "error" },
{ "inputs": [], "name": "NotAuditor", "type": "error" },
{ "inputs": [], "name": "NotCris", "type": "error" },
{ "inputs": [], "name": "NotManager", "type": "error" },
{
"inputs": [{ "internalType": "address", "name": "sc", "type": "address" }],
"name": "NotSmartContract",
"type": "error"
},
{ "inputs": [], "name": "NotUser", "type": "error" },
{ "inputs": [], "name": "UserAlreadyExists", "type": "error" },
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "previousAdmin",
"type": "address"
},
{ "indexed": false, "internalType": "address", "name": "newAdmin", "type": "address" }
],
"name": "AdminChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "_auditIndex",
"type": "uint256"
}
],
"name": "AuditInvalidated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "_auditIndex",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address[]",
"name": "_smartContract",
"type": "address[]"
},
{ "indexed": true, "internalType": "address", "name": "_auditor", "type": "address" },
{ "indexed": false, "internalType": "string", "name": "_reportHash", "type": "string" }
],
"name": "AuditPublished",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "_auditIndex",
"type": "uint256"
}
],
"name": "AuditSetValid",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": true, "internalType": "address", "name": "beacon", "type": "address" }
],
"name": "BeaconUpgraded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" }
],
"name": "Initialized",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": true, "internalType": "address", "name": "user", "type": "address" },
{ "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" }
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }
],
"name": "Paused",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" },
{
"indexed": true,
"internalType": "bytes32",
"name": "previousAdminRole",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "newAdminRole",
"type": "bytes32"
}
],
"name": "RoleAdminChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" },
{ "indexed": true, "internalType": "address", "name": "account", "type": "address" },
{ "indexed": true, "internalType": "address", "name": "sender", "type": "address" }
],
"name": "RoleGranted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" },
{ "indexed": true, "internalType": "address", "name": "account", "type": "address" },
{ "indexed": true, "internalType": "address", "name": "sender", "type": "address" }
],
"name": "RoleRevoked",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "newForwarder",
"type": "address"
}
],
"name": "TrustedForwarderUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }
],
"name": "Unpaused",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "Upgraded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": false, "internalType": "address", "name": "_user", "type": "address" },
{
"indexed": false,
"internalType": "enum ITrustblockCore.UserType",
"name": "_type",
"type": "uint8"
}
],
"name": "UserAdded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{ "indexed": false, "internalType": "address", "name": "_user", "type": "address" },
{
"indexed": false,
"internalType": "enum ITrustblockCore.UserType",
"name": "_type",
"type": "uint8"
}
],
"name": "UserRemoved",
"type": "event"
},
{
"inputs": [],
"name": "CRIS_ROLE",
"outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "DEFAULT_ADMIN_ROLE",
"outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MANAGER_ROLE",
"outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "_user", "type": "address" },
{ "internalType": "enum ITrustblockCore.UserType", "name": "_type", "type": "uint8" }
],
"name": "addUser",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "auditIndex",
"outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "auditor", "type": "address" },
{ "internalType": "uint256", "name": "", "type": "uint256" }
],
"name": "audits",
"outputs": [
{ "internalType": "string", "name": "report", "type": "string" },
{ "internalType": "bytes28", "name": "projectName", "type": "bytes28" },
{ "internalType": "bytes4", "name": "issues", "type": "bytes4" }
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getImplementation",
"outputs": [{ "internalType": "address", "name": "", "type": "address" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "uint256", "name": "_auditIndex", "type": "uint256" },
{
"internalType": "enum ITrustblockCore.Severities",
"name": "severity",
"type": "uint8"
}
],
"name": "getIssueCount",
"outputs": [{ "internalType": "uint32", "name": "issue", "type": "uint32" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [{ "internalType": "bytes32", "name": "role", "type": "bytes32" }],
"name": "getRoleAdmin",
"outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getTrustedForwarder",
"outputs": [{ "internalType": "address", "name": "forwarder", "type": "address" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "bytes32", "name": "role", "type": "bytes32" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "grantRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{ "internalType": "bytes32", "name": "role", "type": "bytes32" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "hasRole",
"outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "_crisAddress", "type": "address" },
{ "internalType": "address", "name": "_admin", "type": "address" },
{ "internalType": "address", "name": "_manager", "type": "address" }
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [{ "internalType": "uint256", "name": "_auditIndex", "type": "uint256" }],
"name": "invalidateAudit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [{ "internalType": "string", "name": "reportHash", "type": "string" }],
"name": "isDuplicate",
"outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [{ "internalType": "address", "name": "forwarder", "type": "address" }],
"name": "isTrustedForwarder",
"outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [{ "internalType": "uint256", "name": "auditIndex", "type": "uint256" }],
"name": "isValidAudit",
"outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "pause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "paused",
"outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "proxiableUUID",
"outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "address[]", "name": "_smartContracts", "type": "address[]" },
{ "internalType": "string", "name": "_reportHash", "type": "string" },
{ "internalType": "bytes28", "name": "_projectName", "type": "bytes28" },
{ "internalType": "bytes4", "name": "_issues", "type": "bytes4" }
],
"name": "publishAudit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "_user", "type": "address" },
{ "internalType": "enum ITrustblockCore.UserType", "name": "_type", "type": "uint8" }
],
"name": "removeUser",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{ "internalType": "bytes32", "name": "role", "type": "bytes32" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "renounceRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{ "internalType": "bytes32", "name": "role", "type": "bytes32" },
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "revokeRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [{ "internalType": "address", "name": "forwarder", "type": "address" }],
"name": "setTrustedForwarder",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [{ "internalType": "uint256", "name": "_auditIndex", "type": "uint256" }],
"name": "setValidAudit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [{ "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" }],
"name": "supportsInterface",
"outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "unpause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [{ "internalType": "address", "name": "newImplementation", "type": "address" }],
"name": "upgradeTo",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "newImplementation", "type": "address" },
{ "internalType": "bytes", "name": "data", "type": "bytes" }
],
"name": "upgradeToAndCall",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "wallet", "type": "address" },
{ "internalType": "enum ITrustblockCore.UserType", "name": "typeEnum", "type": "uint8" }
],
"name": "userType",
"outputs": [{ "internalType": "bool", "name": "hasType", "type": "bool" }],
"stateMutability": "view",
"type": "function"
}
]