/** * Performance Monitoring Utilities * Provides timing and metrics for CLI commands */ interface PerformanceMetrics { commandName: string; startTime: number; endTime?: number; duration?: number; memoryUsage?: NodeJS.MemoryUsage; success: boolean; errorMessage?: string; } declare class PerformanceMonitor { private metrics; /** * Start timing a command */ startCommand(commandName: string): string; /** * End timing a command */ endCommand(id: string, success?: boolean, errorMessage?: string): PerformanceMetrics | null; /** * Get metrics for a command */ getMetrics(id: string): PerformanceMetrics | null; /** * Get all metrics */ getAllMetrics(): PerformanceMetrics[]; /** * Generate performance report */ generateReport(): string; /** * Format duration in human-readable format */ private formatDuration; /** * Format memory in human-readable format */ private formatMemory; /** * Clear all metrics */ clear(): void; } export declare const performanceMonitor: PerformanceMonitor; /** * Decorator for measuring command performance */ export declare function measurePerformance(commandName: string): Promise>(target: any, propertyName: string, descriptor: TypedPropertyDescriptor) => TypedPropertyDescriptor; /** * Simple function wrapper for performance measurement */ export declare function withPerformanceTracking(commandName: string, fn: () => Promise): Promise; export type { PerformanceMetrics }; //# sourceMappingURL=performance.d.ts.map