import type { DefinedAgent } from "./agent-definition.js"; import type { FabricActor, JsonObject } from "./types.js"; export interface JobInvocationReceipt { runId: string; acceptedAt: string; statusUrl?: string; eventsUrl?: string; } export interface NamedJobInvocation { job: string; input: TInput; idempotencyKey?: string; } export interface JobInvocationOptions { input: TInput; idempotencyKey?: string; } export interface JobInvocationContext { runId: string; job: string; chain: readonly string[]; tenantId?: string; actor?: FabricActor; } interface RuntimeInvocation extends NamedJobInvocation { parentRunId?: string; tenantId?: string; actor?: FabricActor; chain: readonly string[]; } export interface JobInvocationRuntime { invoke(request: RuntimeInvocation): Promise; maxDepth?: number; } export declare function configureJobInvocationRuntime(next: JobInvocationRuntime): void; export declare function resetJobInvocationRuntime(): void; export declare function registerJobName(job: DefinedAgent, name: string): void; export declare function currentJobInvocation(): JobInvocationContext | undefined; export declare function runWithJobInvocation(context: JobInvocationContext, fn: () => Promise | T): Promise | T; export declare function invoke(job: DefinedAgent, options: JobInvocationOptions): Promise; export declare function invoke(request: NamedJobInvocation): Promise; export {}; //# sourceMappingURL=job-invoke.d.ts.map