@enonic/mock-xp
Version:
Mock Enonic XP API JavaScript Library
70 lines (69 loc) • 3.1 kB
TypeScript
import type { CreateGroupParams, CreateRoleParams, CreateUserParams, GetProfileParams, GroupKey, LoginParams, LoginResult, ModifyProfileParams, PrincipalKey, RoleKey, UserKey } from '@enonic-types/lib-auth';
import type { CreateUserNodeParams, Log, GroupNode, GroupNodeData, RoleNode, RoleNodeData, UserData, UserNode } from '../types';
import { Group } from './auth/Group';
import { Role } from './auth/Role';
import { User } from './auth/User';
import type { RepoConnection } from './RepoConnection';
import { Server } from './Server';
import { UserWithProfile } from './auth/UserWithProfile';
export type { CreateUserNodeParams, GroupNode, GroupNodeData, RoleNode, RoleNodeData, UserData, UserNode, };
export declare class Auth {
readonly log: Log;
readonly server: Server;
readonly systemRepoConnection: RepoConnection;
static base36Hash(string: string): string;
constructor({ server }: {
server: Server;
});
private _getUserNodeByName;
addMembers({ members, principalKey, }: {
members: (UserKey | GroupKey)[];
principalKey: GroupKey | RoleKey;
}): Group | Role;
createGroup({ description, displayName, idProvider, members, name, }: CreateGroupParams & {
members?: (GroupKey | UserKey)[];
}): Group;
createRole({ name, displayName, description, members, }: CreateRoleParams & {
members?: (GroupKey | UserKey)[];
}): Role;
createUser({ name, displayName, idProvider, email, password, profile, }: Omit<CreateUserParams, 'idProvider'> & {
idProvider?: string;
password?: string;
profile?: Record<string, unknown>;
}): User;
getGroupByName({ name, idProvider, }: {
name: string;
idProvider?: string;
}): Group;
getMembers({ principalKey }: {
principalKey: GroupKey | RoleKey;
}): (Group | User)[];
getMemberships({ principalKey, }: {
principalKey: UserKey | GroupKey;
transitive?: boolean;
}): (Group | Role)[];
getPrincipal(principalKey: PrincipalKey): User | Group | Role | null;
getProfile<Profile extends Record<string, unknown> = Record<string, unknown>>({ key, scope, }: GetProfileParams): Profile | null;
getRoleByName({ name, }: {
name: string;
}): Role;
getUser({ includeProfile }?: {
includeProfile?: boolean;
}): User | UserWithProfile | null;
getUserByName({ name, idProvider, includeProfile, }: {
name: string;
idProvider?: string;
includeProfile?: boolean;
}): User | UserWithProfile;
getUserByUserKey({ userKey, includeProfile, }: {
userKey: UserKey;
includeProfile?: boolean;
}): User | UserWithProfile;
login({ user, password, idProvider, }: LoginParams): LoginResult;
logout(): void;
modifyProfile<Profile extends Record<string, unknown> = Record<string, unknown>>({ key, scope, editor }: ModifyProfileParams<Profile>): Profile | null;
removeMembers({ members, principalKey }: {
principalKey: GroupKey | RoleKey;
members: (UserKey | GroupKey)[];
}): Group | Role;
}