@qodalis/angular-cli
Version:
A lightweight and flexible command-line interface (CLI) tool designed to streamline workflows and automate tasks for developers.
43 lines (42 loc) • 1.86 kB
TypeScript
import { Terminal } from '@xterm/xterm';
import { Subject } from 'rxjs';
import { ICliExecutionContext, ICliTerminalWriter, ICliUserSession, CliOptions, ICliSpinner, ICliPercentageProgressBar, ICliClipboard, ICliExecutionProcess, ICliCommandProcessor, ICliLogger, ICliServiceProvider, ICliStateStore, ICliTextAnimator } from '@qodalis/cli-core';
import { CliCommandExecutorService } from '../services/cli-command-executor.service';
import { Injector } from '@angular/core';
export declare class CliExecutionContext implements ICliExecutionContext {
terminal: Terminal;
executor: CliCommandExecutorService;
showPrompt: (options?: {
reset?: boolean;
newLine?: boolean;
}) => void;
userSession?: ICliUserSession;
contextProcessor?: ICliCommandProcessor;
readonly writer: ICliTerminalWriter;
readonly spinner: ICliSpinner;
readonly textAnimator: ICliTextAnimator;
readonly progressBar: ICliPercentageProgressBar;
readonly options?: CliOptions;
readonly onAbort: Subject<void>;
readonly state: ICliStateStore;
readonly clipboard: ICliClipboard;
readonly process: ICliExecutionProcess;
readonly logger: ICliLogger;
readonly services: ICliServiceProvider;
constructor(injector: Injector, terminal: Terminal, executor: CliCommandExecutorService, showPrompt: (options?: {
reset?: boolean;
newLine?: boolean;
}) => void, cliOptions?: CliOptions);
setContextProcessor(processor: ICliCommandProcessor | undefined, silent?: boolean): void;
/**
* Checks if there is a progress running
* @returns true if there is a progress running
* @returns false if there is no progress running
*/
isProgressRunning(): boolean;
/**
* Aborts the current command
*/
abort(): void;
setSession(session: ICliUserSession): void;
}