UNPKG

@j2blasco/ts-auth

Version:

TypeScript authentication abstraction library that eliminates vendor lock-in and provides mock-free testing for both frontend and backend authentication systems

52 lines (51 loc) 1.68 kB
import { Result, ErrorUnknown, ErrorWithCode } from '@j2blasco/ts-result'; import { IAuthBackend } from 'backend/core/auth-backend.interface'; import { Subject } from 'rxjs'; export declare class AuthBackendTesting implements IAuthBackend { constructor(); changePassword(args: { uid: string; newPassword: string; }): Promise<Result<void, ErrorUnknown>>; sendResetPasswordEmail(_args: { email: string; }): Promise<Result<{ success: boolean; }, ErrorUnknown>>; private registeredUsers; getUidFromIdToken(idToken: string): Promise<Result<string, ErrorUnknown>>; onUserCreated$: Subject<{ uid: string; }>; onUserDeleted$: Subject<{ uid: string; }>; signInWithEmailAndPassword(args: { email: string; password: string; }): Promise<Result<{ uid: string; refreshToken: string; idToken: string; }, ErrorWithCode<'invalid-email'> | ErrorWithCode<'user-not-found'> | ErrorWithCode<'wrong-password'> | ErrorUnknown>>; signInWithRefreshToken(refreshToken: string): Promise<Result<{ idToken: string; uid: string; }, ErrorUnknown>>; signUpWithEmailPassword(_args: { email: string; password: string; }): Promise<Result<{ uid: string; }, ErrorUnknown>>; changeEmail(_args: { uid: string; newEmail: string; }): Promise<Result<void, ErrorUnknown>>; deleteUser(_args: { uid: string; }): Promise<Result<void, ErrorUnknown>>; getUidByEmail(email: string): Promise<Result<{ uid: string; }, ErrorWithCode<'email-not-found'> | ErrorUnknown>>; }