/** * Security configuration and constants for MCP WordPress */ export declare const SecurityConfig: { rateLimiting: { default: { windowMs: number; maxRequests: number; }; authentication: { windowMs: number; maxAttempts: number; }; upload: { windowMs: number; maxRequests: number; }; }; fileUpload: { maxSizeMB: number; allowedMimeTypes: string[]; blockedExtensions: string[]; }; validation: { maxStringLength: number; maxTitleLength: number; maxContentLength: number; maxExcerptLength: number; maxUrlLength: number; maxUsernameLength: number; minUsernameLength: number; maxPasswordLength: number; minPasswordLength: number; }; timeouts: { default: number; upload: number; auth: number; }; headers: { "X-Content-Type-Options": string; "X-Frame-Options": string; "X-XSS-Protection": string; "Strict-Transport-Security": string; "Content-Security-Policy": string; }; errorMessages: { authentication: string; authorization: string; validation: string; rateLimit: string; serverError: string; notFound: string; }; logging: { excludeFields: string[]; redactPatterns: RegExp[]; }; cache: { enabled: boolean; maxSize: number; defaultTTL: number; enableLRU: boolean; enableStats: boolean; ttlPresets: { static: number; semiStatic: number; dynamic: number; session: number; realtime: number; }; cacheHeaders: { static: string; semiStatic: string; dynamic: string; session: string; realtime: string; }; invalidation: { enabled: boolean; batchSize: number; queueTimeout: number; enableCascading: boolean; }; cleanup: { interval: number; maxMemoryMB: number; evictionThreshold: number; }; }; }; /** * Security utility functions */ export declare class SecurityUtils { /** * Redact sensitive information from objects */ static redactSensitiveData(obj: unknown): unknown; /** * Redact sensitive patterns from strings */ static redactString(str: string): string; /** * Generate secure random strings */ static generateSecureToken(length?: number): string; /** * Check if a file extension is allowed */ static isFileExtensionAllowed(filename: string): boolean; /** * Sanitize log output */ static sanitizeForLog(data: unknown): unknown; } /** * Secure error handler that prevents information disclosure */ export declare function createSecureError(error: unknown, fallbackMessage?: string): Error; /** * Environment-specific security settings */ export declare function getEnvironmentSecurity(): { strictMode: boolean; verboseErrors: boolean; enforceHttps: boolean; }; //# sourceMappingURL=SecurityConfig.d.ts.map