/** * @license * Copyright Akveo. All Rights Reserved. * Licensed under the MIT License. See License.txt in the project root for license information. */ import { NbAuthTokenClass } from '../../services/token/token'; import { NbAuthStrategyOptions } from '../auth-strategy-options'; export interface NbPasswordStrategyModule { alwaysFail?: boolean; endpoint?: string; method?: string; redirect?: { success?: string | null; failure?: string | null; }; requireValidToken?: boolean; defaultErrors?: string[]; defaultMessages?: string[]; } export interface NbPasswordStrategyReset extends NbPasswordStrategyModule { resetPasswordTokenKey?: string; } export interface NbPasswordStrategyToken { class?: NbAuthTokenClass; key?: string; getter?: Function; } export interface NbPasswordStrategyMessage { key?: string; getter?: Function; } export declare class NbPasswordAuthStrategyOptions extends NbAuthStrategyOptions { baseEndpoint?: string; login?: boolean | NbPasswordStrategyModule; register?: boolean | NbPasswordStrategyModule; requestPass?: boolean | NbPasswordStrategyModule; resetPass?: boolean | NbPasswordStrategyReset; logout?: boolean | NbPasswordStrategyReset; refreshToken?: boolean | NbPasswordStrategyModule; token?: NbPasswordStrategyToken; errors?: NbPasswordStrategyMessage; messages?: NbPasswordStrategyMessage; validation?: { password?: { required?: boolean; minLength?: number | null; maxLength?: number | null; regexp?: string | null; }; email?: { required?: boolean; regexp?: string | null; }; fullName?: { required?: boolean; minLength?: number | null; maxLength?: number | null; regexp?: string | null; }; }; } export declare const passwordStrategyOptions: NbPasswordAuthStrategyOptions;