import { Stream } from '@facetlayer/streams'; import { SpawnOptions } from 'child_process'; export type ProcessEvent = StdoutEvent | StdoutClosedEvent | StderrEvent | SpawnEvent | SpawnErrorEvent | ExitEvent; export declare enum ProcessEventType { stdout = 1, stderr = 2, spawn = 3, spawn_error = 4, stdout_closed = 5, exit = 6 } export interface StdoutEvent { type: ProcessEventType.stdout; line: string; } export interface StdoutClosedEvent { type: ProcessEventType.stdout_closed; } export interface StderrEvent { type: ProcessEventType.stderr; line: string; } export interface SpawnEvent { type: ProcessEventType.spawn; } export interface SpawnErrorEvent { type: ProcessEventType.spawn_error; error: Error; } export interface ExitEvent { type: ProcessEventType.exit; code: number; } export interface SpawnOutput { output: Stream; proc: any; } export declare function spawnProcess(command: string, args?: string[], options?: SpawnOptions): SpawnOutput;