import { SecurityConfig } from './types'; import { SecurityHeadersMiddleware } from './headers-middleware'; import { CSRFMiddleware } from './csrf-middleware'; import { SanitizationMiddleware } from './sanitization-middleware'; import { HttpContext, HttpRequest, HttpResponse } from '../types'; export declare class SecurityMiddleware { private config; private headersMiddleware; private csrfMiddleware; private sanitizationMiddleware; constructor(config?: SecurityConfig); middleware(): (req: Req, res: Res, next: () => void) => void; process(context: HttpContext): void; private addSecurityContext; getHeadersMiddleware(): SecurityHeadersMiddleware; getCSRFMiddleware(): CSRFMiddleware; getSanitizationMiddleware(): SanitizationMiddleware; getSecurityViolations(): import("./types").SecurityViolation[]; getSecurityStats(): { violations: { total: number; byType: Record; bySeverity: Record; }; config: SecurityConfig; }; updateConfig(newConfig: Partial): void; getConfig(): SecurityConfig; clearViolations(): void; } export declare function createSecurityMiddleware(config?: SecurityConfig): SecurityMiddleware; export declare function createSecurityEndpoints(securityMiddleware: SecurityMiddleware): { csrfToken: (req: HttpRequest, res: HttpResponse) => void; violations: (req: HttpRequest, res: HttpResponse) => void; status: (req: HttpRequest, res: HttpResponse) => void; }; export declare function createExpressSecurityEndpoints(securityMiddleware: SecurityMiddleware): { csrfToken: (req: any, res: any) => void; violations: (req: any, res: any) => void; status: (req: any, res: any) => void; };