///
import { Observable } from 'rxjs';
export * from './NodeProcess/types';
export declare type IRunOptions = {
cwd?: string;
silent?: boolean;
env?: NodeJS.ProcessEnv;
};
export declare type IResult = {
ok: boolean;
code: number;
error?: Error;
};
export declare type IResultInfo = IResult & {
info: string[];
errors: string[];
};
export declare type ITask = {
title: string;
task: () => Promise | T;
};
export declare type ICommand = {
title: string;
cmd: string;
};
export declare type ICommandInfo = {
type: 'stdout' | 'stderr';
text: string;
};
export declare type ICommandPromise = Promise & IResultInfo & {
isComplete: boolean;
complete$: Observable<{}>;
output$: Observable;
stdout$: Observable;
stderr$: Observable;
stdout: string[];
stderr: string[];
cwd: string;
kill(): void;
};
export declare type ILog = {
info: LogValue;
warn: LogValue;
error: LogValue;
};
export declare type LogValue = (...value: any) => void;
export declare type ICommandListExecutionResponse = IResult & {
ok: boolean;
results: IListCommandResult[];
errors: ICommandErrors;
cwd: string;
};
export declare type IListCommandResult = {
ok: boolean;
index: number;
cmd: string;
data: IResultInfo;
stdout: string[];
stderr: string[];
};
export declare type ICommandErrors = ICommandError[] & {
log: (args: {
log?: ILog | null;
index?: number | number[];
header?: boolean;
}) => string;
};
export declare type ICommandError = {
index: number;
cmd: string;
errors: string[];
};