import * as firebase from "firebase"; import { MockApp } from "../app"; import { SocialSignInMock } from "./social-signin-mock"; import { User } from "./user"; import { UserStore } from "./user-store"; export declare type AuthStateChangeListener = (user: firebase.User | null) => void; export declare class MockAuth implements firebase.auth.Auth { readonly app: MockApp; currentUser: User | null; languageCode: string | null; settings: firebase.auth.AuthSettings; tenantId: string | null; readonly store: UserStore; private readonly authStateEvents; constructor(app: MockApp); applyActionCode(code: string): Promise; checkActionCode(code: string): Promise; confirmPasswordReset(code: string, newPassword: string): Promise; createUserWithEmailAndPassword(email: string, password: string): Promise; fetchSignInMethodsForEmail(email: string): Promise; getRedirectResult(): Promise; isSignInWithEmailLink(emailLink: string): boolean; mockSocialSignIn(provider: firebase.auth.AuthProvider): SocialSignInMock; onAuthStateChanged(nextOrObserver: AuthStateChangeListener, error?: (a: firebase.auth.Error) => void, completed?: firebase.Unsubscribe): firebase.Unsubscribe; onIdTokenChanged(nextOrObserver: firebase.Observer | ((a: firebase.User | null) => void), error?: (a: firebase.auth.Error) => void, completed?: firebase.Unsubscribe): firebase.Unsubscribe; sendPasswordResetEmail(email: string, actionCodeSettings?: firebase.auth.ActionCodeSettings | null): Promise; sendSignInLinkToEmail(email: string, actionCodeSettings: firebase.auth.ActionCodeSettings): Promise; setPersistence(persistence: string): Promise; private signIn; private signInWithSocial; signInAndRetrieveDataWithCredential(credential: firebase.auth.AuthCredential): Promise; signInAnonymously(): Promise; signInWithCredential(credential: firebase.auth.AuthCredential): Promise; signInWithCustomToken(token: string): Promise; signInWithEmailAndPassword(email: string, password: string): Promise; signInWithEmailLink(email: string, emailLink?: string | undefined): Promise; signInWithPhoneNumber(phoneNumber: string, applicationVerifier: firebase.auth.ApplicationVerifier): Promise; signInWithPopup(provider: firebase.auth.AuthProvider): Promise; signInWithRedirect(provider: firebase.auth.AuthProvider): Promise; signOut(): Promise; updateCurrentUser(user: firebase.User | null): Promise; useDeviceLanguage(): void; verifyPasswordResetCode(code: string): Promise; }