export declare enum MultiFactorAuthStatus { MFASTATUS_INIT = "init", MFASTATUS_ENABLED = "enabled", MFASTATUS_DISABLED = "disabled" } export declare enum MultiFactorAuthType { MFATYPE_TOTP = "totp" } /** * @enum {string} * @public * @readonly * @description * Multifactor authentication (MFA) policy. */ export declare enum MultiFactorAuthPolicy { /** * @public * @event MultiFactorAuthPolicy#MFAPOLICY_NEVER * @description * no Multi Factor requested to the user */ MFAPOLICY_NEVER = "never", /** * @public * @event MultiFactorAuthPolicy#MFAPOLICY_UNTRUSTED_ONLY * @description * Multi Factor is requested to the user only for untrusted applications and browsers (user has the possibility to trust applications/browsers so that the multi factor is no longer requested for this application/browser */ MFAPOLICY_UNTRUSTED_ONLY = "untrusted_only", /** * @public * @event MultiFactorAuthPolicy#MFAPOLICY_ALWAYS * @description * Multi Factor is always requested to the user */ MFAPOLICY_ALWAYS = "always" } export declare class MultiFactorAuthInformation { /** * Type of multifactor * * @type {MultiFactorAuthType} * @memberof MultiFactorAuthInformation */ mfaType: MultiFactorAuthType; /** * secret of TOTP multifactor * * @type {string} * @memberof MultiFactorAuthInformation */ mfaSecret: string; /** * OTP auth url computed from secret (see https://github.com/google/google-authenticator/wiki/Key-Uri-Format) * * @type {string} * @memberof MultiFactorAuthInformation */ otpAuthUrl: string; /** * QR code generated from OTP Url * * @type {string} * @memberof MultiFactorAuthInformation */ qrcode: string; private constructor(); static createMFAInfoFromData(data: any): MultiFactorAuthInformation; } export declare class MultiFactorAuthRainbowAuth { /** * status of the activation of the rainbow policy * * @type {MultiFactorAuthStatus} * @memberof MultiFactorAuthRainbowAuth */ mfaStatus: MultiFactorAuthStatus; /** * list of trusted application of rainbow policy * * @type {any[]} * @memberof MultiFactorAuthRainbowAuth */ mfaTrustedApps: any[]; /** * type of multifactor * * @type {MultiFactorAuthType} * @memberof MultiFactorAuthRainbowAuth */ mfaType: MultiFactorAuthType; constructor(mfaStatus: MultiFactorAuthStatus, mfaTrustedApps: any[], mfaType: MultiFactorAuthType); static createMFARainbowAuthFromData(data: any): MultiFactorAuthRainbowAuth; } export interface MultiFactorAuthVerifInfo { /** * @public * @property {MultiFactorAuthType} type of multifactor */ mfaType: MultiFactorAuthType; /** * @public * @property {string} recovery code used as default multifactor authentication */ mfaRecoveryCode: string; } export declare class MultiFactorAuthFeatureInfo { /** * @public * @type {string} Name of feature * @memberof MultiFactorAuthFeatureInfo */ feature: string; /** * @public * @type {string} JsonWebToken to use for all API requests concerning a feature * @memberof MultiFactorAuthFeatureInfo */ token: string; /** * Specific parameters associated to multifactor authentication feature * * @public * @type {{ mfaRecoveryCode: string; canBeDisabled: boolean }} * @memberof MultiFactorAuthFeatureInfo */ mfa: { mfaRecoveryCode: string; canBeDisabled: boolean; }; constructor(feature: string, token: string, mfa: { mfaRecoveryCode: string; canBeDisabled: boolean; }); } //# sourceMappingURL=rainbow-auth.model.d.ts.map