export interface TimingResult { name: string; durationMs: number; result: unknown; } export interface MemorySnapshot { heapUsedMB: number; heapTotalMB: number; externalMB: number; rssMB: number; timestamp: string; } export interface DebugLogEntry { level: 'debug' | 'info' | 'warn' | 'error'; message: string; data?: unknown; timestamp: string; } export declare function enableDebug(enabled?: boolean): void; export declare function isDebugEnabled(): boolean; export declare function debugLog(message: string, data?: unknown): void; export declare function getDebugLog(limit?: number): DebugLogEntry[]; export declare function clearDebugLog(): void; export declare function timeAsync(name: string, fn: () => Promise): Promise; export declare function time(name: string, fn: () => T): TimingResult & { result: T; }; export declare function memorySnapshot(): MemorySnapshot; export declare function formatMemorySnapshot(snap: MemorySnapshot): string; export declare function prettyJson(obj: unknown, indent?: number): string; export declare function truncate(str: string, maxLen?: number): string; export declare function assertDefined(val: T | null | undefined, label: string): T; //# sourceMappingURL=debug-helpers.d.ts.map