quicksilver-cli
Version:
Cli tool for Quicksilver
34 lines (33 loc) • 1.11 kB
TypeScript
import { Logger } from "log4js";
import { Arguments } from "../parser/arguments";
import { Field } from "./field/field";
export interface CommandConstructor {
new (workspace: string, args: string[]): Command;
}
export declare abstract class Command {
readonly topCommand: string;
readonly cacheKeyWorkspace: string;
params: string[];
help: boolean;
supportCache: boolean;
workspace: string;
rootProjectName: string;
args?: Arguments;
logger?: Logger;
protected constructor(workspace: string, params: string[]);
init(): Promise<void>;
afterParse(): Promise<void>;
initLogger(): Promise<void>;
putToCache(): Promise<void>;
parseParams(): Promise<void>;
validate(): Promise<void>;
abstract run(): Promise<void>;
handle(): Promise<void>;
getHelpMessage(): Promise<string[]>;
printHelp(): Promise<void>;
readonly name: string;
readonly fields: Field[];
readonly description: string;
readonly alias: string[];
static getCommandConstructor(commandName: string): CommandConstructor;
}