/**
 * Plan Validator
 *
 * Validates pre-conditions before generating plan.md and tasks.md:
 * - spec.md exists and is not empty
 * - Increment is in suitable state
 * - plan.md/tasks.md don't exist (unless force=true)
 *
 * Part of increment 0039: Ultra-Smart Next Command
 */
import { PlanValidationResult, PlanCommandConfig } from './types.js';
export declare class PlanValidator {
    private projectRoot;
    constructor(projectRoot?: string);
    /**
     * Validate increment is ready for planning
     */
    validate(incrementId: string, config: PlanCommandConfig): Promise<PlanValidationResult>;
    /**
     * Check if spec.md has Acceptance Criteria section
     */
    private hasAcceptanceCriteria;
    /**
     * Read spec.md content
     */
    readSpec(incrementId: string): Promise<string>;
    /**
     * Read existing plan.md content (if exists)
     */
    readExistingPlan(incrementId: string): Promise<string | undefined>;
    /**
     * Read existing tasks.md content (if exists)
     */
    readExistingTasks(incrementId: string): Promise<string | undefined>;
}
//# sourceMappingURL=plan-validator.d.ts.map