UNPKG

@q-dev/gdk-sdk

Version:

Typescript Library to interact with GDK Contracts

882 lines (881 loc) 19.4 kB
{ "_format": "hh-sol-artifact-1", "contractName": "IPermissionManager", "sourceName": "contracts/interfaces/IPermissionManager.sol", "abi": [ { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "role", "type": "string" }, { "indexed": false, "internalType": "string", "name": "resource", "type": "string" }, { "indexed": false, "internalType": "string[]", "name": "permissionsToAdd", "type": "string[]" }, { "indexed": false, "internalType": "bool", "name": "allowed", "type": "bool" } ], "name": "AddedPermissions", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "who", "type": "address" }, { "indexed": false, "internalType": "string[]", "name": "groupsToAddTo", "type": "string[]" } ], "name": "AddedToGroups", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "groupTo", "type": "string" }, { "indexed": false, "internalType": "string[]", "name": "rolesToGrant", "type": "string[]" } ], "name": "GrantedGroupRoles", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "string[]", "name": "rolesToGrant", "type": "string[]" } ], "name": "GrantedRoles", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, { "indexed": false, "internalType": "address", "name": "linkedMemberStorage", "type": "address" } ], "name": "LinkedStorageToVetoGroup", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "who", "type": "address" }, { "indexed": false, "internalType": "string[]", "name": "groupsToRemoveFrom", "type": "string[]" } ], "name": "RemovedFromGroups", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "role", "type": "string" }, { "indexed": false, "internalType": "string", "name": "resource", "type": "string" }, { "indexed": false, "internalType": "string[]", "name": "permissionsToRemove", "type": "string[]" }, { "indexed": false, "internalType": "bool", "name": "allowed", "type": "bool" } ], "name": "RemovedPermissions", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "groupFrom", "type": "string" }, { "indexed": false, "internalType": "string[]", "name": "rolesToRevoke", "type": "string[]" } ], "name": "RevokedGroupRoles", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "from", "type": "address" }, { "indexed": false, "internalType": "string[]", "name": "rolesToRevoke", "type": "string[]" } ], "name": "RevokedRoles", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bool", "name": "defaultGroupEnabled", "type": "bool" } ], "name": "ToggledDefaultGroup", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, { "indexed": false, "internalType": "address", "name": "linkedMemberStorage", "type": "address" } ], "name": "VetoGroupAdded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "target", "type": "address" } ], "name": "VetoGroupRemoved", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "member_", "type": "address" }, { "internalType": "string[]", "name": "groups_", "type": "string[]" } ], "name": "addMemberToGroup", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "role_", "type": "string" }, { "components": [ { "internalType": "string", "name": "resource", "type": "string" }, { "internalType": "string[]", "name": "permissions", "type": "string[]" } ], "internalType": "struct IRBAC.ResourceWithPermissions[]", "name": "permissionsToAdd_", "type": "tuple[]" }, { "internalType": "bool", "name": "allowed_", "type": "bool" } ], "name": "addPermissionsToRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who_", "type": "address" }, { "internalType": "string[]", "name": "groupsToAddTo_", "type": "string[]" } ], "name": "addUserToGroups", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target_", "type": "address" }, { "internalType": "contract DAOMemberStorage", "name": "linkedMemberStorage_", "type": "address" } ], "name": "addVetoGroup", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "target", "type": "address" }, { "internalType": "contract DAOMemberStorage", "name": "linkedMemberStorage", "type": "address" } ], "internalType": "struct IPermissionManager.VetoGroup[]", "name": "vetoGroups_", "type": "tuple[]" } ], "name": "addVetoGroups", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "member_", "type": "address" }, { "internalType": "string", "name": "permission_", "type": "string" } ], "name": "checkPermission", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "moduleName_", "type": "string" } ], "name": "confExternalModule", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getDAORegistry", "outputs": [ { "internalType": "contract DAORegistry", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getDefaultGroupEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getExistingVetoGroupTargets", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "group_", "type": "string" } ], "name": "getGroupRoles", "outputs": [ { "internalType": "string[]", "name": "roles_", "type": "string[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getResource", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "role_", "type": "string" } ], "name": "getRolePermissions", "outputs": [ { "components": [ { "internalType": "string", "name": "resource", "type": "string" }, { "internalType": "string[]", "name": "permissions", "type": "string[]" } ], "internalType": "struct IRBAC.ResourceWithPermissions[]", "name": "allowed_", "type": "tuple[]" }, { "components": [ { "internalType": "string", "name": "resource", "type": "string" }, { "internalType": "string[]", "name": "permissions", "type": "string[]" } ], "internalType": "struct IRBAC.ResourceWithPermissions[]", "name": "disallowed_", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who_", "type": "address" } ], "name": "getUserGroups", "outputs": [ { "internalType": "string[]", "name": "groups_", "type": "string[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who_", "type": "address" } ], "name": "getUserRoles", "outputs": [ { "internalType": "string[]", "name": "roles_", "type": "string[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target_", "type": "address" } ], "name": "getVetoGroupInfo", "outputs": [ { "components": [ { "internalType": "address", "name": "target", "type": "address" }, { "internalType": "contract DAOMemberStorage", "name": "linkedMemberStorage", "type": "address" } ], "internalType": "struct IPermissionManager.VetoGroup", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target_", "type": "address" } ], "name": "getVetoGroupMembers", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target_", "type": "address" } ], "name": "getVetoMembersCount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "groupTo_", "type": "string" }, { "internalType": "string[]", "name": "rolesToGrant_", "type": "string[]" } ], "name": "grantGroupRoles", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to_", "type": "address" }, { "internalType": "string[]", "name": "rolesToGrant_", "type": "string[]" } ], "name": "grantRoles", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who_", "type": "address" }, { "internalType": "string", "name": "resource_", "type": "string" }, { "internalType": "string", "name": "permission_", "type": "string" } ], "name": "hasPermission", "outputs": [ { "internalType": "bool", "name": "isAllowed_", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target_", "type": "address" }, { "internalType": "address", "name": "member_", "type": "address" } ], "name": "isUserInVetoGroup", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target_", "type": "address" } ], "name": "isVetoGroupExists", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target_", "type": "address" }, { "internalType": "contract DAOMemberStorage", "name": "linkedMemberStorage_", "type": "address" } ], "name": "linkStorageToVetoGroup", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "member_", "type": "address" }, { "internalType": "string[]", "name": "groups_", "type": "string[]" } ], "name": "removeMemberFromGroup", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "role_", "type": "string" }, { "components": [ { "internalType": "string", "name": "resource", "type": "string" }, { "internalType": "string[]", "name": "permissions", "type": "string[]" } ], "internalType": "struct IRBAC.ResourceWithPermissions[]", "name": "permissionsToRemove_", "type": "tuple[]" }, { "internalType": "bool", "name": "allowed_", "type": "bool" } ], "name": "removePermissionsFromRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who_", "type": "address" }, { "internalType": "string[]", "name": "groupsToRemoveFrom_", "type": "string[]" } ], "name": "removeUserFromGroups", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target_", "type": "address" } ], "name": "removeVetoGroup", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "groupFrom_", "type": "string" }, { "internalType": "string[]", "name": "rolesToRevoke_", "type": "string[]" } ], "name": "revokeGroupRoles", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from_", "type": "address" }, { "internalType": "string[]", "name": "rolesToRevoke_", "type": "string[]" } ], "name": "revokeRoles", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "toggleDefaultGroup", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x", "deployedBytecode": "0x", "linkReferences": {}, "deployedLinkReferences": {} }