js-memory-leak-detector
Version:
A comprehensive memory leak detector for web applications with Redux Toolkit support
44 lines • 1.26 kB
TypeScript
export interface MemoryLeakReport {
timestamp: number;
heapUsed: number;
heapTotal: number;
external: number;
arrayBuffers: number;
leakSuspects: LeakSuspect[];
recommendations: string[];
}
export interface LeakSuspect {
type: 'event-listener' | 'timer' | 'dom-reference' | 'closure' | 'detached-dom' | 'redux-subscription' | 'redux-selector';
severity: 'low' | 'medium' | 'high' | 'critical';
description: string;
stackTrace?: string;
element?: string;
count?: number;
}
export interface DetectorConfig {
enableEventListenerTracking?: boolean;
enableTimerTracking?: boolean;
enableDOMTracking?: boolean;
enableReduxTracking?: boolean;
enablePerformanceObserver?: boolean;
reportInterval?: number;
memoryThreshold?: number;
onReport?: (report: MemoryLeakReport) => void;
onLeak?: (suspect: LeakSuspect) => void;
}
export interface MemorySnapshot {
timestamp: number;
memory: {
heapUsed: number;
heapTotal: number;
external: number;
arrayBuffers: number;
};
counts: {
eventListeners: number;
timers: number;
domNodes: number;
detachedNodes: number;
};
}
//# sourceMappingURL=types.d.ts.map