import { NextFunction, Request, Response } from 'express'; import { BlockletService } from '../service/blocklet'; import { SessionUser, AuthMethod, KycMethod } from '../util/login'; type AuthOptions = { roles?: string[]; permissions?: string[]; kyc?: KycMethod[]; methods?: AuthMethod[]; getClient?: Function; }; declare const authMiddleware: { ({ roles, permissions, kyc, methods, getClient }?: AuthOptions): (req: Request & { user?: SessionUser; }, res: Response, next: NextFunction) => Promise; getServiceClient: () => BlockletService; }; export { authMiddleware, authMiddleware as auth };