import { ADDITIONAL_SUB_GENERATORS, CLI_OPTION, DYNAMIC, GENERATE_SNAPSHOTS, JS, LINK_JHIPSTER_DEPENDENCY, LOCAL_BLUEPRINT_OPTION, SUB_GENERATORS, } from "./constants.js";
const command = {
    configs: {
        javascriptBlueprint: {
            description: 'Generate a javascript blueprint',
            cli: {
                type: Boolean,
            },
            scope: 'storage',
        },
        caret: {
            cli: {
                description: 'Use caret in package.json engines',
                type: Boolean,
            },
            scope: 'storage',
        },
        defaults: {
            cli: {
                description: 'Use default values for the generator',
                type: Boolean,
            },
            scope: 'none',
        },
        gitDependency: {
            cli: {
                description: 'Use git dependency (eg: github:jhipster/generator-jhipster#main)',
                type: String,
            },
            scope: 'context',
        },
        cliName: {
            cli: {
                description: 'CLI name',
                type: String,
            },
            scope: 'storage',
        },
        skipWorkflows: {
            description: 'Skip github workflows',
            cli: {
                type: Boolean,
            },
            scope: 'context',
        },
        ignoreExistingGenerators: {
            description: 'Ignore existing generators',
            cli: {
                type: Boolean,
            },
            scope: 'context',
        },
        githubRepository: {
            cli: {
                description: 'Github Repository',
                type: String,
            },
            scope: 'storage',
        },
        githubWorkflows: {
            cli: {
                description: 'Generate github workflows',
                type: Boolean,
            },
            scope: 'storage',
        },
        [GENERATE_SNAPSHOTS]: {
            description: 'Generate test snapshots',
            cli: {
                type: Boolean,
            },
            scope: 'none',
        },
        [LINK_JHIPSTER_DEPENDENCY]: {
            description: 'Link JHipster dependency for testing',
            cli: {
                type: Boolean,
                hide: true,
            },
            scope: 'none',
        },
        [SUB_GENERATORS]: {
            description: 'Sub generators to generate',
            cli: {
                type: Array,
            },
            scope: 'storage',
        },
        [ADDITIONAL_SUB_GENERATORS]: {
            description: 'Comma separated additional sub generators to generate',
            cli: {
                type: String,
            },
            scope: 'storage',
        },
        [DYNAMIC]: {
            description: 'Generate dynamic generators (advanced)',
            cli: {
                type: Boolean,
            },
            scope: 'storage',
        },
        [JS]: {
            description: 'Use js extension',
            cli: {
                type: Boolean,
            },
            scope: 'storage',
        },
        [LOCAL_BLUEPRINT_OPTION]: {
            description: 'Generate a local blueprint',
            cli: {
                type: Boolean,
            },
            scope: 'storage',
        },
        [CLI_OPTION]: {
            description: 'Generate a cli for the blueprint',
            cli: {
                type: Boolean,
            },
            scope: 'storage',
        },
        allGenerators: {
            description: 'Generate every sub generator',
            cli: {
                type: Boolean,
            },
            scope: 'generator',
        },
        allPriorities: {
            description: 'Generate every priority',
            cli: {
                type: Boolean,
            },
            scope: 'none',
        },
        sampleWritten: {
            description: 'Sample has been written',
            cli: {
                type: Boolean,
                hide: true,
            },
            scope: 'storage',
        },
    },
    import: ['init', 'jhipster:generate-blueprint:standalone'],
};
export default command;
