import { type OmkRuntimeScope } from "../util/resource-profile.js";
import type { NextAction, UserIntent } from "../contracts/orchestration.js";
import type { GoalSpec, IntentFrame } from "../contracts/goal.js";
import type { ProviderPolicy } from "../providers/types.js";
export interface OrchestrateOptions {
    runId?: string;
    workers?: string;
    approvalPolicy?: string;
    watch?: boolean;
    view?: string;
    goalId?: string;
    timeoutPreset?: string;
    provider?: ProviderPolicy;
    model?: string;
    mcpScope?: string;
    execution?: string;
    maxAutoContinueIterations?: string | number;
    failOnDagFailure?: boolean;
    sourceCommand: "chat" | "run" | "parallel" | "goal-run" | "goal-continue" | "default";
    signal?: AbortSignal;
}
export declare function resolveAutoContinueMaxIterations(value: string | number | undefined): number;
export declare function buildAutoContinueRunId(baseRunId: string, iteration: number, now?: Date): string;
export declare function orchestratePrompt(rawPrompt: string, options: OrchestrateOptions): Promise<void>;
interface BuildPromptInput {
    goal: GoalSpec;
    memorySummary: string;
    sourceCommand: string;
    workers: string;
    mcpScope?: OmkRuntimeScope;
    intent: UserIntent;
    intentFrame?: IntentFrame;
    currentPrompt: string;
    isContinuation: boolean;
    autoContinue?: {
        iteration: number;
        maxIterations: number;
        action: NextAction;
        previousRunId: string;
    };
}
export declare function buildOrchestratedPrompt(input: BuildPromptInput): string;
export {};
