import type { AgentSession, AgentSessionStatus, AgentSessionStore, ArtifactStore, OutputArtifact } from "./types.js"; export interface SqlitePlatformStoreOptions { tablePrefix?: string; } type SqliteRunResult = { changes?: number; }; type SqliteStatement = { run: (...params: unknown[]) => SqliteRunResult; get: (...params: unknown[]) => unknown; all: (...params: unknown[]) => unknown[]; }; export interface SqlitePlatformDatabase { prepare(sql: string): SqliteStatement; exec(sql: string): void; close(): void; } export declare class SqliteAgentSessionStore implements AgentSessionStore { private readonly db; private readonly sessionsTable; private constructor(); static create(dbPath: string, options?: SqlitePlatformStoreOptions): Promise; static fromDatabase(db: SqlitePlatformDatabase, options?: SqlitePlatformStoreOptions): SqliteAgentSessionStore; create(session: AgentSession): void; save(session: AgentSession): void; get(sessionId: string): AgentSession | null; list(filter?: { status?: AgentSessionStatus; }): AgentSession[]; close(): void; } export declare class SqliteArtifactStore implements ArtifactStore { private readonly db; private readonly artifactsTable; private constructor(); static create(dbPath: string, options?: SqlitePlatformStoreOptions): Promise; static fromDatabase(db: SqlitePlatformDatabase, options?: SqlitePlatformStoreOptions): SqliteArtifactStore; put(artifact: OutputArtifact): OutputArtifact; list(sessionId: string): OutputArtifact[]; close(): void; } export interface SqlitePlatformStores { sessionStore: SqliteAgentSessionStore; artifactStore: SqliteArtifactStore; close(): void; } export declare function createSqlitePlatformStores(dbPath: string, options?: SqlitePlatformStoreOptions): Promise; export declare function createSqlitePlatformStoresFromDatabase(db: SqlitePlatformDatabase, options?: SqlitePlatformStoreOptions): SqlitePlatformStores; export {}; //# sourceMappingURL=sqlite-store.d.ts.map