/**
 * Three File Structure Validator
 *
 * Validates that spec.md, plan.md, and tasks.md follow
 * the canonical structure defined in ADR-0047.
 *
 * Part of increment 0039: Ultra-Smart Next Command
 * Addresses architectural violation: ACs in tasks.md
 */
/**
 * Validation severity levels
 */
export declare enum ValidationSeverity {
    ERROR = "ERROR",// Breaks architecture, must fix
    WARNING = "WARNING",// Suboptimal but acceptable
    INFO = "INFO"
}
/**
 * Validation error codes
 */
export declare enum ValidationErrorCode {
    TASKS_CONTAINS_AC = "TASKS_CONTAINS_AC",
    TASKS_MISSING_IMPLEMENTATION = "TASKS_MISSING_IMPLEMENTATION",
    TASKS_MISSING_TEST_PLAN = "TASKS_MISSING_TEST_PLAN",
    TASKS_MISSING_AC_IDS = "TASKS_MISSING_AC_IDS",
    TASKS_CONTAINS_USER_STORY = "TASKS_CONTAINS_USER_STORY",
    SPEC_CONTAINS_TASK_IDS = "SPEC_CONTAINS_TASK_IDS",
    SPEC_CONTAINS_TECHNICAL_DETAILS = "SPEC_CONTAINS_TECHNICAL_DETAILS",
    SPEC_MISSING_AC = "SPEC_MISSING_AC",
    SPEC_MISSING_PROJECT = "SPEC_MISSING_PROJECT",
    PLAN_CONTAINS_AC = "PLAN_CONTAINS_AC",
    PLAN_CONTAINS_TASK_CHECKBOXES = "PLAN_CONTAINS_TASK_CHECKBOXES",
    METADATA_MISSING_PROJECT = "METADATA_MISSING_PROJECT",
    METADATA_UNKNOWN_PROJECT = "METADATA_UNKNOWN_PROJECT",
    FILE_NOT_FOUND = "FILE_NOT_FOUND"
}
/**
 * Validation issue
 */
export interface ValidationIssue {
    code: ValidationErrorCode;
    severity: ValidationSeverity;
    file: 'spec.md' | 'plan.md' | 'tasks.md' | 'metadata.json';
    line?: number;
    message: string;
    fix?: string;
}
/**
 * Validation result
 */
export interface ThreeFileValidationResult {
    valid: boolean;
    issues: ValidationIssue[];
    summary: {
        errors: number;
        warnings: number;
        infos: number;
    };
}
/**
 * Three File Structure Validator
 */
export declare class ThreeFileValidator {
    /**
     * Validate an increment's three core files
     *
     * @param incrementDir - Path to increment directory
     * @param projectRoot - Optional project root for config-based validation
     */
    validateIncrement(incrementDir: string, projectRoot?: string): ThreeFileValidationResult;
    /**
     * Validate spec.md structure
     */
    private validateSpecFile;
    /**
     * Validate plan.md structure
     */
    private validatePlanFile;
    /**
     * Validate tasks.md structure (MOST IMPORTANT)
     */
    private validateTasksFile;
    /**
     * Validate metadata.json project field for sync routing
     */
    private validateMetadataProject;
    /**
     * Generate a formatted report of validation issues
     */
    formatValidationReport(result: ThreeFileValidationResult): string;
}
//# sourceMappingURL=three-file-validator.d.ts.map