/** * V3 Progress Service * * Calculates accurate V3 implementation progress based on: * - CLI commands * - MCP tools * - Hooks subcommands * - Package count and DDD structure * * Can be used from CLI, MCP tools, hooks, or programmatically. * * @module @claude-flow/shared/services/v3-progress */ import { EventEmitter } from 'events'; export interface V3ProgressMetrics { overall: number; cli: { commands: number; target: number; progress: number; }; mcp: { tools: number; target: number; progress: number; }; hooks: { subcommands: number; target: number; progress: number; }; packages: { total: number; withDDD: number; target: number; progress: number; list: string[]; }; ddd: { explicit: number; utility: number; progress: number; }; codebase: { totalFiles: number; totalLines: number; }; lastUpdated: string; source: string; } export interface V3ProgressOptions { projectRoot?: string; writeToFile?: boolean; outputPath?: string; } export interface ProgressChangeEvent { previous: number; current: number; metrics: V3ProgressMetrics; } export declare class V3ProgressService extends EventEmitter { private projectRoot; private v3Path; private cliPath; private metricsPath; private lastMetrics; private updateInterval; constructor(options?: V3ProgressOptions); /** * Calculate current V3 implementation progress */ calculate(): Promise; /** * Calculate and persist metrics to file */ sync(): Promise; /** * Get last calculated metrics (without recalculating) */ getLastMetrics(): V3ProgressMetrics | null; /** * Load metrics from file */ load(): Promise; /** * Persist metrics to file */ persist(metrics: V3ProgressMetrics): Promise; /** * Start automatic progress updates */ startAutoUpdate(intervalMs?: number): void; /** * Stop automatic updates */ stopAutoUpdate(): void; /** * Get human-readable progress summary */ getSummary(): Promise; private countCliCommands; private countMcpTools; private countHooksSubcommands; private countPackages; private countCodebase; } /** * Create a new V3 Progress Service instance */ export declare function createV3ProgressService(options?: V3ProgressOptions): V3ProgressService; /** * Quick progress check - returns overall percentage */ export declare function getV3Progress(projectRoot?: string): Promise; /** * Quick progress sync - calculates and persists */ export declare function syncV3Progress(projectRoot?: string): Promise; /** * Get the default V3 Progress Service instance */ export declare function getDefaultProgressService(): V3ProgressService; export default V3ProgressService; //# sourceMappingURL=v3-progress.service.d.ts.map