UNPKG

@tanstack/ai-persistence

Version:

Composable state persistence for TanStack AI messages, runs, interrupts, metadata, and locks.

41 lines (40 loc) • 1.36 kB
import { Interrupt, ModelMessage, RunAgentResumeItem, RunStore, StreamChunk, SubagentWireInfo, UIMessage } from '@tanstack/ai'; import { InterruptStore, MessageStore } from './types.js'; /** * Card data for a stored child transcript. It rides on the first message, in * `metadata.tanstack.subagent`, the same shape the wire uses. */ export declare function storedSubagentInfo(messages: ReadonlyArray<ModelMessage>): SubagentWireInfo | undefined; export declare function createSubagentRunRecorder(stores: { messages: MessageStore; runs?: RunStore; interrupts?: InterruptStore; /** Minimum milliseconds between writes while a child streams. */ intervalMs?: number; }): { start(input: { threadId: string; runId: string; messages: ReadonlyArray<UIMessage | ModelMessage>; resume?: ReadonlyArray<RunAgentResumeItem>; }): Promise<void>; chunk(input: { threadId: string; runId: string; chunk: StreamChunk; }): Promise<void>; suspend(input: { threadId: string; runId: string; interrupts: ReadonlyArray<Interrupt>; }): Promise<void>; finish(input: { threadId: string; runId: string; }): Promise<void>; abort(input: { threadId: string; runId: string; error?: unknown; }): Promise<void>; };