import type { TaskToolCall } from "#execution/tasks/calls.js"; import type { HarnessSession } from "#harness/types.js"; import { type SessionProjection } from "#protocol/session-projection.js"; /** * Derives the workflow fields used to select the next action at the park boundary. Whether the * session awaits input or a sign-in is the projection's; which callbacks resume it, and which * calls wait on the runtime, is execution state. */ export declare function derivePendingState(session: HarnessSession, projection: SessionProjection): { readonly authorizationAttemptIds?: readonly string[]; readonly hasPendingAuthorization: boolean; readonly hasPendingInputBatch: boolean; /** The pending batch has workflow tool runs to start; task tool calls are answered by the session. */ readonly hasRunsToDispatch?: boolean; readonly pendingCoordinationCallIds?: readonly string[]; readonly pendingTaskToolCalls?: readonly TaskToolCall[]; };