import type { Run } from "#compiled/@workflow/core/runtime.js"; import type { WorkflowFunction, WorkflowMetadata } from "#compiled/@workflow/core/runtime/start.js"; import type { Runtime } from "#channel/types.js"; import type { RuntimeCompiledArtifactsSource } from "#runtime/compiled-artifacts-source.js"; export declare const LATEST_DEPLOYMENT_UNSUPPORTED_MESSAGE = "deploymentId 'latest' requires a World that implements resolveLatestDeploymentId()"; /** * Workflow function names whose bundled id is stable across deployments * (no `@` stamp). The bundler reads this set when emitting * the workflow id so cross-deployment routing — `start(ref, args, { * deploymentId: "latest" })` — finds the same workflow on a newer * deployment even when the eve version differs. * * Both halves of the contract (bundler output and runtime reference * template) read this single set so they cannot drift. */ export declare const STABLE_WORKFLOW_NAMES: ReadonlySet; /** * Stable workflow reference used by `start()` to locate the workflow * entrypoint registered by the Workflow DevKit builder. The id omits * the package version stamp so the long-lived driver can rotate across * deployments without rewriting the registry key. */ export declare const workflowEntryReference: { workflowId: string; }; /** * Stable workflow reference used by the driver to dispatch per-turn * child workflow runs. The id omits the package version stamp so * `start(turnWorkflowReference, args, { deploymentId: "latest" })` * routes to the latest deployment's turn workflow even when the eve * version differs from the caller's deployment. */ export declare const turnWorkflowReference: { workflowId: string; }; /** * Creates a workflow-backed runtime whose long-lived driver owns the * event stream and dispatches each turn as a child workflow run. */ export declare function createWorkflowRuntime(config: { readonly compiledArtifactsSource: RuntimeCompiledArtifactsSource; readonly nodeId?: string; }): Runtime; /** * Starts a workflow on the latest deployment when latest routing applies, * while preserving local/dev worlds that do not implement latest routing. */ export declare function startWorkflowPreferLatest(workflow: WorkflowFunction | WorkflowMetadata, args: TArgs): Promise | Run>;