import Process from "../process/process"; import CommandOptions from "../command/command-options"; import WasmTerminalConfig from "../wasm-terminal-config"; import WasmTty from "../wasm-tty/wasm-tty"; import IoDeviceWindow from "../io-device-window/io-device-window"; export default class CommandRunner { commandOptionsForProcessesToRun: Array; spawnedProcessObjects: Array; spawnedProcesses: number; pipedStdinDataForNextProcess: Uint8Array; isRunning: boolean; supportsSharedArrayBuffer: boolean; wasmTerminalConfig: WasmTerminalConfig; commandString: string; commandStartReadCallback: Function; commandEndCallback: Function; wasmTty?: WasmTty; constructor(wasmTerminalConfig: WasmTerminalConfig, commandString: string, commandStartReadCallback: Function, commandEndCallback: Function, wasmTty?: WasmTty); runCommand(): Promise; kill(): void; _addStdinToSharedStdin(data: Uint8Array, processObjectIndex: number): void; _tryToSpawnProcess(commandOptionIndex: number): Promise; _spawnProcess(commandOptionIndex: number): Promise; _spawnProcessAsWorker(commandOptionIndex: number): Promise<{ process: any; commandOptionIndex: number; ioDeviceWindow: IoDeviceWindow; worker: Worker; sharedStdin: Int32Array; }>; _spawnProcessAsService(commandOptionIndex: number): Promise<{ process: Process; commandOptionIndex: number; ioDeviceWindow: IoDeviceWindow; }>; _processDataCallback({ commandOptionIndex, sync }: { commandOptionIndex: number; sync: boolean; }, data: Uint8Array): void; _processEndCallback(endCallbackConfig: { commandOptionIndex: number; processWorker?: Worker; }, wasmFsJson: any): void; _processErrorCallback(errorCallbackConfig: { commandOptionIndex: number; }, error: string, wasmFsJson: any): void; _processStartStdinReadCallback(): void; _getBlobUrlForProcessWorker(processWorkerUrl: string, wasmTty?: WasmTty): Promise; _getCommandOptionsFromAST(ast: any, wasmTerminalConfig: WasmTerminalConfig, wasmTty?: WasmTty): Promise>; }