import type { WorkflowRepository } from "./repository.js"; import type { WorkflowCallInput } from "./service.js"; /** * Which Workflow invocation a new run is being started on behalf of, and whether * that invocation may reach the target at all. A Workflow Call names its caller * outright; a run started from an attempt session has to be traced back to one. */ type CallerRepository = Pick; type WorkflowCaller = WorkflowCallInput["caller"]; /** The invocation a session speaks for, or null when the session is not one — * an operator, a cron run, or an attempt that has already settled. */ export declare function callerForSession(repository: CallerRepository, sessionId: string | undefined): WorkflowCaller | null; /** Refuse a caller that is not a live invocation, or whose ancestry re-enters the * target, loops, unwinds into a run already being cancelled, or nests deeper than * a Workflow tree has any reason to go. */ export declare function assertCallableCaller(repository: CallerRepository, targetWorkflowId: string, caller: WorkflowCaller): void; export {}; //# sourceMappingURL=session-caller.d.ts.map