"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createSpecCommand = createSpecCommand;
const spec_add_1 = require("../spec-add");
const spec_archive_1 = require("../spec-archive");
const spec_create_1 = require("../spec-create");
const spec_disposition_1 = require("../spec-disposition");
const spec_list_1 = require("../spec-list");
const spec_review_1 = require("../spec-review");
const spec_search_1 = require("../spec-search");
const spec_source_1 = require("../spec-source");
const spec_update_1 = require("../spec-update");
const spec_unlink_1 = require("../spec-unlink");
const registration_1 = require("../registration");
async function createSpecCommand() {
    const { Command } = await import("commander");
    const command = new Command("spec");
    command.description("Manage the Day Shift spec registry.");
    (0, registration_1.registerCommand)(command, await (0, spec_add_1.createSpecAddCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_archive_1.createSpecArchiveCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_create_1.createSpecCreateCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_disposition_1.createSpecDispositionCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_list_1.createSpecListCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_review_1.createSpecReviewCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_search_1.createSpecSearchCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_source_1.createSpecSourceCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_unlink_1.createSpecUnlinkCommand)());
    (0, registration_1.registerCommand)(command, await (0, spec_update_1.createSpecUpdateCommand)());
    return command;
}
