@elsikora/setup-wizard
Version:
Setup Wizard - CLI scaffolding utility
22 lines (21 loc) • 1.02 kB
TypeScript
import type { ICliInterfaceService } from "../../application/interface/cli-interface-service.interface";
import type { IFileSystemService } from "../../application/interface/file-system-service.interface";
import type { ECommand } from "../enum/command.enum";
import type { ICommand } from "./command.interface";
/**
* Interface for the command factory that creates command instances.
* Provides a factory pattern implementation for creating command objects.
*/
export interface ICommandFactory {
/** CLI interface service for user interaction */
CLI_INTERFACE_SERVICE: ICliInterfaceService;
/**
* Creates a command instance of the specified type.
* @param name - The enum value representing the command to create
* @param options - Command-specific options and arguments
* @returns An instance of the specified command
*/
createCommand(name: ECommand, options: any): ICommand;
/** File system service for file operations */
FILE_SYSTEM_SERVICE: IFileSystemService;
}