import { Observable } from 'rxjs'; import { IdentityGroupSearchParam, IdentityGroupQueryCloudRequestModel, IdentityGroupModel, IdentityGroupQueryResponse, IdentityGroupCountModel } from '../models/identity-group.model'; import { IdentityRoleModel } from '../models/identity-role.model'; import { IdentityGroupServiceInterface } from '../interfaces/identity-group.interface'; import * as i0 from "@angular/core"; export declare class IdentityGroupService implements IdentityGroupServiceInterface { private readonly oAuth2Service; private readonly appConfigService; private get identityHost(); /** * Gets all groups. * * @returns Array of group information objects */ getGroups(): Observable; /** * Gets available roles * * @param groupId Id of the group. * @returns Array of available roles information objects */ getAvailableRoles(groupId: string): Observable; /** * Gets assigned roles * * @param groupId Id of the group. * @returns Array of available roles */ getAssignedRoles(groupId: string): Observable; /** * Assigns roles to the group * * @param groupId The ID of the group * @param roles Array of roles to assign * @returns request result */ assignRoles(groupId: string, roles: IdentityRoleModel[]): Observable; /** * Removes roles from the group * * @param groupId The ID of the group * @param roles Array of roles to remove * @returns request result */ removeRoles(groupId: string, roles: IdentityRoleModel[]): Observable; /** * Get effective roles * * @param groupId Id of the group * @returns Array of effective roles */ getEffectiveRoles(groupId: string): Observable; /** * Queries groups. * * @param requestQuery query settings * @returns Array of user information objects */ queryGroups(requestQuery: IdentityGroupQueryCloudRequestModel): Observable; /** * Gets groups total count. * * @returns Number of groups count. */ getTotalGroupsCount(): Observable; /** * Creates new group. * * @param newGroup Object of containing the new group details. * @returns Empty response when the group created. */ createGroup(newGroup: IdentityGroupModel): Observable; /** * Updates group details. * * @param groupId Id of the targeted group. * @param updatedGroup Object of containing the group details * @returns Empty response when the group updated. */ updateGroup(groupId: string, updatedGroup: IdentityGroupModel): Observable; /** * Deletes Group. * * @param groupId Id of the group. * @returns Empty response when the group deleted. */ deleteGroup(groupId: string): Observable; /** * Finds groups filtered by name. * * @param searchParams Object containing the name filter string * @returns List of group information */ findGroupsByName(searchParams: IdentityGroupSearchParam): Observable; /** * Gets details for a specified group. * * @param groupId Id of the target group * @returns Group details */ getGroupRoles(groupId: string): Observable; /** * Check that a group has one or more roles from the supplied list. * * @param groupId Id of the target group * @param roleNames Array of role names * @returns True if the group has one or more of the roles, false otherwise */ checkGroupHasRole(groupId: string, roleNames: string[]): Observable; /** * Gets the client Id using the app name. * * @param applicationName Name of the app * @returns client Id string */ getClientIdByApplicationName(applicationName: string): Observable; /** * Gets client roles. * * @param groupId Id of the target group * @param clientId Id of the client * @returns List of roles */ getClientRoles(groupId: string, clientId: string): Observable; /** * Checks if a group has a client app. * * @param groupId Id of the target group * @param clientId Id of the client * @returns True if the group has the client app, false otherwise */ checkGroupHasClientApp(groupId: string, clientId: string): Observable; /** * Check if a group has any of the client app roles in the supplied list. * * @param groupId Id of the target group * @param clientId Id of the client * @param roleNames Array of role names to check * @returns True if the group has one or more of the roles, false otherwise */ checkGroupHasAnyClientAppRole(groupId: string, clientId: string, roleNames: string[]): Observable; private buildRolesUrl; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }