1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-10-19 07:35:48 +02:00
bitwarden-browser/src/abstractions/auth.service.ts

28 lines
1.3 KiB
TypeScript
Raw Normal View History

import { TwoFactorProviderType } from '../enums/twoFactorProviderType';
2018-02-02 04:55:49 +01:00
import { AuthResult } from '../models/domain/authResult';
2018-08-14 21:12:10 +02:00
import { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';
2018-02-02 04:55:49 +01:00
2018-01-23 21:58:13 +01:00
export abstract class AuthService {
2018-02-02 04:55:49 +01:00
email: string;
masterPasswordHash: string;
code: string;
codeVerifier: string;
ssoRedirectUrl: string;
2019-05-27 16:29:09 +02:00
twoFactorProvidersData: Map<TwoFactorProviderType, { [key: string]: string; }>;
selectedTwoFactorProviderType: TwoFactorProviderType;
2018-02-02 04:55:49 +01:00
logIn: (email: string, masterPassword: string) => Promise<AuthResult>;
logInSso: (code: string, codeVerifier: string, redirectUrl: string) => Promise<AuthResult>;
2018-02-02 04:55:49 +01:00
logInTwoFactor: (twoFactorProvider: TwoFactorProviderType, twoFactorToken: string,
remember?: boolean) => Promise<AuthResult>;
2018-05-16 03:11:20 +02:00
logInComplete: (email: string, masterPassword: string, twoFactorProvider: TwoFactorProviderType,
twoFactorToken: string, remember?: boolean) => Promise<AuthResult>;
2018-01-23 21:58:13 +01:00
logOut: (callback: Function) => void;
2018-05-16 03:11:20 +02:00
getSupportedTwoFactorProviders: (win: Window) => any[];
2018-02-02 04:55:49 +01:00
getDefaultTwoFactorProvider: (u2fSupported: boolean) => TwoFactorProviderType;
2018-08-14 21:12:10 +02:00
makePreloginKey: (masterPassword: string, email: string) => Promise<SymmetricCryptoKey>;
authingWithSso: () => boolean;
authingWithPassword: () => boolean;
2018-01-23 21:58:13 +01:00
}