import { AssembledMessage } from "../client/stream/messages.js"; import { BaseMessage } from "@langchain/core/messages"; import { ContentBlock as ContentBlock$1, MessageRole, UsageInfo } from "@langchain/protocol"; //#region src/stream/assembled-to-message.d.ts type ExtendedMessageRole = MessageRole | "tool"; interface AssembledToMessageInput { /** Stable message id (from `MessageStartData.id`). */ id?: string; /** Author role captured from the `message-start` event. */ role: ExtendedMessageRole; /** Content blocks assembled so far. */ blocks: ContentBlock$1[]; /** Tool-call id a `role: "tool"` message is responding to, if any. */ toolCallId?: string; /** Final-token usage (populated on `message-finish`). */ usage?: UsageInfo; } /** * Produce a `BaseMessage` class instance from an in-progress or * finished assembled message. Safe to call repeatedly across deltas — * each call returns a new instance whose content reflects the * currently-observed blocks. */ declare function assembledToBaseMessage(input: AssembledToMessageInput): BaseMessage; /** * Convenience: given the raw assembled message + the role captured * from `message-start`, produce a `BaseMessage` with the same id. */ declare function assembledMessageToBaseMessage(assembled: AssembledMessage, role: ExtendedMessageRole, extras?: { toolCallId?: string; }): BaseMessage; //#endregion export { AssembledToMessageInput, ExtendedMessageRole, assembledMessageToBaseMessage, assembledToBaseMessage }; //# sourceMappingURL=assembled-to-message.d.ts.map