RolesAdmin
Inherits: Policy
The RolesAdmin Policy grants and revokes Roles in the ROLES module.
State Variables
admin
Special role that is responsible for assigning policy-defined roles to addresses.
address public admin;
newAdmin
Proposed new admin. Address must call pullRolesAdmin
to become the new roles admin.
address public newAdmin;
ROLES
ROLESv1 public ROLES;
Functions
constructor
constructor(Kernel _kernel) Policy(_kernel);
configureDependencies
function configureDependencies() external override returns (Keycode[] memory dependencies);
requestPermissions
function requestPermissions() external view override returns (Permissions[] memory requests);
onlyAdmin
modifier onlyAdmin();
grantRole
function grantRole(bytes32 role_, address wallet_) external onlyAdmin;
revokeRole
function revokeRole(bytes32 role_, address wallet_) external onlyAdmin;
pushNewAdmin
function pushNewAdmin(address newAdmin_) external onlyAdmin;
pullNewAdmin
function pullNewAdmin() external;
Events
NewAdminPushed
event NewAdminPushed(address indexed newAdmin_);
NewAdminPulled
event NewAdminPulled(address indexed newAdmin_);
Errors
Roles_OnlyAdmin
error Roles_OnlyAdmin();
Roles_OnlyNewAdmin
error Roles_OnlyNewAdmin();