import type { RunExecutionConfig, RunExecutionInfo, RunExecutor } from "./types.js"; /** * Process run executor configuration */ export interface ProcessRunExecutorConfig { /** Command to run (default: "deno") */ command?: string; /** Arguments for the command */ args?: string[]; /** Path to the workflow run entrypoint script */ entrypointPath: string; /** Working directory for spawned processes */ cwd?: string; /** Additional environment variables */ env?: Record; /** Enable debug logging */ debug?: boolean; } /** * Process run executor * * Spawns child processes for each workflow run. * Provides isolation at the process level (separate memory space). * * @example * ```typescript * const executor = new ProcessRunExecutor({ * entrypointPath: "./src/workflow-run-entrypoint.ts", * env: { * REDIS_URL: "redis://localhost:6379", * }, * }); * * const manager = new WorkflowRunManager({ * backend, * executor, * }); * ``` */ export declare class ProcessRunExecutor implements RunExecutor { private config; private activeExecutions; constructor(config: ProcessRunExecutorConfig); createRunExecution(executionConfig: RunExecutionConfig): Promise; getRunExecutionStatus(executionId: string): Promise; listRunExecutions(managerId: string): Promise; deleteRunExecution(executionId: string): Promise; destroy(): Promise; /** * Monitor a process and update its status when it exits */ private monitorProcess; private terminateProcess; /** * Stream process output to logs */ private streamOutput; /** * Convert tracked execution to RunExecutionInfo */ private toRunExecutionInfo; } //# sourceMappingURL=process.d.ts.map