UNPKG

cumulocity-cypress

Version:
48 lines (47 loc) 2.05 kB
import { Client, IResult, IUserGroup } from "@c8y/client"; import { DeleteOptions } from "./user"; /** * Creates a global role (user group) with the specified permissions. * * Global roles are user groups that define a set of permissions. This function: * 1. Creates a new user group with the specified name * 2. Assigns the specified role permissions to the group * * @param client - The Cumulocity client instance * @param roleOptions - Role name as string, or object with name and optional description * @param permissions - Array of permission (role) IDs or names to assign to this global role (e.g., ['ROLE_USER_MANAGEMENT', 'ROLE_INVENTORY_READ']) * @returns Promise resolving to the created user group result * * @throws Error if role creation fails or if any of the specified roles cannot be found * * @example * const roleResult = await createGlobalRole( * client, * { name: 'Custom Admin', description: 'Custom admin role with specific permissions' }, * ['ROLE_USER_MANAGEMENT', 'ROLE_INVENTORY_ADMIN'] * ); */ export declare function createGlobalRole(client: Client, roleOptions: string | { name: string; description?: string; }, permissions: string[]): Promise<IResult<IUserGroup>>; /** * Deletes one or more global roles (user groups) by name. * * @param client - The Cumulocity client instance * @param roleNames - Single role name or array of role names to delete * @param options - Optional configuration * @param options.ignoreNotFound - If true (default), ignores 404 errors when role is not found * @returns Promise that resolves when all roles are deleted * * @throws Error if role names are missing or if deletion fails (unless ignoreNotFound is true) * * @example * // Delete single role * await deleteGlobalRoles(client, 'CustomRole'); * * @example * // Delete multiple roles * await deleteGlobalRoles(client, ['Role1', 'Role2', 'Role3']); */ export declare function deleteGlobalRoles(client: Client, roleNames: string | string[], options?: DeleteOptions): Promise<void>;