import Resource from "./resource.js"; import type RoleRepresentation from "../defs/roleRepresentation.js"; import type UserRepresentation from "../defs/userRepresentation.js"; import type { KeycloakAdminClient } from "../client.js"; import type { ManagementPermissionReference } from "../defs/managementPermissionReference.js"; export interface RoleQuery { first?: number; max?: number; search?: string; briefRepresentation?: boolean; } export declare class Roles extends Resource<{ realm?: string; }> { /** * Realm roles */ find: (payload?: (RoleQuery & { realm?: string; }) | undefined, options?: Pick) => Promise; create: (payload?: (RoleRepresentation & { realm?: string; }) | undefined, options?: Pick) => Promise<{ roleName: string; }>; /** * Roles by name */ findOneByName: (payload?: ({ name: string; } & { realm?: string; }) | undefined, options?: Pick) => Promise; updateByName: (query: { name: string; } & { realm?: string; }, payload: RoleRepresentation) => Promise; delByName: (payload?: ({ name: string; } & { realm?: string; }) | undefined, options?: Pick) => Promise; findUsersWithRole: (payload?: ({ name: string; briefRepresentation?: boolean; first?: number; max?: number; } & { realm?: string; }) | undefined, options?: Pick) => Promise; /** * Roles by id */ findOneById: (payload?: ({ id: string; } & { realm?: string; }) | undefined, options?: Pick) => Promise; createComposite: (query: { roleId: string; } & { realm?: string; }, payload: RoleRepresentation[]) => Promise; getCompositeRoles: (payload?: ({ id: string; search?: string; first?: number; max?: number; } & { realm?: string; }) | undefined, options?: Pick) => Promise; getCompositeRolesForRealm: (payload?: ({ id: string; } & { realm?: string; }) | undefined, options?: Pick) => Promise; getCompositeRolesForClient: (payload?: ({ id: string; clientId: string; } & { realm?: string; }) | undefined, options?: Pick) => Promise; delCompositeRoles: (query: { id: string; } & { realm?: string; }, payload: RoleRepresentation[]) => Promise; updateById: (query: { id: string; } & { realm?: string; }, payload: RoleRepresentation) => Promise; delById: (payload?: ({ id: string; } & { realm?: string; }) | undefined, options?: Pick) => Promise; /** * Authorization permissions */ updatePermission: (query: { id: string; } & { realm?: string; }, payload: ManagementPermissionReference) => Promise; listPermissions: (payload?: ({ id: string; } & { realm?: string; }) | undefined, options?: Pick) => Promise; constructor(client: KeycloakAdminClient); }