import type { ChildProcess } from 'node:child_process';
import type { RunningJobInfo } from '../job.js';
import type { InferenceExecutor } from './inference_executor.js';
import type { JobExecutor } from './job_executor.js';
import { JobStatus } from './job_executor.js';
import { type ProcOpts, SupervisedProc } from './supervised_proc.js';
export declare class JobProcExecutor extends SupervisedProc implements JobExecutor {
    #private;
    constructor({ agent, inferenceExecutor, ...opts }: ProcOpts & {
        agent: string;
        inferenceExecutor?: InferenceExecutor;
    });
    get status(): JobStatus;
    get userArguments(): any;
    set userArguments(args: any);
    get runningJob(): RunningJobInfo | undefined;
    protected get processKind(): string;
    createProcess(): ChildProcess;
    mainTask(proc: ChildProcess): Promise<void>;
    launchJob(info: RunningJobInfo): Promise<void>;
}
//# sourceMappingURL=job_proc_executor.d.ts.map