/**
 * User Story Progress Tracking
 *
 * Calculates task completion statistics grouped by User Story.
 * Provides per-US and aggregate completion percentages.
 */
import { type Task, type TasksByUserStory } from '../generators/spec/task-parser.js';
/**
 * Progress statistics for a single User Story
 */
export interface USProgress {
    usId: string;
    totalTasks: number;
    completedTasks: number;
    inProgressTasks: number;
    pendingTasks: number;
    percentage: number;
    tasks: Task[];
}
/**
 * Aggregate progress across all User Stories
 */
export interface AggregateProgress {
    totalTasks: number;
    completedTasks: number;
    inProgressTasks: number;
    pendingTasks: number;
    percentage: number;
    byUserStory: Map<string, USProgress>;
    orphanTasks: Task[];
}
/**
 * Calculate task completion statistics for a single User Story
 */
export declare function calculateUSProgress(usId: string, tasks: Task[]): USProgress;
/**
 * Calculate aggregate progress across all User Stories
 */
export declare function calculateAggregateProgress(tasksByUS: TasksByUserStory): AggregateProgress;
/**
 * Calculate progress from tasks.md file
 */
export declare function calculateProgressFromTasksFile(tasksPath: string): Promise<AggregateProgress>;
/**
 * Format US progress as string
 */
export declare function formatUSProgress(progress: USProgress, includePercentage?: boolean): string;
/**
 * Format aggregate progress as string
 */
export declare function formatAggregateProgress(progress: AggregateProgress): string;
/**
 * Get progress bar visualization
 */
export declare function getProgressBar(percentage: number, width?: number): string;
/**
 * Get color indicator based on percentage
 */
export declare function getProgressColor(percentage: number): 'green' | 'yellow' | 'red';
/**
 * Sort User Stories by completion percentage (descending)
 */
export declare function sortUSByCompletion(progressMap: Map<string, USProgress>): USProgress[];
/**
 * Sort User Stories by US-ID (ascending)
 */
export declare function sortUSByID(progressMap: Map<string, USProgress>): USProgress[];
//# sourceMappingURL=us-progress-tracker.d.ts.map