Skip to content

Overview / Database

Database

Accessors

data

Get Signature

get data(): objectOutputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">

Gets the database object.

Returns

objectOutputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">

A deep clone of the database data.


keys

Get Signature

get keys(): ZodObject<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, "passthrough", objectOutputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">, objectInputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">>

Gets the schema of the default keys of the database.

Returns

ZodObject<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, "passthrough", objectOutputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">, objectInputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">>

Methods

delete()

delete(key): void

Deletes a key-value pair from the database.

Parameters

ParameterTypeDescription
keystringThe key of the pair to delete.

Returns

void


parse()

parse(data): SafeParseReturnType<objectInputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">, objectOutputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">>

Parses the given data.

Parameters

ParameterTypeDescription
dataobjectOutputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">The data to be parsed.

Returns

SafeParseReturnType<objectInputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">, objectOutputType<{ activeForms: ZodDefault<ZodSet<ZodString>>; activePlugins: ZodDefault<ZodSet<ZodString>>; activeTools: ZodDefault<ZodSet<ZodString>>; chunkOverlap: ZodDefault<ZodNumber>; chunkSize: ZodDefault<ZodNumber>; embedders: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; instantTool: ZodDefault<ZodBoolean>; llms: ZodDefault<ZodArray<ZodObject<{ name: ZodString; value: ZodRecord<ZodAny>; }, "strip", { name: string; value: Record<string, any>; }, { name: string; value: Record<string, any>; }>>>; rateLimiter: ZodObject<{ checkInterval: ZodDefault<ZodNumber>; enabled: ZodDefault<ZodBoolean>; maxBucketSize: ZodDefault<ZodNumber>; tokensPerSecond: ZodDefault<ZodNumber>; }, "strip", { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }, { checkInterval: number; enabled: boolean; maxBucketSize: number; tokensPerSecond: number; }>; selectedEmbedder: ZodDefault<ZodString>; selectedLLM: ZodDefault<ZodString>; }, ZodTypeAny, "passthrough">>

The safely parsed data.


update()

update(fn): void

Updates the database configuration and reads the updated configuration.

Parameters

ParameterTypeDescription
fn(db) => voidA function that takes the current database configuration as a parameter and updates it.

Returns

void


init()

static init(path): Database

Initializes the database with the specified path.

Parameters

ParameterTypeDescription
pathstringThe path to the database.

Returns

Database

The initialized database instance.

Released under the GPL-3.0 License.