import { Base } from './base'; import { UserProfile } from './types/response'; import { User as UserModel } from './models/user'; import { UserResources } from './types/user'; declare enum UserPurgeDeletionCategory { ERASURE_REQUEST = "Erasure Request", RETENTION_POLICY = "Retention Policy", TEST_USER = "Test User" } interface StudentInformation { jobTitle: string; graduationDate: string; } export declare class User extends Base { private membershipApi; private requestUserPurgeEndpoint; private gatewayUrl; doesUserExist(email: string): Promise; getUserResources(email: string): Promise; createProfile(user: UserModel, sendRegistrationEmail?: boolean): Promise; updateProfile(user: UserModel, authorisationToken: string): Promise; updateExternalUserId(user: UserModel, authorisationToken: string): Promise; changeEmail(userId: string, email: string, authorisationToken: string): Promise; updateStudentInformation(userId: string, body: StudentInformation, authorisationToken: string): Promise; requestPurge(userId: string, deletionCategory: UserPurgeDeletionCategory): Promise; mapUserDetailsResponse(userData: any, isUnauthorized: any): UserModel; } export {};