/** * Interface for package manager. */ import { IFileSystem } from "unitejs-framework/dist/interfaces/IFileSystem"; import { ILogger } from "unitejs-framework/dist/interfaces/ILogger"; import { PackageConfiguration } from "../configuration/models/packages/packageConfiguration"; import { IPipelineStep } from "./IPipelineStep"; export interface IPackageManager extends IPipelineStep { info(logger: ILogger, fileSystem: IFileSystem, packageName: string, version: string): Promise; add(logger: ILogger, fileSystem: IFileSystem, workingDirectory: string, packageName: string, version: string, isDev: boolean): Promise; remove(logger: ILogger, fileSystem: IFileSystem, workingDirectory: string, packageName: string, isDev: boolean): Promise; getInstallCommand(packageName: string, isGlobal: boolean): string; }