import ora from 'ora'; import Install from '~/install'; import Report from '~/report'; import { HashMap } from '~/types'; import { LoadedConfig, LoadedDependency } from '~/config'; export default class Workbelt { options: WorkbeltOptions; config: LoadedConfig; report: Report; spinner: ora.Ora; started: Date; private _dependencies?; constructor(options?: Partial); get dependencies(): LoadedDependency[]; install(): Promise; createReport(results: Install[], openFormat?: ReportFormat): Promise; } export interface WorkbeltOptions { autoinstall?: boolean; config?: LoadedConfig; configPath: string; cwd: string; open?: OpenMode; report?: boolean; } export interface Pkg extends HashMap { description: string; name: string; version: string; } export declare enum ReportFormat { Md = "md", Pdf = "pdf" } export interface ResultsMap { alreadyInstalled: Install[]; failed: Install[]; installed: Install[]; notInstalled: Install[]; } export declare enum OpenMode { All = "all", Marked = "marked", None = "none" }