UNPKG

@nativescript/firebase-auth

Version:
221 lines (220 loc) 9.2 kB
import { FirebaseApp } from '@nativescript/firebase-core'; import { ActionCodeInfoOperation } from './common'; import { ActionCodeInfo, IUserCredential, IActionCodeSettings, IAuth, IAuthCredential, IAuthSettings, IAuthTokenResult, IOAuthCredential, IPhoneAuthCredential, IUser, IUserInfo, IUserMetadata, OAuthCredentialOptions, UserProfileChangeRequest, IOAuthProvider } from '.'; export { ActionCodeInfoOperation }; export declare class UserMetadata implements IUserMetadata { _native: FIRUserMetadata; static fromNative(metadata: FIRUserMetadata): UserMetadata; get native(): FIRUserMetadata; get ios(): FIRUserMetadata; get creationDate(): Date; get lastSignInDate(): Date; toJSON(): { creationDate: Date; lastSignInDate: Date; }; } export declare class UserInfo implements IUserInfo { _native: FIRUserInfo; static fromNative(info: FIRUserInfo): UserInfo; get native(): any; get ios(): any; get uid(): string; get displayName(): string; get email(): string; get phoneNumber(): string; get photoURL(): string; get providerId(): string; toJSON(): { displayName: string; email: string; uid: string; phoneNumber: string; providerId: string; photoURL: string; }; } export declare class User implements IUser { _native: FIRUser; get native(): FIRUser; get ios(): FIRUser; static fromNative(user: FIRUser): User; get displayName(): string; get anonymous(): boolean; get emailVerified(): boolean; get email(): string; get uid(): string; get phoneNumber(): string; get providerId(): string; get photoURL(): string; get metadata(): UserMetadata; get providerData(): UserInfo[]; toJSON(): { displayName: string; anonymous: boolean; emailVerified: boolean; email: string; uid: string; phoneNumber: string; providerId: string; photoURL: string; metadata: UserMetadata; providerData: UserInfo[]; }; delete(): Promise<void>; getIdToken(forceRefresh?: boolean): Promise<string>; getIdTokenResult(forceRefresh?: boolean): Promise<IAuthTokenResult>; linkWithCredential(credential: AuthCredential): Promise<IUserCredential>; reauthenticateWithProvider(provider: OAuthProvider): Promise<IUserCredential>; reauthenticateWithCredential(credential: AuthCredential): Promise<IUserCredential>; reload(): Promise<void>; sendEmailVerification(actionCodeSettings?: ActionCodeSettings): Promise<void>; unlink(providerId: string): Promise<IUser>; updateEmail(email: string): Promise<void>; updatePassword(password: string): Promise<void>; updatePhoneNumber(credential: PhoneAuthCredential): Promise<void>; updateProfile(profile: UserProfileChangeRequest): Promise<void>; verifyBeforeUpdateEmail(email: string, actionCodeSettings?: ActionCodeSettings): Promise<void>; } export declare class AuthSettings implements IAuthSettings { _native: FIRAuthSettings; static fromNative(settings: FIRAuthSettings): AuthSettings; get native(): FIRAuthSettings; get ios(): FIRAuthSettings; set appVerificationDisabledForTesting(value: boolean); get appVerificationDisabledForTesting(): boolean; } export declare class ActionCodeSettings implements IActionCodeSettings { _native: FIRActionCodeSettings; static fromNative(settings: FIRActionCodeSettings): ActionCodeSettings; get androidInstallIfNotAvailable(): boolean; set androidInstallIfNotAvailable(value: boolean); get androidMinimumVersion(): string; set androidMinimumVersion(value: string); get androidPackageName(): string; set androidPackageName(value: string); get dynamicLinkDomain(): string; set dynamicLinkDomain(value: string); get handleCodeInApp(): boolean; set handleCodeInApp(handle: boolean); get native(): FIRActionCodeSettings; get ios(): FIRActionCodeSettings; get url(): string; get iOSBundleId(): string; set iOSBundleId(id: string); } export declare class AuthCredential implements IAuthCredential { signInMethod: string; protected _native: FIRAuthCredential; static fromNative(credential: FIRAuthCredential): AuthCredential; get native(): FIRAuthCredential; get ios(): FIRAuthCredential; get provider(): string; } export declare class EmailAuthProvider { static credential(email: string, password: string): AuthCredential; static credentialWithLink(email: string, link: string): AuthCredential; } export declare class PhoneAuthProvider { _native: FIRPhoneAuthProvider; get native(): FIRPhoneAuthProvider; get ios(): FIRPhoneAuthProvider; static provider(auth?: Auth): PhoneAuthProvider; credential(verificationId: string, verificationCode: string): AuthCredential; verifyPhoneNumber(phoneNumber: string): Promise<string>; } export declare class AppleAuthProvider { static credential(idToken: string, nonce: string): AuthCredential; } export declare class FacebookAuthProvider { static credential(accessToken: string): AuthCredential; } export declare class GithubAuthProvider { static credential(token: string): AuthCredential; } export declare class GoogleAuthProvider { static credential(idToken: string, accessToken: string): AuthCredential; } export declare class OAuthCredential extends AuthCredential implements IOAuthCredential { signInMethod: string; protected _native: FIROAuthCredential; static fromNative(credential: any): OAuthCredential; get native(): FIROAuthCredential; get ios(): FIROAuthCredential; get idToken(): string; get accessToken(): string; get secret(): string; } export declare class OAuthProvider implements IOAuthProvider { _providerId: string; _customParameters: { [key: string]: string; }; _scopes: string[]; constructor(providerId: string); get _builder(): FIROAuthProvider; addCustomParameter(key: string, value: string): void; setScopes(scopes: string[]): void; credential(optionsOrIdToken: OAuthCredentialOptions | string | null, accessToken?: string): OAuthCredential; } export declare class TwitterAuthProvider { static credential(token: string, secret: string): AuthCredential; } export declare class PhoneAuthCredential extends AuthCredential implements IPhoneAuthCredential { protected _native: FIRPhoneAuthCredential; static fomNative(credential: FIRPhoneAuthCredential): PhoneAuthCredential; get native(): FIRPhoneAuthCredential; get ios(): FIRPhoneAuthCredential; } export declare class AuthTokenResult implements IAuthTokenResult { _native: FIRAuthTokenResult; static fromNative(tokenResult: FIRAuthTokenResult): AuthTokenResult; get native(): FIRAuthTokenResult; get ios(): FIRAuthTokenResult; get authDate(): Date; get claims(): any; get expirationDate(): Date; get issuedAtDate(): Date; get signInProvider(): string; get token(): string; } export declare class Auth implements IAuth { _native: FIRAuth; constructor(app?: FirebaseApp); useEmulator(host: string, port: number): void; fetchSignInMethodsForEmail(email: string): Promise<string[]>; isSignInWithEmailLink(emailLink: string): boolean; _authStateChangeListeners: Map<any, any>; addAuthStateChangeListener(listener: (user: User) => void): void; removeAuthStateChangeListener(listener: (user: User) => void): void; _idTokenChangeListeners: Map<any, any>; addIdTokenChangeListener(listener: (user: User) => void): void; removeIdTokenChangListener(listener: (user: User) => void): void; sendPasswordResetEmail(email: string, actionCodeSettings?: ActionCodeSettings): Promise<void>; sendSignInLinkToEmail(email: string, actionCodeSettings?: ActionCodeSettings): Promise<void>; signInAnonymously(): Promise<IUserCredential>; signInWithProvider(provider: OAuthProvider): Promise<IUserCredential>; getProviderCredential(provider: OAuthProvider): Promise<OAuthCredential>; signInWithCredential(credential: AuthCredential): Promise<IUserCredential>; signInWithCustomToken(customToken: string): Promise<IUserCredential>; signInWithEmailLink(email: string, emailLink: string): Promise<IUserCredential>; useUserAccessGroup(userAccessGroup: string): Promise<void>; verifyPasswordResetCode(code: string): Promise<string>; createUserWithEmailAndPassword(email: string, password: string): Promise<IUserCredential>; confirmPasswordReset(code: string, newPassword: string): Promise<void>; checkActionCode(code: string): Promise<ActionCodeInfo>; applyActionCode(code: string): Promise<void>; signInWithEmailAndPassword(email: string, password: string): Promise<IUserCredential>; signOut(): Promise<boolean>; get native(): FIRAuth; get ios(): FIRAuth; _app: FirebaseApp; get app(): FirebaseApp; get currentUser(): User; get languageCode(): string; set languageCode(code: string); _settings: AuthSettings; get settings(): AuthSettings; get tenantId(): string; set tenantId(id: string); }