mirror of
https://github.com/bitwarden/browser
synced 2025-12-11 13:53:34 +00:00
* remove active account unlocked from state service * Remove status from account service `AccountInfo` * Fixup lingering usages of status Fixup missed factories * Fixup account info usage * fixup CLI build * Fixup current account type * Add helper for all auth statuses to auth service * Fix tests * Uncomment mistakenly commented code * Rework logged out account exclusion tests * Correct test description * Avoid getters returning observables * fixup type
21 lines
954 B
TypeScript
21 lines
954 B
TypeScript
import { Observable } from "rxjs";
|
|
|
|
import { UserId } from "../../types/guid";
|
|
import { AuthenticationStatus } from "../enums/authentication-status";
|
|
|
|
export abstract class AuthService {
|
|
/** Authentication status for the active user */
|
|
abstract activeAccountStatus$: Observable<AuthenticationStatus>;
|
|
/** Authentication status for all known users */
|
|
abstract authStatuses$: Observable<Record<UserId, AuthenticationStatus>>;
|
|
/**
|
|
* Returns an observable authentication status for the given user id.
|
|
* @note userId is a required parameter, null values will always return `AuthenticationStatus.LoggedOut`
|
|
* @param userId The user id to check for an access token.
|
|
*/
|
|
abstract authStatusFor$(userId: UserId): Observable<AuthenticationStatus>;
|
|
/** @deprecated use {@link activeAccountStatus$} instead */
|
|
abstract getAuthStatus: (userId?: string) => Promise<AuthenticationStatus>;
|
|
abstract logOut: (callback: () => void) => void;
|
|
}
|