import type { ChatMessageMetadata, ChatUiMessageChunk } from "../../chat/protocol.js"; import { type HostedChildChunkMirror, type HostedChildMirrorContext } from "./child-mirror.js"; import { type ConversationRunChunkMirror, type HostedConversationRunChunkMirrorInstrumentation } from "../conversation/run-chunk-mirror.js"; import { type HostedRunEventWriterCapability } from "./child-run-event-writer-token.js"; import { type HostedChildPendingToolLifecycleLogContext, type HostedChildPendingToolLifecycleLogWriter } from "./child-pending-tool-lifecycle.js"; import { type ExecuteHostedChildForkStreamInput, type HandleHostedChildForkFailureInput, type HostedChildForkPendingToolLifecycle } from "./child-fork-stream-execution.js"; import type { ChildRunExecutionResult, ChildRunExecutionSnapshot } from "../child-run/execution-snapshot.js"; import { type HostedChildRunIdentifiers } from "./child-status.js"; /** Public API contract for hosted child fork tool call snapshot. */ export interface HostedChildForkToolCallSnapshot { toolName: string; toolCallId: string; input?: unknown; } /** Public API contract for hosted child fork tool result snapshot. */ export interface HostedChildForkToolResultSnapshot { toolName: string; toolCallId: string; input: unknown; output: unknown; } /** State for hosted child fork stream. */ export interface HostedChildForkStreamState { finalText: string; } /** Context for hosted child fork stream mirror. */ export interface HostedChildForkStreamMirrorContext { durableRunMirror: boolean; durableMessageId: string | null; durableReasoningMessageId: string | null; durableMirrorState: HostedChildMirrorContext["state"]; appendDurableMirrorChunk: (chunk: ChatUiMessageChunk) => Promise; closeDurableMirrorReasoning: () => Promise; closeDurableMirrorText: () => Promise; markDurableStepStarted: () => void; hasStartedStep: () => boolean; hasEmittedProgress: () => boolean; } /** Context for hosted child fork run. */ export interface HostedChildForkRunContext { mirrorContext: HostedChildMirrorContext; streamMirrorContext: HostedChildForkStreamMirrorContext; pendingToolLifecycle: HostedChildForkPendingToolLifecycle; toolCalls: HostedChildForkToolCallSnapshot[]; toolResults: HostedChildForkToolResultSnapshot[]; streamState: HostedChildForkStreamState; } /** Context for hosted durable child fork run. */ export type HostedDurableChildForkRunContext = HostedChildForkRunContext & { durableRunMirror: ConversationRunChunkMirror | null; }; /** Input payload for hosted child fork run context. */ export interface HostedChildForkRunContextInput { mirror: HostedChildChunkMirror | null; messageId?: string | null; reasoningMessageId?: string | null; pendingToolLogContext: HostedChildPendingToolLifecycleLogContext; pendingToolLogWriter?: HostedChildPendingToolLifecycleLogWriter; } /** * Input for a hosted durable child fork context. * * Durable mirroring is enabled only by an exact-child writer capability. * Omitting the capability leaves `durableRunMirror` unset; raw API tokens are * not accepted as event-writer authority. */ export interface HostedDurableChildForkRunContextInput { /** Exact-child writer authority, or an authority installed by the framework scope. */ runEventWriterCapability?: HostedRunEventWriterCapability; durableChildRun?: HostedChildRunIdentifiers; instrumentation?: HostedConversationRunChunkMirrorInstrumentation; pendingToolLogContext: HostedChildPendingToolLifecycleLogContext; pendingToolLogWriter?: HostedChildPendingToolLifecycleLogWriter; } /** Input payload for handle hosted child fork run context error. */ export interface HandleHostedChildForkRunContextErrorInput { error: unknown; abortSignal?: AbortSignal; description: string; kind: string; runContext: HostedChildForkRunContext; usage?: ChildRunExecutionSnapshot["usage"]; startTime: number; onSettled?: (snapshot: ChildRunExecutionSnapshot) => void | Promise; shouldRethrowError?: (error: unknown) => boolean; writeLog?: HandleHostedChildForkFailureInput["writeLog"]; } /** Input payload for finalize hosted child fork run context resources. */ export interface FinalizeHostedChildForkRunContextResourcesInput { runContext: HostedChildForkRunContext; monitorAbortController?: AbortController | null; monitorPromise?: Promise; flushMirror?: () => Promise; closeTooling?: () => Promise; closeRuntime?: () => Promise; } /** Context for create hosted child fork run. */ export declare function createHostedChildForkRunContext(input: HostedChildForkRunContextInput): HostedChildForkRunContext; /** Context for create hosted durable child fork run. */ export declare function createHostedDurableChildForkRunContext(input: HostedDurableChildForkRunContextInput): HostedDurableChildForkRunContext; /** Input payload for execute hosted child fork run context stream. */ export type ExecuteHostedChildForkRunContextStreamInput = Pick & { runContext: HostedChildForkRunContext; }; /** Execute hosted child fork run context stream. */ export declare function executeHostedChildForkRunContextStream(input: ExecuteHostedChildForkRunContextStreamInput): Promise; /** Error shape for handle hosted child fork run context. */ export declare function handleHostedChildForkRunContextError(input: HandleHostedChildForkRunContextErrorInput): Promise; /** Finalize hosted child fork run context resources helper. */ export declare function finalizeHostedChildForkRunContextResources(input: FinalizeHostedChildForkRunContextResourcesInput): Promise; //# sourceMappingURL=child-fork-run-context.d.ts.map