{ "contractName": "CommonAuthority", "abi": [ { "inputs": [ { "internalType": "address", "name": "contractAddress", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "authority", "type": "address" } ], "name": "LogSetAuthority", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" } ], "name": "LogSetOwner", "type": "event" }, { "inputs": [], "name": "authority", "outputs": [ { "internalType": "contract DSAuthority", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "caller", "type": "address" }, { "internalType": "uint256", "name": "where", "type": "uint256" }, { "internalType": "address", "name": "code", "type": "address" }, { "internalType": "bytes4", "name": "sig", "type": "bytes4" } ], "name": "canCall", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "caller", "type": "address" }, { "internalType": "address", "name": "code", "type": "address" }, { "internalType": "bytes4", "name": "sig", "type": "bytes4" } ], "name": "canCall", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "caller", "type": "address" }, { "internalType": "uint256", "name": "where", "type": "uint256" }, { "internalType": "uint8", "name": "role", "type": "uint8" }, { "internalType": "address", "name": "code", "type": "address" }, { "internalType": "bytes4", "name": "sig", "type": "bytes4" } ], "name": "canCallOnlyBecause", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "code", "type": "address" }, { "internalType": "bytes4", "name": "sig", "type": "bytes4" } ], "name": "getCapabilityRoles", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" } ], "name": "getUserRoles", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" }, { "internalType": "uint256", "name": "where", "type": "uint256" } ], "name": "getUserRoles", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" }, { "internalType": "uint8", "name": "role", "type": "uint8" } ], "name": "hasUserRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" }, { "internalType": "uint256", "name": "where", "type": "uint256" }, { "internalType": "uint8", "name": "role", "type": "uint8" } ], "name": "hasUserRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "code", "type": "address" }, { "internalType": "bytes4", "name": "sig", "type": "bytes4" } ], "name": "isCapabilityPublic", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" } ], "name": "isUserRoot", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "contract DSAuthority", "name": "authority_", "type": "address" } ], "name": "setAuthority", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner_", "type": "address" } ], "name": "setOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "code", "type": "address" }, { "internalType": "bytes4", "name": "sig", "type": "bytes4" }, { "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "setPublicCapability", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint8", "name": "role", "type": "uint8" }, { "internalType": "address", "name": "code", "type": "address" }, { "internalType": "bytes4", "name": "sig", "type": "bytes4" }, { "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "setRoleCapability", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" }, { "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "setRootUser", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" }, { "internalType": "uint8", "name": "role", "type": "uint8" }, { "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "setUserRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" }, { "internalType": "uint256", "name": "where", "type": "uint256" }, { "internalType": "uint8", "name": "role", "type": "uint8" }, { "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "setUserRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, "userdoc": { "kind": "user", "methods": {}, "version": 1 } }