import { Subject } from 'rxjs'; import { PowerShellStreams } from './process'; import { Format } from './wrapper'; export { PowerShellStreams } from './process'; declare class SubjectWithPromise extends Subject { promise(): Promise; } interface PowerShellOptions { tmp_dir?: string; exe_path?: string; timeout?: number; verbose?: boolean; debug?: boolean; } export declare class PowerShell { success$: Subject; error$: Subject; warning$: Subject; verbose$: Subject; debug$: Subject; info$: Subject; private powershell; private out$; private out_verbose; private out_debug; private queue; private command; private tick$; private running; private closing; private closed$; private restarting; private restarted$; private tmp_dir; private exe_path; private timeout; private verbose; private debug; constructor(options?: PowerShellOptions); private info; private error; private setOptions; get pid(): number; get isBusy(): boolean; private init; private unsubscribe; private closeEventHandler; private listen; call(command: string, format?: Format): SubjectWithPromise; private removeTempFile; destroy(): SubjectWithPromise; private kill; }