aicf-core
Version:
Universal AI Context Format (AICF) - Enterprise-grade AI memory infrastructure with 95.5% compression and zero semantic loss
73 lines • 2.48 kB
TypeScript
/**
* SPDX-License-Identifier: AGPL-3.0-or-later
* Copyright (c) 2025 Dennis van Leeuwen
*
* AICF Security Fixes Implementation
* Addresses critical vulnerabilities identified in the security analysis
*/
export interface RedactionResult {
text: string;
redactions: Array<{
type: string;
count: number;
}>;
originalLength: number;
redactedLength: number;
}
export interface SecurityConfig {
maxFileSize?: number;
maxMemoryUsage?: number;
enablePIIRedaction?: boolean;
enablePathValidation?: boolean;
enableRateLimit?: boolean;
rateLimitOperations?: number;
rateLimitWindow?: number;
allowedExtensions?: string[];
maxStringLength?: number;
maxObjectSize?: number;
}
/**
* Path validation to prevent directory traversal attacks
*/
export declare function validatePath(inputPath: string, projectRoot?: string): string;
/**
* Sanitize pipe-delimited data to prevent injection attacks
*/
export declare function sanitizePipeData(input: unknown): string;
/**
* PII detection and redaction
*/
export declare function redactPII(text: string): RedactionResult;
/**
* Validate conversation data structure
*/
export declare function validateConversationData(data: Record<string, unknown>): boolean;
/**
* Safe atomic file operations with proper locking
*/
export declare function atomicFileOperation<T>(filePath: string, operation: (tempFile: string) => Promise<T>): Promise<T>;
/**
* Memory-efficient file reading for large files
*/
export declare function readFileStream<T>(filePath: string, callback: (line: string, lineNumber: number) => T | null): Promise<T[]>;
/**
* Rate limiting for write operations
*/
export declare function createRateLimiter<T>(maxOperations?: number, windowMs?: number): (operation: () => T) => T;
/**
* Checksum validation for data integrity
*/
export declare function calculateChecksum(data: unknown): string;
export declare function verifyChecksum(data: unknown, expectedChecksum: string): boolean;
/**
* Secure configuration validation
*/
export declare function validateConfig(config: Partial<SecurityConfig>): SecurityConfig;
/**
* Additional utility methods for compatibility with existing code
*/
export declare function sanitizeString(input: unknown): string;
export declare function sanitizeTimestamp(input: unknown): string;
export declare function sanitizeNumber(input: unknown): number;
//# sourceMappingURL=security-fixes.d.ts.map