UNPKG

eve

Version:

Filesystem-first framework for durable backend AI agents that run anywhere.

51 lines (48 loc) 2.1 kB
import { StateAdapter, Lock, QueueEntry } from '#compiled/chat/index.js'; /** * In-memory state adapter for development and testing. * * WARNING: State is not persisted across restarts. * Use RedisStateAdapter for production. */ declare class MemoryStateAdapter implements StateAdapter { private readonly subscriptions; private readonly locks; private readonly cache; private readonly queues; private connected; private connectPromise; connect(): Promise<void>; disconnect(): Promise<void>; subscribe(threadId: string): Promise<void>; unsubscribe(threadId: string): Promise<void>; isSubscribed(threadId: string): Promise<boolean>; acquireLock(threadId: string, ttlMs: number): Promise<Lock | null>; forceReleaseLock(threadId: string): Promise<void>; releaseLock(lock: Lock): Promise<void>; extendLock(lock: Lock, ttlMs: number): Promise<boolean>; get<T = unknown>(key: string): Promise<T | null>; set<T = unknown>(key: string, value: T, ttlMs?: number): Promise<void>; setIfNotExists(key: string, value: unknown, ttlMs?: number): Promise<boolean>; delete(key: string): Promise<void>; appendToList(key: string, value: unknown, options?: { maxLength?: number; ttlMs?: number; }): Promise<void>; enqueue(threadId: string, entry: QueueEntry, maxSize: number): Promise<number>; dequeue(threadId: string): Promise<QueueEntry | null>; queueDepth(threadId: string): Promise<number>; getList<T = unknown>(key: string): Promise<T[]>; private ensureConnected; private cleanExpiredLocks; _getSubscriptionCount(): number; _getLockCount(): number; } /** * Options for {@link createMemoryState}. The in-memory state adapter takes no * configuration today; the type exists so the package shape matches every * other state adapter (ergonomics + konsistent). */ type MemoryStateAdapterOptions = {}; declare function createMemoryState(_options?: MemoryStateAdapterOptions): MemoryStateAdapter; export { MemoryStateAdapter, type MemoryStateAdapterOptions, createMemoryState };