/** * Shared Memory Management Utilities * * Provides common memory management patterns to reduce duplication * across the qtests codebase. Centralizes garbage collection, * memory tracking, cleanup operations, and memory analysis. */ export interface MemorySnapshot { timestamp: number; heapUsed: number; heapTotal: number; rss: number; external: number; } export interface CleanupOptions { forceGC?: boolean; clearCache?: boolean; clearGlobals?: boolean; gcPasses?: number; delayBetweenPasses?: number; } export interface MemoryAnalysisOptions { sampleSize?: number; timeWindow?: number; growthThreshold?: number; correlationThreshold?: number; } /** * Get current memory snapshot */ export declare function getMemorySnapshot(): MemorySnapshot; /** * Perform garbage collection with multiple passes */ export declare function performGarbageCollection(options?: CleanupOptions): Promise; /** * Calculate memory delta between two snapshots */ export declare function calculateMemoryDelta(before: MemorySnapshot, after: MemorySnapshot): { heap: number; rss: number; external: number; timeSpan: number; }; /** * Analyze memory growth trend from snapshots */ export declare function analyzeMemoryGrowth(snapshots: MemorySnapshot[], options?: MemoryAnalysisOptions): { isLeaking: boolean; growthRate: number; consistency: number; recommendation: string; }; /** * Perform comprehensive memory cleanup */ export declare function performMemoryCleanup(options?: CleanupOptions): Promise<{ beforeSnapshot: MemorySnapshot; afterSnapshot: MemorySnapshot; delta: ReturnType; modulesCleared: number; }>; /** * Format memory snapshot for display */ export declare function formatMemorySnapshot(snapshot: MemorySnapshot, label?: string): string; /** * Format memory delta for display */ export declare function formatMemoryDelta(delta: ReturnType): string; /** * Memory monitoring utility class */ export declare class MemoryMonitor { private snapshots; private maxSnapshots; constructor(maxSnapshots?: number); /** * Take and store a memory snapshot */ takeSnapshot(label?: string): MemorySnapshot; /** * Analyze current memory state */ analyze(options?: MemoryAnalysisOptions): ReturnType; /** * Get all snapshots */ getSnapshots(): MemorySnapshot[]; /** * Clear all snapshots */ clearSnapshots(): void; /** * Print memory summary */ printSummary(): void; } //# sourceMappingURL=memoryManagement.d.ts.map