declare module Levelup { namespace Core { namespace Auth { /** * @description Service Api */ export namespace Api { export namespace Roles { /** * -------------------------------------------------------------------------- * Create * -------------------------------------------------------------------------- * @link * @fires RolesService.Create * @param {Core.Auth.Api.Roles.Create.Request} query * @returns {Core.Auth.Api.Roles.Create.Response} * @method POST * */ export namespace Create { export type Request = Core.Utils.Api.Request.BuildCreateRequest; export type Response = Core.Utils.Api.Response.BuildSingleItemResponse; } /** * -------------------------------------------------------------------------- * Update * -------------------------------------------------------------------------- * @link * @fires RolesService.Update * @param {Core.Auth.Api.Roles.Update.Request} query * @returns {Core.Auth.Api.Roles.Update.Response} * @method PUT * */ export namespace Update { export type Request = Core.Utils.Api.Request.BuildUpdateRequest; export type Response = Core.Utils.Api.Response.BuildSingleItemResponse; } /** * -------------------------------------------------------------------------- * Delete * -------------------------------------------------------------------------- * @link * @fires RolesService.Delete * @param {Core.Auth.Api.Roles.Delete.Request} query * @returns {Core.Auth.Api.Roles.Delete.Response} * @method DELETE * */ export namespace Delete { export type Request = Core.Utils.Api.Request.Build> export type Response = Core.Utils.Api.Response.DefaultDeleteResponse; } /** * -------------------------------------------------------------------------- * Get * -------------------------------------------------------------------------- * @link * @fires RolesService.Get * @param {Core.Auth.Api.Roles.GetOne.Request} query * @returns {Core.Auth.Api.Roles.GetOne.Response} * @method GET * */ export namespace GetOne { export type GetRoleApScope = ''; export type Request = Core.Utils.Api.Request.Build export type Response = Core.Utils.Api.Response.BuildSingleItemResponse; } /** * -------------------------------------------------------------------------- * List * -------------------------------------------------------------------------- * @link * @fires RolesService.List * @param {Core.Auth.Api.Roles.List.Request} query * @returns {Core.Auth.Api.Roles.List.Response} * @method GET * */ export namespace List { export type Scope = ''; export type Request = Core.Utils.Api.Request.BuildSearchablePagedSortableFilterableProjectable export type Response = Core.Utils.Api.Response.BuildListResponse; } /** * -------------------------------------------------------------------------- * AggregateUserCount * -------------------------------------------------------------------------- * @link * @fires RolesService.AggregateUserCount * @param {Core.Auth.Api.Roles.AggregateUserCount.Request} query * @returns {Core.Auth.Api.Roles.AggregateUserCount.Response} * @method Get * */ export namespace AggregateUserCount { export type Request = Core.Utils.Api.Request.Build> export type Response = Core.Utils.Api.Response.DefaultResponse & { data?: { [role: string]: number; } } } /** * -------------------------------------------------------------------------- * MergeRoles * -------------------------------------------------------------------------- * @method PUT * @link /roles/merge/:source_id/:destination_id * @fires RolesService.mergeRoles * @param {Core.Auth.Api.Roles.MergeRoles.Request} query * @returns {Core.Auth.Api.Roles.MergeRoles.Response} * */ export namespace MergeRoles { export type Request = Core.Utils.Api.Request.Build export type Response = Core.Utils.Api.Response.BuildSingleItemResponse } /** * -------------------------------------------------------------------------- * ChangePermissions * -------------------------------------------------------------------------- * @method PUT * @link /api/v2/roles/:id/change-permissions * @fires RolesService.changePermissions * @param {Core.Auth.Api.Roles.ChangePermissions.Request} query * @returns {Core.Auth.Api.Roles.ChangePermissions.Response} * */ export namespace ChangePermissions { export type Request = Core.Utils.Api.Request.BuildUpdateRequest<{ role_id?: Core.Utils.Common.ID; permissions: Core.Utils.Common.ID[]; }> export type Response = Core.Utils.Api.Response.BuildSingleItemResponse; } /** * -------------------------------------------------------------------------- * ListUserPermissions * -------------------------------------------------------------------------- * @method GET * @link /api/v2/roles/:id/permissions * @fires RolesService.listRolePermissions * @param {Core.Auth.Api.Roles.ListRolePermissions.Request} query * @returns {Core.Auth.Api.Roles.ListRolePermissions.Response} * */ export namespace ListRolePermissions { export type Request = Core.Utils.Api.Request.Build> export type Response = Core.Utils.Api.Response.BuildSingleItemResponse<{ /** * List of permission names */ permissions: { _id: Core.Utils.Common.ID; group: Core.Utils.Common.ID; name: string; }[]; role: Entity.Role; }> } } } } } }