import type { DagNode } from "../contracts/dag.js";
import type { OmkRuntimeScope, TaskRunContext, WorkerCapabilityManifest, WorkerManifest, WorkerManifestArtifacts } from "../contracts/worker-context.js";
import type { AgentTask, ProviderPolicy } from "./agent-runtime.js";
export interface WorkerToolPlaneInput {
    readonly mcpServers?: readonly string[];
    readonly mcpConfigFile?: string;
    readonly skills?: readonly string[];
    readonly hooks?: readonly string[];
    readonly tools?: readonly string[];
    readonly requiresRuntimeMcp?: boolean;
}
export interface BuildTaskRunContextInput {
    readonly runId: string;
    readonly node: DagNode;
    readonly root?: string;
    readonly goalId?: string;
    readonly objective?: string;
    readonly scopes?: {
        readonly mcp?: OmkRuntimeScope;
        readonly skills?: OmkRuntimeScope;
        readonly hooks?: OmkRuntimeScope;
    };
    readonly toolPlane?: WorkerToolPlaneInput;
    readonly providerPolicy?: ProviderPolicy;
    readonly capabilities?: Partial<WorkerCapabilityManifest>;
    readonly selectedRuntimeId?: string;
    readonly model?: string;
    readonly artifacts?: WorkerManifestArtifacts;
    readonly createdAt?: string;
}
export declare function buildTaskRunContext(input: BuildTaskRunContextInput): TaskRunContext;
export declare function buildWorkerManifestFromNode(input: BuildTaskRunContextInput): WorkerManifest;
export declare function applyTaskRunContextToAgentTask(task: AgentTask, context?: TaskRunContext): AgentTask;
export declare function envFromWorkerManifest(manifest: WorkerManifest): Record<string, string>;
