diff --git a/common/api-review/auth-exp.api.md b/common/api-review/auth-exp.api.md index 0b8d39557b1..d696663839d 100644 --- a/common/api-review/auth-exp.api.md +++ b/common/api-review/auth-exp.api.md @@ -4,17 +4,57 @@ ```ts +import { ActionCodeInfo } from '@firebase/auth-types-exp'; +import { ActionCodeOperation } from '@firebase/auth-types-exp'; +import { ActionCodeSettings } from '@firebase/auth-types-exp'; +import { AdditionalUserInfo } from '@firebase/auth-types-exp'; +import { ApplicationVerifier } from '@firebase/auth-types-exp'; import { Auth } from '@firebase/auth-types-exp'; +import { AuthError } from '@firebase/auth-types-exp'; +import { AuthErrorMap } from '@firebase/auth-types-exp'; +import { AuthProvider } from '@firebase/auth-types-exp'; +import { AuthSettings } from '@firebase/auth-types-exp'; import { CompleteFn } from '@firebase/util'; +import { Config } from '@firebase/auth-types-exp'; +import { ConfirmationResult } from '@firebase/auth-types-exp'; import { ErrorFactory } from '@firebase/util'; import { ErrorFn } from '@firebase/util'; import * as externs from '@firebase/auth-types-exp'; +import { FactorId } from '@firebase/auth-types-exp'; import { FirebaseApp } from '@firebase/app-types-exp'; import { FirebaseError } from '@firebase/util'; +import { IdTokenResult } from '@firebase/auth-types-exp'; +import { MultiFactorAssertion } from '@firebase/auth-types-exp'; +import { MultiFactorError } from '@firebase/auth-types-exp'; +import { MultiFactorInfo } from '@firebase/auth-types-exp'; +import { MultiFactorResolver } from '@firebase/auth-types-exp'; +import { MultiFactorSession } from '@firebase/auth-types-exp'; +import { MultiFactorUser } from '@firebase/auth-types-exp'; import { NextFn } from '@firebase/util'; +import { OperationType } from '@firebase/auth-types-exp'; +import { ParsedToken } from '@firebase/auth-types-exp'; +import { Persistence } from '@firebase/auth-types-exp'; +import { PhoneInfoOptions } from '@firebase/auth-types-exp'; +import { PhoneMultiFactorAssertion } from '@firebase/auth-types-exp'; +import { PhoneMultiFactorEnrollInfoOptions } from '@firebase/auth-types-exp'; +import { PhoneMultiFactorSignInInfoOptions } from '@firebase/auth-types-exp'; +import { PhoneSingleFactorInfoOptions } from '@firebase/auth-types-exp'; +import { PopupRedirectResolver } from '@firebase/auth-types-exp'; import { ProviderId } from '@firebase/auth-types-exp'; +import { ReactNativeAsyncStorage } from '@firebase/auth-types-exp'; +import { SignInMethod } from '@firebase/auth-types-exp'; import { Unsubscribe } from '@firebase/util'; +import { User } from '@firebase/auth-types-exp'; import { UserCredential } from '@firebase/auth-types-exp'; +import { UserInfo } from '@firebase/auth-types-exp'; +import { UserMetadata } from '@firebase/auth-types-exp'; +import { UserProfile } from '@firebase/auth-types-exp'; + +export { ActionCodeInfo } + +export { ActionCodeOperation } + +export { ActionCodeSettings } // @public (undocumented) export class ActionCodeURL implements externs.ActionCodeURL { @@ -36,9 +76,15 @@ export class ActionCodeURL implements externs.ActionCodeURL { readonly tenantId: string | null; } +export { AdditionalUserInfo } + +export { ApplicationVerifier } + // @public export function applyActionCode(auth: externs.Auth, oobCode: string): Promise; +export { Auth } + // @public (undocumented) export class AuthCredential { // @internal @@ -62,6 +108,14 @@ export class AuthCredential { toJSON(): object; } +export { AuthError } + +export { AuthErrorMap } + +export { AuthProvider } + +export { AuthSettings } + // @public export const browserLocalPersistence: externs.Persistence; @@ -74,6 +128,10 @@ export const browserSessionPersistence: externs.Persistence; // @public export function checkActionCode(auth: externs.Auth, oobCode: string): Promise; +export { Config } + +export { ConfirmationResult } + // @public export function confirmPasswordReset(auth: externs.Auth, oobCode: string, newPassword: string): Promise; @@ -139,6 +197,8 @@ export class FacebookAuthProvider extends OAuthProvider { static readonly PROVIDER_ID = externs.ProviderId.FACEBOOK; } +export { FactorId } + // @public export function fetchSignInMethodsForEmail(auth: externs.Auth, email: string): Promise; @@ -180,6 +240,8 @@ export class GoogleAuthProvider extends OAuthProvider { static readonly PROVIDER_ID = externs.ProviderId.GOOGLE; } +export { IdTokenResult } + // @public export const indexedDBLocalPersistence: externs.Persistence; @@ -209,6 +271,18 @@ export function linkWithRedirect(user: externs.User, provider: externs.AuthProvi // @public export function multiFactor(user: externs.User): externs.MultiFactorUser; +export { MultiFactorAssertion } + +export { MultiFactorError } + +export { MultiFactorInfo } + +export { MultiFactorResolver } + +export { MultiFactorSession } + +export { MultiFactorUser } + // @public (undocumented) export class OAuthCredential extends AuthCredential implements externs.OAuthCredential { // (undocumented) @@ -267,9 +341,15 @@ export function onAuthStateChanged(auth: externs.Auth, nextOrObserver: externs.N // @public export function onIdTokenChanged(auth: externs.Auth, nextOrObserver: externs.NextOrObserver, error?: ErrorFn, completed?: CompleteFn): Unsubscribe; +export { OperationType } + // @public (undocumented) export function parseActionCodeURL(link: string): externs.ActionCodeURL | null; +export { ParsedToken } + +export { Persistence } + // @public (undocumented) export class PhoneAuthCredential extends AuthCredential implements externs.PhoneAuthCredential { // (undocumented) @@ -309,15 +389,31 @@ export class PhoneAuthProvider implements externs.PhoneAuthProvider { verifyPhoneNumber(phoneOptions: externs.PhoneInfoOptions | string, applicationVerifier: externs.ApplicationVerifier): Promise; } +export { PhoneInfoOptions } + +export { PhoneMultiFactorAssertion } + +export { PhoneMultiFactorEnrollInfoOptions } + // @public (undocumented) export class PhoneMultiFactorGenerator implements externs.PhoneMultiFactorGenerator { // (undocumented) static assertion(credential: externs.PhoneAuthCredential): externs.PhoneMultiFactorAssertion; } +export { PhoneMultiFactorSignInInfoOptions } + +export { PhoneSingleFactorInfoOptions } + +export { PopupRedirectResolver } + // @public export const prodErrorMap: externs.AuthErrorMap; +export { ProviderId } + +export { ReactNativeAsyncStorage } + // @public export function reauthenticateWithCredential(user: externs.User, credential: externs.AuthCredential): Promise; @@ -333,7 +429,7 @@ export function reauthenticateWithRedirect(user: externs.User, provider: externs // Warning: (ae-forgotten-export) The symbol "ApplicationVerifier" needs to be exported by the entry point index.d.ts // // @public (undocumented) -export class RecaptchaVerifier implements externs.RecaptchaVerifier, ApplicationVerifier { +export class RecaptchaVerifier implements externs.RecaptchaVerifier, ApplicationVerifier_2 { // Warning: (ae-forgotten-export) The symbol "Parameters" needs to be exported by the entry point index.d.ts constructor(containerOrId: HTMLElement | string, parameters: Parameters_2, authExtern: externs.Auth); // (undocumented) @@ -370,6 +466,8 @@ export function setPersistence(auth: externs.Auth, persistence: externs.Persiste // @public export function signInAnonymously(auth: externs.Auth): Promise; +export { SignInMethod } + // @public export function signInWithCredential(auth: externs.Auth, credential: externs.AuthCredential): Promise; @@ -429,6 +527,16 @@ export function updateProfile(user: externs.User, { displayName, photoURL: photo // @public export function useDeviceLanguage(auth: externs.Auth): void; +export { User } + +export { UserCredential } + +export { UserInfo } + +export { UserMetadata } + +export { UserProfile } + // @public export function verifyBeforeUpdateEmail(user: externs.User, newEmail: string, actionCodeSettings?: externs.ActionCodeSettings | null): Promise; diff --git a/packages-exp/auth-exp/index.ts b/packages-exp/auth-exp/index.ts index ac15088cdb6..aa7a0476fd1 100644 --- a/packages-exp/auth-exp/index.ts +++ b/packages-exp/auth-exp/index.ts @@ -16,7 +16,6 @@ */ import { FirebaseApp } from '@firebase/app-types-exp'; -import { Auth } from '@firebase/auth-types-exp'; import { initializeAuth } from './src'; import { registerAuth } from './src/core/auth/register'; @@ -25,6 +24,91 @@ import { browserLocalPersistence } from './src/platform_browser/persistence/loca import { indexedDBLocalPersistence } from './src/platform_browser/persistence/indexed_db'; import { browserPopupRedirectResolver } from './src/platform_browser/popup_redirect'; +import { + // Enums + ActionCodeOperation, + FactorId, + OperationType, + ProviderId, + SignInMethod, + // Interfaces + ActionCodeInfo, + ActionCodeSettings, + AdditionalUserInfo, + ApplicationVerifier, + Auth, + AuthError, + AuthErrorMap, + AuthProvider, + AuthSettings, + Config, + ConfirmationResult, + IdTokenResult, + MultiFactorAssertion, + MultiFactorError, + MultiFactorInfo, + MultiFactorResolver, + MultiFactorSession, + MultiFactorUser, + ParsedToken, + Persistence, + PhoneMultiFactorAssertion, + PhoneMultiFactorEnrollInfoOptions, + PhoneMultiFactorSignInInfoOptions, + PhoneSingleFactorInfoOptions, + PopupRedirectResolver, + ReactNativeAsyncStorage, + User, + UserCredential, + UserInfo, + UserMetadata, + UserProfile, + PhoneInfoOptions +} from '@firebase/auth-types-exp'; + +// Public types +export { + // Enums + ActionCodeOperation, + FactorId, + OperationType, + ProviderId, + SignInMethod, + // Interfaces + ActionCodeInfo, + ActionCodeSettings, + AdditionalUserInfo, + ApplicationVerifier, + Auth, + AuthError, + AuthErrorMap, + AuthProvider, + AuthSettings, + Config, + ConfirmationResult, + IdTokenResult, + MultiFactorAssertion, + MultiFactorError, + MultiFactorInfo, + MultiFactorResolver, + MultiFactorSession, + MultiFactorUser, + ParsedToken, + Persistence, + PhoneMultiFactorAssertion, + PhoneMultiFactorEnrollInfoOptions, + PhoneMultiFactorSignInInfoOptions, + PhoneSingleFactorInfoOptions, + PopupRedirectResolver, + ReactNativeAsyncStorage, + User, + UserCredential, + UserInfo, + UserMetadata, + UserProfile, + PhoneInfoOptions +}; + // Core functionality shared by all clients export * from './src'; diff --git a/packages-exp/auth-types-exp/index.d.ts b/packages-exp/auth-types-exp/index.d.ts index da6a2cbd8de..c47b49b1a75 100644 --- a/packages-exp/auth-types-exp/index.d.ts +++ b/packages-exp/auth-types-exp/index.d.ts @@ -1067,7 +1067,7 @@ export interface MultiFactorInfo { * * @public */ -export abstract class MultiFactorResolver { +export interface MultiFactorResolver { /** * The list of hints for the second factors needed to complete the sign-in for the current * session.