"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.UserGroupService = void 0;
const request_1 = require("../core/request");
class UserGroupService {
/**
* Get all
* Lists all groups.
The information provided might change while the project continues to evolve.
* @result ResponseUserGroup
* @throws ApiError
*/
static async userGroupControllerGetAll() {
const result = await (0, request_1.request)({
method: 'GET',
path: `/api/usergroups`,
});
return result.body;
}
/**
* Post
* Create a new group.
If you want to grant permissions to the group you have to create them seperately by posting to /api/permissions after creating the group.
* @param requestBody CreateUserGroup
* @result any
* @throws ApiError
*/
static async userGroupControllerPost(requestBody) {
const result = await (0, request_1.request)({
method: 'POST',
path: `/api/usergroups`,
body: requestBody,
});
return result.body;
}
/**
* Get one
* Lists all information about the group whose id got provided.
The information provided might change while the project continues to evolve.
* @param id
* @result ResponseUserGroup
* @throws ApiError
*/
static async userGroupControllerGetOne(id) {
const result = await (0, request_1.request)({
method: 'GET',
path: `/api/usergroups/${id}`,
});
return result.body;
}
/**
* Put
* Update the group whose id you provided.
To change the permissions granted to the group please use /api/permissions instead.
Please remember that ids can't be changed.
* @param id
* @param requestBody UpdateUserGroup
* @result UserGroup
* @throws ApiError
*/
static async userGroupControllerPut(id, requestBody) {
const result = await (0, request_1.request)({
method: 'PUT',
path: `/api/usergroups/${id}`,
body: requestBody,
});
return result.body;
}
/**
* Remove
* Delete the group whose id you provided.
If there are any permissions directly granted to the group they will get deleted as well.
Users associated with this group won't get deleted - just deassociated.
If no group with this id exists it will just return 204(no content).
* @param id
* @param force
* @result ResponseUserGroup
* @result ResponseEmpty
* @throws ApiError
*/
static async userGroupControllerRemove(id, force) {
const result = await (0, request_1.request)({
method: 'DELETE',
path: `/api/usergroups/${id}`,
query: {
'force': force,
},
});
return result.body;
}
/**
* Get permissions
* Lists all permissions granted to the group as permission response objects.
* @param id
* @result ResponseUserGroupPermissions
* @throws ApiError
*/
static async userGroupControllerGetPermissions(id) {
const result = await (0, request_1.request)({
method: 'GET',
path: `/api/usergroups/${id}/permissions`,
});
return result.body;
}
}
exports.UserGroupService = UserGroupService;