/**
 * Increment Status Detection
 *
 * Utility to detect increment completion status and enforce increment discipline.
 *
 * **The Iron Rule**: Cannot start increment N+1 until increment N is DONE.
 *
 * DONE means one of:
 * 1. All tasks in tasks.md marked [x] Completed
 * 2. COMPLETION-SUMMARY.md exists with "COMPLETE" status
 * 3. All tasks removed/moved with documentation
 */
export interface PendingTask {
    id: string;
    title: string;
    priority?: string;
    phase?: string;
}
export interface IncrementStatus {
    id: string;
    path: string;
    exists: boolean;
    isComplete: boolean;
    totalTasks: number;
    completedTasks: number;
    percentComplete: number;
    pendingTasks: PendingTask[];
    completionReports: string[];
    hasCompletionMarker: boolean;
    reason?: string;
}
export declare class IncrementStatusDetector {
    private incrementsPath;
    constructor(projectPath?: string);
    /**
     * Get status for a specific increment
     */
    getStatus(incrementId: string): Promise<IncrementStatus>;
    /**
     * Get all incomplete increments
     */
    getAllIncomplete(): Promise<IncrementStatus[]>;
    /**
     * Get latest increment ID
     */
    getLatest(): Promise<string | null>;
    /**
     * Check if increment is complete
     */
    isComplete(incrementId: string): Promise<boolean>;
    /**
     * Find completion reports (COMPLETION-SUMMARY.md, etc.)
     */
    private findCompletionReports;
    /**
     * Parse tasks.md to extract task statistics
     */
    private parseTasksFile;
}
/**
 * Convenience function to check if an increment is complete
 */
export declare function isIncrementComplete(incrementId: string, projectPath?: string): Promise<boolean>;
/**
 * Convenience function to get all incomplete increments
 */
export declare function getAllIncompleteIncrements(projectPath?: string): Promise<IncrementStatus[]>;
/**
 * Convenience function to get latest increment
 */
export declare function getLatestIncrement(projectPath?: string): Promise<string | null>;
//# sourceMappingURL=increment-status.d.ts.map