+ public Pair<DecryptedGroup, GroupChange> setEditDetailsPermission(
+ GroupInfoV2 groupInfoV2, GroupPermission permission
+ ) throws IOException {
+ final GroupsV2Operations.GroupOperations groupOperations = getGroupOperations(groupInfoV2);
+
+ final var accessRequired = toAccessControl(permission);
+ final var change = groupOperations.createChangeAttributesRights(accessRequired);
+ return commitChange(groupInfoV2, change);
+ }
+
+ public Pair<DecryptedGroup, GroupChange> setAddMemberPermission(
+ GroupInfoV2 groupInfoV2, GroupPermission permission
+ ) throws IOException {
+ final GroupsV2Operations.GroupOperations groupOperations = getGroupOperations(groupInfoV2);
+
+ final var accessRequired = toAccessControl(permission);
+ final var change = groupOperations.createChangeMembershipRights(accessRequired);
+ return commitChange(groupInfoV2, change);
+ }
+