import { type StepResult, type HistoryEntry } from '@vsaf/core';
interface StartParams {
    workflow: string;
    args: string;
    projectPath: string;
}
interface NextParams {
    runId: string;
    results: Array<{
        nodeId: string;
        output: string;
        structuredOutput?: Record<string, unknown>;
    }>;
}
interface StatusParams {
    runId: string;
}
interface ResumeParams {
    runId: string;
    projectPath: string;
}
export declare class VSAFEngine {
    private executors;
    private workspaces;
    private runMeta;
    private runStores;
    private failedRuns;
    private runLocks;
    private shuttingDown;
    constructor();
    start(params: StartParams): Promise<{
        runId: string;
        step: StepResult;
    }>;
    next(params: NextParams): Promise<{
        step: StepResult;
    }>;
    status(params: StatusParams): {
        runId: string;
        workflow: string;
        status: string;
        nodes?: Record<string, unknown>;
    };
    resume(params: ResumeParams): Promise<{
        runId: string;
        step: StepResult;
    }>;
    listRuns(projectPath: string): Array<{
        runId: string;
        workflow: string;
        status: string;
        startedAt: string;
    }>;
    listHistory(projectPath: string, limit?: number): HistoryEntry[];
    private lockedStep;
    private evict;
    shutdown(): void;
    private cleanupRun;
    private finishRun;
}
export declare function startMCPServer(): Promise<void>;
export {};
//# sourceMappingURL=server.d.ts.map