bool canPerform(ActionKey action) { final requiredLevel = rules[action]; if (requiredLevel == null) return true; return hierarchy.indexOf(_currentLevel) >= hierarchy.indexOf(requiredLevel); }