"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.PlanCommand = void 0;
const chalk_1 = __importDefault(require("chalk"));
const index_1 = require("../planner/index");
class PlanCommand {
    register(program) {
        program
            .command("plan:feature [featureRequest]")
            .alias("pf")
            .description("Start Planner interactive mode to produce a verified FSR manifest.")
            .option("--feature <name>", "Initial feature to plan")
            .option("--interactive", "Use interactive mode to resolve missing FSR fields", false)
            .action(async (featureRequest, options) => {
            try {
                const planner = new index_1.Planner();
                await planner.run({
                    initialRequest: featureRequest || options.feature,
                    interactive: options.interactive
                });
            }
            catch (error) {
                console.error(chalk_1.default.red("❌ Planner failed:"), error);
                process.exit(1);
            }
        });
    }
}
exports.PlanCommand = PlanCommand;
//# sourceMappingURL=plan.js.map