1 | import { Context, IUser } from '../datastore/context';
|
2 | import { Configuration, MailSender, UserService } from '../index';
|
3 | import { CredentialRepository, UserInviteRepository } from './auth.repository';
|
4 | export declare const DEFAULT_INVITE_CODE_EXPIRY: number;
|
5 | export interface IInviteUserResponse {
|
6 | user: IUser;
|
7 | inviteId?: string;
|
8 | activateLink?: string;
|
9 | }
|
10 | export interface IInviteUserRequest {
|
11 | email: string;
|
12 | roles: string[];
|
13 | name?: string;
|
14 | skipEmail?: boolean;
|
15 | }
|
16 | export declare class InviteUserService {
|
17 | private readonly authRepository;
|
18 | private readonly mailSender;
|
19 | private readonly configuration;
|
20 | private readonly userService;
|
21 | private readonly userInviteRepository;
|
22 | private readonly logger;
|
23 | constructor(authRepository: CredentialRepository, mailSender: MailSender, configuration: Configuration, userService: UserService<IUser>, userInviteRepository: UserInviteRepository);
|
24 | inviteUserIfRequired(context: Context, request: IInviteUserRequest): Promise<IInviteUserResponse>;
|
25 | inviteUser(context: Context, request: IInviteUserRequest): Promise<IInviteUserResponse>;
|
26 | getInvitedUser(context: Context, code: string): Promise<IUser | undefined>;
|
27 | reInviteForUserId(context: Context, userId: string): Promise<IInviteUserResponse>;
|
28 | getUserInviteForUserId(context: Context, userId: string): Promise<{
|
29 | id: string;
|
30 | email: string;
|
31 | createdAt: Date;
|
32 | userId: string;
|
33 | roles: string[];
|
34 | } | undefined>;
|
35 | protected reInviteUser(context: Context, existingInvite: any): Promise<IInviteUserResponse>;
|
36 | protected inviteUserInternal(context: Context, request: IInviteUserRequest, validateNew: boolean): Promise<IInviteUserResponse>;
|
37 | private getActivationExpiryInMillis;
|
38 | private getActivationExpiryEmailCopy;
|
39 | private getInvitationCopy;
|
40 | private sendActivationEmail;
|
41 | checkActivationCode(context: Context, code: string): Promise<string | null>;
|
42 | activateAccount(context: Context, code: string, name: string, password: string): Promise<IUser>;
|
43 | private checkInvite;
|
44 | }
|