///
import { IUser } from "../interfaces/IUser";
interface ITokenPayload {
username: string;
useremail: string;
deferedKey: string;
ramdonKey: string;
expiration: string;
}
export declare class UserPoliceService {
private readonly RESET_USER_PWD_KEY;
private readonly CONFIRM_USER_PWD_KEY;
private readonly emailService;
private readonly cypherService;
constructor();
protected generateResetUserPwdToken(user: IUser): string;
protected decypherUserResetPwdToken(cypherToken: string): ITokenPayload;
protected getUserFromTokenPayload(payload: ITokenPayload): IUser;
protected validateResetUserPwdToken(cypherToken: string, userIsValid: (user: IUser) => Promise): Promise;
protected generateResetUserPwdTokenUrl(token: string): URL;
private defaultTokenHandler;
private loadResetUserPwdEmail;
protected requestResetUserPwd(user: IUser, userIsValid: (user: IUser) => any, tokenHander?: (user: IUser, link: URL, template: string) => Promise): Promise;
}
export {};
//# sourceMappingURL=UserPoliceService.d.ts.map