UNPKG

aura-glass

Version:

A comprehensive glassmorphism design system for React applications with 142+ production-ready components

33 lines 1.46 kB
import { Request, Response, NextFunction } from 'express'; import { AuthService, TokenPayload, Permission } from './auth-service'; declare global { namespace Express { interface Request { user?: TokenPayload; apiKey?: string; } } } export declare class AuthMiddleware { private authService; constructor(authService?: AuthService); authenticate: (req: Request, res: Response, next: NextFunction) => Promise<void>; authenticateOptional: (req: Request, res: Response, next: NextFunction) => Promise<void>; authenticateApiKey: (req: Request, res: Response, next: NextFunction) => Promise<void>; requirePermission: (permission: Permission) => (req: Request, res: Response, next: NextFunction) => Promise<void>; requireAnyPermission: (permissions: Permission[]) => (req: Request, res: Response, next: NextFunction) => Promise<void>; requireRole: (role: "user" | "admin" | "developer") => (req: Request, res: Response, next: NextFunction) => Promise<void>; private extractToken; private extractApiKey; } export declare const createRateLimiter: (options?: { windowMs?: number; max?: number; message?: string; skipSuccessfulRequests?: boolean; }) => any; export declare const aiRateLimiter: any; export declare const authRateLimiter: any; export declare const uploadRateLimiter: any; export declare const searchRateLimiter: any; //# sourceMappingURL=middleware.d.ts.map