File system implementation of the BaseStore using a dictionary. Used for storing key-value pairs in the file system.

Example

const store = await LocalFileStore.fromPath("./messages");
await store.mset(
Array.from({ length: 5 }).map((_, index) => [
`message:id:${index}`,
new TextEncoder().encode(
JSON.stringify(
index % 2 === 0
? new AIMessage("ai stuff...")
: new HumanMessage("human stuff..."),
),
),
]),
);
const retrievedMessages = await store.mget(["message:id:0", "message:id:1"]);
console.log(retrievedMessages.map((v) => new TextDecoder().decode(v)));
for await (const key of store.yieldKeys("message:id:")) {
await store.mdelete([key]);
}

Hierarchy

  • BaseStore<string, Uint8Array>
    • LocalFileStore

Constructors

Properties

rootPath: string

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<(undefined | Uint8Array)[]>

    Array of values associated with the given keys.

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

    Parameters

    • keyValuePairs: [string, Uint8Array][]

      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