UNPKG

@enonic/mock-xp

Version:

Mock Enonic XP API JavaScript Library

70 lines (69 loc) 3.1 kB
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; }