openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
65 lines • 2.34 kB
TypeScript
import { z } from "zod";
import { MessagePort } from "node:worker_threads";
import { Socket } from "node:net";
import "execa";
import { Readable, Writable } from "node:stream";
//#region src/process/exec-output.d.ts
type CommandOutputCaptureMode = "head" | "tail" | "discard";
type CommandOutputStream = "stdout" | "stderr";
type CommandOutputCaptureOption = CommandOutputCaptureMode | {
stdout?: CommandOutputCaptureMode;
stderr?: CommandOutputCaptureMode;
};
type CommandOutputLimitOption = boolean | {
stdout?: boolean;
stderr?: boolean;
combined?: boolean;
};
type CommandOutputErrorOption = boolean | {
stdout?: boolean;
stderr?: boolean;
};
type PreserveOutputLine = (line: string, stream: CommandOutputStream) => boolean;
//#endregion
//#region src/process/exec-result.d.ts
type SpawnResult = {
pid?: number;
stdout: string;
stderr: string;
stdoutTruncatedBytes?: number;
stderrTruncatedBytes?: number;
preservedStdoutLines?: string[];
preservedStderrLines?: string[];
code: number | null;
signal: NodeJS.Signals | null;
killed: boolean;
/** The runner accepted cancellation and requested termination, independent of the OS signal. */
killIssuedByAbort?: boolean;
/** Completion of this invocation's cleanup; never an escaped-descendant inventory. */
cleanup?: "normal" | "cooperative" | "forced" | "uncertain";
termination: "exit" | "timeout" | "no-output-timeout" | "signal";
noOutputTimedOut?: boolean;
outputLimitExceeded?: boolean;
outputErrorStream?: "stdout" | "stderr";
};
//#endregion
//#region src/process/exec.d.ts
type RunExecOptions = {
timeoutMs?: number;
maxBuffer?: number;
logOutput?: boolean;
cwd?: string;
baseEnv?: NodeJS.ProcessEnv;
env?: NodeJS.ProcessEnv;
input?: string | Uint8Array;
stdinFileDescriptor?: number;
signal?: AbortSignal;
/** Observe received bytes without changing buffering, completion or cancellation. */
onOutputChunk?: (chunk: Buffer, stream: CommandOutputStream) => void;
};
declare function runExec(command: string, args: string[], opts?: number | RunExecOptions): Promise<{
stdout: string;
stderr: string;
}>;
//#endregion
export { CommandOutputLimitOption as a, CommandOutputErrorOption as i, SpawnResult as n, CommandOutputStream as o, CommandOutputCaptureOption as r, PreserveOutputLine as s, runExec as t };