UNPKG

@struktoai/mirage-core

Version:

A Unified Virtual Filesystem For AI Agents

20 lines • 1.26 kB
import type { Runtime } from '../../../runtime/base.ts'; import type { ByteSource, IOResult } from '../../../io/types.ts'; import type { RouteDecision } from '../../../runtime/types.ts'; import type { Argv } from '../../expand/argv.ts'; import type { MountRegistry } from '../../mount/registry.ts'; import type { SessionState } from '../../session/session.ts'; import { ExecutionNode } from '../../types.ts'; import { type JobConsole } from '../../../shell/console/index.ts'; /** * Execute one admitted program; its surrounding shell stays in Mirage. * * Its output is handed over as it runs (`runOutput`), within the line's * deadline, kept alive until the output is closed. A program writes its * stderr into `sink` as it arrives, where the statement it runs in writes (a * job's console, a redirect, a compound body), so it lands beside its stdout * and stays when the program is stopped; without one it lands on the result, * kept as it arrives all the same. */ export declare function runExternal(argv: Argv, stdin: ByteSource | null, session: SessionState, registry: MountRegistry, routing: RouteDecision<Runtime>, signal?: AbortSignal, sink?: JobConsole): Promise<[ByteSource | null, IOResult, ExecutionNode]>; //# sourceMappingURL=external.d.ts.map