/** * [WHO]: EventStream, AssistantMessageEventStream, createAssistantMessageEventStream * [FROM]: Depends on ai message/event types and event-stream-types structural contract * [TO]: Consumed by core/lib/ai/src/index.ts * [HERE]: core/lib/ai/src/utils/event-stream.ts - async event queue with final-result tracking */ import type { AssistantMessage, AssistantMessageEvent } from "../types.js"; import type { AsyncEventStream } from "./event-stream-types.js"; export declare class EventStream implements AsyncEventStream { private isComplete; private extractResult; private queue; private waiting; private done; private finalResult?; private hasFinalResult; private finalResultPromise; private resolveFinalResult; constructor(isComplete: (event: T) => boolean, extractResult: (event: T) => R); push(event: T): void; end(result?: R): void; [Symbol.asyncIterator](): AsyncIterator; result(): Promise; resultIfResolved(): R | undefined; private setFinalResult; } export declare class AssistantMessageEventStream extends EventStream { constructor(); } /** Factory function for AssistantMessageEventStream (for use in extensions) */ export declare function createAssistantMessageEventStream(): AssistantMessageEventStream;