keycloak-typescript
Version:
A user friendly library to use keycloak in nodejs projects
16 lines (15 loc) • 1.19 kB
TypeScript
import { User } from '../../models/user';
export declare abstract class IUserManager {
abstract get(userId: string): Promise<User>;
abstract getUsers(queryParameter: string, queryValue: string): Promise<User[]>;
abstract getUserId(username: string): Promise<string>;
protected abstract getRoles(userId: string): Promise<never>;
abstract create(email: string, username: string, enabled: boolean, firstName: string, lastName: string, password: string, isTemporaryPassword: boolean, verifyEmail: boolean, attributes: string, clientId?: string, redirectURL?: string): Promise<string>;
abstract modify(userId: string, user: User, isReplaceOperation: boolean): Promise<User>;
protected abstract modifyRoles(userID: string, realmRoles?: string[], clientRoles?: Map<string, string[]>): Promise<void>;
protected abstract trimUserInfo(user: User): User;
protected abstract fuseUsers(a: User, b: User): User;
abstract resetPassword(userId: string, newPassword: string, isTemporary: boolean): Promise<void>;
abstract forgotPassword(userId: string, clientId?: string, redirectURL?: string): Promise<void>;
abstract delete(userId: string): Promise<void>;
}