@theia/process
Version:
Theia process support.
45 lines • 1.75 kB
TypeScript
import { ProcessManager } from './process-manager';
import { ILogger } from '@theia/core/lib/common';
import { Process, ProcessOptions, ForkOptions } from './process';
import { ChildProcess } from 'child_process';
import * as stream from 'stream';
export { DevNullStream } from './dev-null-stream';
export declare const RawProcessOptions: unique symbol;
/**
* Options to spawn a new process (`spawn`).
*
* For more information please refer to the spawn function of Node's
* child_process module:
*
* https://nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options
*/
export interface RawProcessOptions extends ProcessOptions {
}
/**
* Options to fork a new process using the current Node interpreter (`fork`).
*
* For more information please refer to the fork function of Node's
* `child_process` module:
*
* https://nodejs.org/api/child_process.html#child_process_child_process_fork_modulepath_args_options
*/
export interface RawForkOptions extends ForkOptions {
}
export declare const RawProcessFactory: unique symbol;
export interface RawProcessFactory {
(options: RawProcessOptions | RawForkOptions): RawProcess;
}
export declare class RawProcess extends Process {
/**
* If the process fails to launch, it will be undefined.
*/
readonly process: ChildProcess | undefined;
readonly outputStream: stream.Readable;
readonly errorStream: stream.Readable;
readonly inputStream: stream.Writable;
constructor(// eslint-disable-next-line @typescript-eslint/indent
options: RawProcessOptions | RawForkOptions, processManager: ProcessManager, logger: ILogger);
get pid(): number;
kill(signal?: string): void;
}
//# sourceMappingURL=raw-process.d.ts.map