import type { ModelMessage, ToolSet, TypedToolResult } from "ai"; import { type AuthorizationSignal } from "#harness/authorization.js"; /** Returns whether an inline tool result represents a pending authorization interrupt. */ export declare function isInlineAuthorizationToolResult(toolResult: TypedToolResult): boolean; /** * Resolves authorization interrupts and keeps only protocol-complete sibling * calls from the response that produced them. */ export declare function resolveInlineAuthorizationInterrupt(input: { readonly messages: readonly ModelMessage[]; readonly toolResults: readonly TypedToolResult[] | undefined; }): { readonly challenges: AuthorizationSignal["challenges"]; /** The calls each sign-in stopped, by the challenge's connection name. */ readonly callIdsByName: ReadonlyMap; readonly history: ModelMessage[]; } | undefined; /** Drops the given calls and their results, keeping protocol-complete sibling calls. */ export declare function withoutCalls(messages: readonly ModelMessage[], interruptedCallIds: ReadonlySet): ModelMessage[];