mirror of
https://github.com/bitwarden/browser
synced 2025-12-18 01:03:35 +00:00
42 lines
1.4 KiB
TypeScript
42 lines
1.4 KiB
TypeScript
import { MasterPasswordPolicyOptions } from "@bitwarden/common/admin-console/models/domain/master-password-policy-options";
|
|
import { Policy } from "@bitwarden/common/admin-console/models/domain/policy";
|
|
|
|
export interface PasswordPolicies {
|
|
policies: Policy[];
|
|
isPolicyAndAutoEnrollEnabled: boolean;
|
|
enforcedPasswordPolicyOptions: MasterPasswordPolicyOptions;
|
|
}
|
|
|
|
/**
|
|
* The `LoginComponentService` allows the single libs/auth `LoginComponent` to
|
|
* delegate all client-specific functionality to client-specific service
|
|
* implementations of `LoginComponentService`.
|
|
*
|
|
* The `LoginComponentService` should not be confused with the
|
|
* `LoginStrategyService`, which is used to determine the login strategy and
|
|
* performs the core login logic.
|
|
*/
|
|
export abstract class LoginComponentService {
|
|
/**
|
|
* Gets the organization policies if there is an organization invite.
|
|
* - Used by: Web
|
|
*/
|
|
getOrgPolicies: () => Promise<PasswordPolicies | null>;
|
|
|
|
/**
|
|
* Indicates whether login with device (auth request) is supported on the given client
|
|
*/
|
|
isLoginViaAuthRequestSupported: () => boolean;
|
|
|
|
/**
|
|
* Indicates whether login with passkey is supported on the given client
|
|
*/
|
|
isLoginWithPasskeySupported: () => boolean;
|
|
|
|
/**
|
|
* Launches the SSO flow in a new browser window.
|
|
* - Used by: Browser, Desktop
|
|
*/
|
|
launchSsoBrowserWindow: (email: string, clientId: "browser" | "desktop") => Promise<void>;
|
|
}
|