Interface Dictionary<T>

Type parameters

  • T = unknown

Hierarchy

Index

Properties

Readonly createdAt

createdAt: Date

In UTC.

Optional Readonly options

Readonly updatedAt

updatedAt: Date | null

In UTC.

Methods

[Symbol.asyncIterator]

  • Enables for-await-of iteration.

    example

    Iterate through a large append log

    // Ensure you import DataPowers
    import { DataPowers, CollectionType, CollectionExpirationMode } from "@andi/powers";
    
    type FiSkillLog = {
        data: string;
    };
    
    const skillLogs = await DataPowers.getOrCreateCollection<FiSkillLog>(CollectionType.Dictionary, "log", { expiry: { expireMode: CollectionExpirationMode.Never } });
    // Sometimes the logs may grow beyond what's performant to load all at once in memory. Use an async iterator to process each log, line by line
    for await (const log of skillLogs) {
        // granular processing
    }

    Returns AsyncIterator<KeyValuePair<T>>

clear

  • clear(): Promise<boolean>
  • WARNING: Removes all data for collection.

    Cannot be undone.

    Returns Promise<boolean>

delete

  • delete(key: string): Promise<boolean>
  • Cannot be undone.

    throws

    {TypeError} when key is not a string.

    throws

    {RangeError} when key length is >512 length

    Parameters

    • key: string

    Returns Promise<boolean>

entries

  • Fetch all values for collection

    WARNING: For >100 MB of total data, consider using for-await-of iteration to process items one by one.

    Returns Promise<KeyValuePair<T>[]>

get

  • get(key: string): Promise<T | null>
  • throws

    {TypeError} when key is not a string.

    throws

    {RangeError} when key length is >512 length

    Parameters

    • key: string

    Returns Promise<T | null>

getEntry

  • throws

    {TypeError} when key is not a string.

    throws

    {RangeError} when key length is >512 length

    Parameters

    • key: string

    Returns Promise<KeyValuePair<T> | null>

getSize

  • getSize(): Promise<number>

has

  • has(key: string): Promise<boolean>
  • throws

    {TypeError} when key is not a string.

    throws

    {RangeError} when key length is >512 length

    Parameters

    • key: string

    Returns Promise<boolean>

keys

  • keys(): Promise<string[]>
  • Returns Promise<string[]>

set

  • set(key: string, value: T): Promise<void>
  • throws

    {TypeError} when key is not a string.

    throws

    {RangeError} when key length is >512 length

    throws

    {RangeError} when value size exceeds 8 MB (serialized).

    Parameters

    • key: string
    • value: T

    Returns Promise<void>

values

  • values(): Promise<T[]>
  • Fetch all values for collection

    WARNING: For >100 MB of total data, consider using for-await-of iteration to process items one by one.

    Returns Promise<T[]>

Generated using TypeDoc