/// import { SendMailOptions, SentMessageInfo, Transport } from 'nodemailer'; import { Request } from 'express'; import { IUser } from './user'; import { CRUD } from './crud'; import { IPolicyStore } from '../authorize/policy-store'; export interface INodeAuthOptions { secretKey: string; expiresIn?: string; blockUnauthenticatedUser?: boolean; api?: string; login?: string | boolean; signup?: string | boolean; profile?: string | boolean; authorizations?: string | boolean; policyStore?: IPolicyStore; users?: string; onUserChanged?: (user: IUser, req: Request, change: CRUD) => IUser | void; verify?: { route?: string | boolean; baseUrl: string; mailService: Transport; verifyMailOptions: SendMailOptions; confirmMailOptions: SendMailOptions; verificationMessageSendCallback?: (err: Error, info: SentMessageInfo) => void; confirmationMessageSendCallback?: (err: Error, info: SentMessageInfo) => void; }; }