@slickteam/nestjs-keycloak-admin
Version:
Module for Keycloak admin usage with Nestjs
28 lines (27 loc) • 1.62 kB
TypeScript
import { ConfigService } from '@nestjs/config';
import { KeycloakAdminClient, UserRepresentation } from '@s3pweb/keycloak-admin-client-cjs';
export declare enum KeycloakActionsEmailEnum {
VERIFY_EMAIL = "VERIFY_EMAIL",
UPDATE_PROFILE = "UPDATE_PROFILE",
CONFIGURE_TOTP = "CONFIGURE_TOTP",
UPDATE_PASSWORD = "UPDATE_PASSWORD",
TERMS_AND_CONDITIONS = "TERMS_AND_CONDITIONS"
}
export declare class KeycloakAdminService {
private configService;
readonly KEYCLOAK_ADMIN_CLIENT_ID: string;
private readonly KEYCLOAK_ADMIN_CLIENT_SECRET;
private readonly KEYCLOAK_REALM;
readonly _client: KeycloakAdminClient;
constructor(configService: ConfigService);
private auth;
getAccessToken(): Promise<string>;
findAllUsers(): Promise<UserRepresentation[]>;
findUserByEmail(email: string): Promise<UserRepresentation[]>;
findUserByUsername(username: string): Promise<UserRepresentation[]>;
findUserById(id: string): Promise<UserRepresentation | undefined>;
createUser(email: string, firstName?: string | undefined, lastName?: string | undefined, username?: string | undefined, attributes?: Record<string, unknown>): Promise<UserRepresentation>;
updateAttributesOfUser(id: string, user: UserRepresentation, attributes: Record<string, unknown>): Promise<void | never>;
updateUserPassword(userId: string, newPassword: string): Promise<void | never>;
executeActionsEmail(sub: string, clientId: string | undefined, lifespan: number | undefined, redirectUri: string | undefined, actions: KeycloakActionsEmailEnum[] | undefined): Promise<void | never>;
}