/** * [WHO]: Provides waitForAbortableOperation(), waitForAssistantStream(), waitForAssistantStreamEvent() * [FROM]: Depends on @catui/ai AssistantMessageEvent/AssistantMessageEventStream contracts. * [TO]: Consumed by standard and structured-adaptive agent loops. * [HERE]: core/lib/agent-core/src/agent-loop-stream-events.ts within agent-core; shared abortable operation and assistant-stream iterator utilities. */ import type { AssistantMessageEvent } from "@catui/ai/types"; import type { AssistantMessageEventStream } from "@catui/ai/events"; export type AssistantStreamNext = IteratorResult | "aborted"; export type AssistantStreamStart = AssistantMessageEventStream | "aborted"; export type AbortableOperationResult = { type: "resolved"; value: T; } | { type: "aborted"; }; export declare function waitForAbortableOperation(valueOrPromise: T | Promise, signal?: AbortSignal): Promise>; export declare function waitForAssistantStream(streamOrPromise: AssistantMessageEventStream | Promise, signal?: AbortSignal): Promise; export declare function waitForAssistantStreamEvent(iterator: AsyncIterator, signal?: AbortSignal): Promise;