In-memory implementation of the BaseStore using a dictionary. Used for storing key-value pairs in memory.

Example

const store = new InMemoryStore<BaseMessage>();
await store.mset(
Array.from({ length: 5 }).map((_, index) => [
`message:id:${index}`,
index % 2 === 0
? new AIMessage("ai stuff...")
: new HumanMessage("human stuff..."),
]),
);

const retrievedMessages = await store.mget(["message:id:0", "message:id:1"]);
await store.mdelete(await store.yieldKeys("message:id:").toArray());

Type Parameters

  • T = any

Hierarchy (view full)

Constructors

Properties

store: Record<string, T> = {}

Methods

  • Deletes the given keys and their associated values from the store.

    Parameters

    • keys: string[]

      Keys to delete from the store.

    Returns Promise<void>

    Promise that resolves when all keys have been deleted.

  • Retrieves the values associated with the given keys from the store.

    Parameters

    • keys: string[]

      Keys to retrieve values for.

    Returns Promise<T[]>

    Array of values associated with the given keys.

  • Sets the values for the given keys in the store.

    Parameters

    • keyValuePairs: [string, T][]

      Array of key-value pairs to set in the store.

    Returns Promise<void>

    Promise that resolves when all key-value pairs have been set.

  • Asynchronous generator that yields keys from the store. If a prefix is provided, it only yields keys that start with the prefix.

    Parameters

    • Optional prefix: string

      Optional prefix to filter keys.

    Returns AsyncGenerator<string, any, unknown>

    AsyncGenerator that yields keys from the store.

Generated using TypeDoc