import type { Session, SessionStore } from '@ariaflowagents/core'; import type { UIMessage } from 'ai'; /** * Bridge SessionStore that splits concerns between CF and AriaFlow. * * CF owns messages (via AIChatAgent's cf_ai_chat_agent_messages table). * AriaFlow owns orchestration state (via OrchestrationStore). * * On get(): reconstructs a Session by combining CF's messages with * AriaFlow's orchestration state. * * On save(): extracts orchestration state from the Session and saves * it. Does NOT save messages -- CF handles that via persistMessages(). */ export declare class BridgeSessionStore implements SessionStore { private orchestration; private cfMessages; private sessionId; private defaultAgentId; constructor(options: { sqlExecutor: (...args: any[]) => any; cfMessages: UIMessage[]; sessionId: string; defaultAgentId: string; }); /** * Reconstruct a Session from CF messages + orchestration state. * Keyed by `id`: multiple sessions (calls) per DO get isolated rows. */ get(id: string): Promise; /** * Save only orchestration state. CF handles message persistence. */ save(session: Session): Promise; delete(id: string): Promise; list(): Promise; /** Garbage-collect orchestration rows older than `maxAgeMs`. */ cleanup(maxAgeMs: number): Promise; }