import { TwoFactorProviderType } from "../enums/two-factor-provider-type"; import { IdentityTwoFactorResponse } from "../models/response/identity-two-factor.response"; export interface TwoFactorProviderDetails { type: TwoFactorProviderType; name: string; description: string; priority: number; sort: number; premium: boolean; } export abstract class TwoFactorService { init: () => void; getSupportedProviders: (win: Window) => Promise; getDefaultProvider: (webAuthnSupported: boolean) => Promise; setSelectedProvider: (type: TwoFactorProviderType) => Promise; clearSelectedProvider: () => Promise; setProviders: (response: IdentityTwoFactorResponse) => Promise; clearProviders: () => Promise; getProviders: () => Promise>; }