///
import { AuthOptions } from './authOptions';
import { AuthResult } from './authResult';
import { Events } from './identityEventManager';
import { DeleteTrustedDeviceParams, ListTrustedDevicesResponse, RemoveMfaEmailParams, RemoveMfaPhoneNumberParams, StartMfaEmailRegistrationParams, StartMfaEmailRegistrationResponse, StartMfaPhoneNumberRegistrationParams, StartMfaPhoneNumberRegistrationResponse, StepUpParams, VerifyMfaEmailRegistrationParams, VerifyMfaPasswordlessParams, VerifyMfaPhoneNumberRegistrationParams } from './mfaClient';
import { MFA, OpenIdUser, OrchestrationToken, PasswordlessResponse, PasswordStrength, Profile, RemoteSettings, SessionInfo } from './models';
import { LoginWithCredentialsParams, LoginWithCustomTokenParams, LoginWithPasswordParams, LogoutParams, PasswordlessParams, RefreshTokenParams, RevocationParams, SignupParams, TokenRequestParameters, VerifyPasswordlessParams } from './oAuthClient';
import { WithPkceParams } from './pkceService';
import { EmailVerificationParams, GetUserParams, PhoneNumberVerificationParams, RequestAccountRecoveryParams, RequestPasswordResetParams, UnlinkParams, UpdateEmailParams, UpdatePasswordParams, UpdatePhoneNumberParams, UpdateProfileParams, VerifyEmailParams, VerifyPhoneNumberParams } from './profileClient';
import { ResetPasskeysParams } from './webAuthnClient';
import { DeviceCredential, LoginWithWebAuthnParams, SignupWithWebAuthnParams } from './webAuthnService';
import CredentialsResponse = MFA.CredentialsResponse;
import StepUpResponse = MFA.StepUpResponse;
export { AuthOptions } from './authOptions';
export { AuthResult } from './authResult';
export * from './models';
export * from './oAuthClient';
export { DeviceCredential, LoginWithWebAuthnParams, SignupWithWebAuthnParams } from './webAuthnService';
export interface Config {
clientId: string;
domain: string;
/**
* Used to define which Google provider variant to use with Google One Tap
* @default "default"
* */
googleVariant?: string;
language?: string;
locale?: string;
webAuthnOrigin?: string;
}
export type ApiClientConfig = RemoteSettings & {
clientId: string;
baseUrl: string;
orchestrationToken?: OrchestrationToken;
};
export type Client = {
addNewWebAuthnDevice: (accessToken: string, friendlyName?: string) => Promise;
checkSession: (options?: WithPkceParams) => Promise;
checkUrlFragment: (url?: string) => boolean;
exchangeAuthorizationCodeWithPkce: (params: TokenRequestParameters) => Promise;
getMfaStepUpToken: (params: WithPkceParams) => Promise;
getPasswordStrength: (password: string) => Promise;
getSessionInfo: () => Promise;
getSignupData: (signupToken: string) => Promise;
getUser: (params: GetUserParams) => Promise;
listMfaCredentials: (accessToken: string) => Promise;
listTrustedDevices: (accessToken: string) => Promise;
listWebAuthnDevices: (accessToken: string) => Promise;
loginFromSession: (options?: WithPkceParams) => Promise;
loginWithCredentials: (params: LoginWithCredentialsParams) => Promise;
loginWithCustomToken: (params: LoginWithCustomTokenParams) => Promise;
loginWithPassword: (params: LoginWithPasswordParams) => Promise;
instantiateOneTap: (opts?: AuthOptions) => void;
loginWithSocialProvider: (provider: string, options?: WithPkceParams) => Promise;
loginWithWebAuthn: (params: LoginWithWebAuthnParams) => Promise;
logout: (params?: LogoutParams, revocationParams?: RevocationParams) => Promise;
off: (eventName: K, listener: (payload: Events[K]) => void) => void;
on: (eventName: K, listener: (payload: Events[K]) => void) => void;
refreshTokens: (params: RefreshTokenParams) => Promise;
remoteSettings: Promise;
removeMfaEmail: (params: RemoveMfaEmailParams) => Promise;
removeMfaPhoneNumber: (params: RemoveMfaPhoneNumberParams) => Promise;
removeTrustedDevice: (params: DeleteTrustedDeviceParams) => Promise;
removeWebAuthnDevice: (accessToken: string, deviceId: string) => Promise;
requestAccountRecovery: (params: RequestAccountRecoveryParams) => Promise;
requestPasswordReset: (params: RequestPasswordResetParams) => Promise;
resetPasskeys: (params: ResetPasskeysParams) => Promise;
sendEmailVerification: (params: EmailVerificationParams) => Promise;
sendPhoneNumberVerification: (params: PhoneNumberVerificationParams) => Promise;
signup: (params: SignupParams) => Promise;
signupWithWebAuthn: (params: SignupWithWebAuthnParams, auth?: AuthOptions) => Promise;
startMfaEmailRegistration: (params: StartMfaEmailRegistrationParams) => Promise;
startMfaPhoneNumberRegistration: (params: StartMfaPhoneNumberRegistrationParams) => Promise;
startPasswordless: (params: PasswordlessParams, options?: Omit, 'useWebMessage'>) => Promise;
unlink: (params: UnlinkParams) => Promise;
updateEmail: (params: UpdateEmailParams) => Promise;
updatePassword: (params: UpdatePasswordParams) => Promise;
updatePhoneNumber: (params: UpdatePhoneNumberParams) => Promise;
updateProfile: (params: UpdateProfileParams) => Promise;
verifyEmail: (params: VerifyEmailParams) => Promise;
verifyMfaEmailRegistration: (params: VerifyMfaEmailRegistrationParams) => Promise;
verifyMfaPasswordless: (params: VerifyMfaPasswordlessParams) => Promise;
verifyMfaPhoneNumberRegistration: (params: VerifyMfaPhoneNumberRegistrationParams) => Promise;
verifyPasswordless: (params: VerifyPasswordlessParams, options?: AuthOptions) => Promise;
verifyPhoneNumber: (params: VerifyPhoneNumberParams) => Promise;
};
export declare function createClient(creationConfig: Config): Client;