import type { CaptchaParams } from './captcha'; import type { HttpClient } from './httpClient'; import type { IdentityEventManager } from './identityEventManager'; import type { ApiClientConfig } from './main'; import type { OpenIdUser, Profile } from './models'; export type UpdateEmailParams = { accessToken: string; email: string; redirectUrl?: string; } & CaptchaParams; export type EmailVerificationParams = { accessToken: string; redirectUrl?: string; returnToAfterEmailConfirmation?: string; }; export type PhoneNumberVerificationParams = { accessToken: string; }; type EmailRequestPasswordResetParams = { email: string; loginLink?: string; origin?: string; redirectUrl?: string; returnToAfterPasswordReset?: string; } & CaptchaParams; type SmsRequestPasswordResetParams = { phoneNumber: string; origin?: string; } & CaptchaParams; export type RequestPasswordResetParams = EmailRequestPasswordResetParams | SmsRequestPasswordResetParams; type EmailRequestAccountRecoveryParams = { email: string; redirectUrl?: string; loginLink?: string; returnToAfterAccountRecovery?: string; } & CaptchaParams; type SmsRequestAccountRecoveryParams = { phoneNumber: string; } & CaptchaParams; export type RequestAccountRecoveryParams = EmailRequestAccountRecoveryParams | SmsRequestAccountRecoveryParams; type AccessTokenUpdatePasswordParams = { accessToken?: string; password: string; oldPassword?: string; userId?: string; }; type EmailVerificationCodeUpdatePasswordParams = { accessToken?: string; email: string; verificationCode: string; password: string; }; type SmsVerificationCodeUpdatePasswordParams = { accessToken?: string; phoneNumber: string; verificationCode: string; password: string; }; export type UpdatePasswordParams = AccessTokenUpdatePasswordParams | EmailVerificationCodeUpdatePasswordParams | SmsVerificationCodeUpdatePasswordParams; export type GetUserParams = { accessToken: string; fields?: string; }; export type UnlinkParams = { accessToken: string; identityId: string; }; export type UpdatePhoneNumberParams = { accessToken: string; phoneNumber: string; }; export type UpdateProfileParams = { accessToken: string; redirectUrl?: string; data: Partial; }; export type VerifyPhoneNumberParams = { accessToken: string; phoneNumber: string; verificationCode: string; }; export type VerifyEmailParams = { email: string; verificationCode: string; accessToken: string; }; /** * Identity Rest API Client */ export default class ProfileClient { private config; private http; private eventManager; private sendEmailVerificationUrl; private sendPhoneNumberVerificationUrl; private signupDataUrl; private unlinkUrl; private updateEmailUrl; private updatePasswordUrl; private updatePhoneNumberUrl; private updateProfileUrl; private userInfoUrl; private verifyPhoneNumberUrl; private verifyEmailUrl; constructor(props: { config: ApiClientConfig; http: HttpClient; eventManager: IdentityEventManager; }); getSignupData(signupToken: string): Promise; getUser(params: GetUserParams): Promise; requestAccountRecovery(params: RequestAccountRecoveryParams): Promise; requestPasswordReset(params: RequestPasswordResetParams): Promise; sendEmailVerification(params: EmailVerificationParams): Promise; sendPhoneNumberVerification(params: PhoneNumberVerificationParams): Promise; unlink(params: UnlinkParams): Promise; updateEmail(params: UpdateEmailParams): Promise; updatePhoneNumber(params: UpdatePhoneNumberParams): Promise; updateProfile(params: UpdateProfileParams): Promise; updatePassword(params: UpdatePasswordParams): Promise; verifyPhoneNumber(params: VerifyPhoneNumberParams): Promise; verifyEmail(params: VerifyEmailParams): Promise; } export {};