UNPKG

@elsikora/setup-wizard

Version:

Setup Wizard - CLI scaffolding utility

34 lines (33 loc) 1.81 kB
import type { ICliInterfaceService } from "../../application/interface/cli-interface-service.interface"; import type { IConfigService } from "../../application/interface/config-service.interface"; import type { IFileSystemService } from "../../application/interface/file-system-service.interface"; import type { ICommand } from "../interface/command.interface"; import type { TInitCommandProperties } from "../type/init-command-properties.type"; /** * Command responsible for initializing and installing selected modules. * Implements the ICommand interface to provide standard command execution. */ export declare class InitCommand implements ICommand { /** CLI interface service for user interaction */ readonly CLI_INTERFACE_SERVICE: ICliInterfaceService; /** Configuration service for reading and writing config */ readonly CONFIG_SERVICE: IConfigService; /** File system service for file operations */ readonly FILE_SYSTEM_SERVICE: IFileSystemService; /** Properties defining which modules to install */ readonly PROPERTIES: TInitCommandProperties; /** * Initializes a new instance of the InitCommand. * @param properties - Properties defining which modules to install * @param cliInterfaceService - Service for CLI user interactions * @param fileSystemService - Service for file system operations */ constructor(properties: TInitCommandProperties, cliInterfaceService: ICliInterfaceService, fileSystemService: IFileSystemService); /** * Executes the initialization command. * Reads existing configuration if available, determines which modules to install, * installs selected modules, and updates the configuration. * @returns Promise that resolves when execution is complete */ execute(): Promise<void>; }