import { type CommandOptions } from '../types/ace.ts'; import { BaseCommand } from '../modules/ace/main.ts'; import { type SupportedPackageManager } from '@adonisjs/assembler/types'; /** * The install command is used to `npm install` and `node ace configure` one or more packages * in one go. * * @example * ``` * ace add @adonisjs/lucid * ace add @adonisjs/lucid @adonisjs/auth @adonisjs/session * ace add @adonisjs/session --dev * ace add vinejs --force * ace add edge --package-manager=pnpm * ``` */ export default class Add extends BaseCommand { #private; /** * The command name */ static commandName: string; /** * The command description */ static description: string; static help: string[]; /** * Command options configuration */ static options: CommandOptions; /** * Package names to install and configure */ names: string[]; /** * Display logs in verbose mode */ verbose?: boolean; /** * Define the package manager you want to use */ packageManager?: SupportedPackageManager; /** * Should we install the package as a dev dependency */ dev?: boolean; /** * Forcefully overwrite existing files */ force?: boolean; /** * Run method is invoked by ace automatically */ run(): Promise; }