import { AtomicTask } from '../types/task.js'; export interface SanitizationResult { success: boolean; sanitizedData?: T; originalData: T; violations: SanitizationViolation[]; sanitizationTime: number; } export interface SanitizationViolation { field: string; violationType: 'xss' | 'injection' | 'malformed' | 'length' | 'pattern' | 'encoding'; originalValue: unknown; sanitizedValue?: unknown; severity: 'low' | 'medium' | 'high' | 'critical'; description: string; } export interface SanitizationConfig { enableXssProtection: boolean; enableCommandInjectionProtection: boolean; enableSqlInjectionProtection: boolean; maxStringLength: number; maxArrayLength: number; maxObjectDepth: number; allowedHtmlTags: string[]; allowedProtocols: string[]; strictMode: boolean; logViolations: boolean; } export declare class DataSanitizer { private static instance; private config; private violations; private readonly XSS_PATTERNS; private readonly COMMAND_INJECTION_PATTERNS; private readonly DEVELOPMENT_WHITELIST; private readonly SQL_INJECTION_PATTERNS; private readonly ENCODING_PATTERNS; private constructor(); static getInstance(config?: Partial): DataSanitizer; sanitizeTask(task: AtomicTask): Promise>; private isSystemIdentifier; private sanitizeString; private isWhitelistedContent; private sanitizeFilePath; private sanitizeArray; private sanitizeObject; private removeXssPatterns; private removeCommandInjectionPatterns; private removeSqlInjectionPatterns; private detectEncodingAttacks; sanitizeInput(input: T, fieldName?: string): Promise>; getSanitizationStatistics(): { totalViolations: number; violationsByType: Record; violationsBySeverity: Record; recentViolations: SanitizationViolation[]; }; updateConfig(config: Partial): void; clearViolationHistory(): void; shutdown(): void; } export declare function sanitizeTask(task: AtomicTask): Promise>; export declare function sanitizeInput(input: T, fieldName?: string): Promise>; export declare function getDataSanitizer(): DataSanitizer; //# sourceMappingURL=data-sanitizer.d.ts.map