Class Async<Value, Indexes>

Type Parameters

  • Value extends object | string | any[]

  • Indexes extends string = "There is no index available"

Constructors

Properties

_bc: BroadcastChannel
_consume_default?: Value
_db: IDBPDatabase<unknown>
_middlewares: Middlewares<Value, Indexes>
identifier: string
last_modified: number = -1
page_sz: number = 10

Methods

  • Returns Promise<void>

  • Type Parameters

    • T extends "readonly" | "readwrite" = "readonly"

    Parameters

    • Optional mode: T

    Returns Promise<IDBPObjectStore<unknown, [string], string, T>>

  • Returns Promise<void>

  • Returns Promise<void>

  • Returns Promise<void>

  • Parameters

    Returns Promise<boolean>

  • Parameters

    Returns Promise<Key_Value_Pair<Value>[]>

  • Parameters

    • name: Indexes
    • options: {
          reverse: boolean;
      }
      • reverse: boolean

    Returns Promise<Key_Value_Pair<Value>[]>

  • Parameters

    • name: Indexes
    • options: {
          mode: "only";
          value: any;
      } | {
          inclusive?: boolean;
          mode: "above";
          value: any;
      } | {
          inclusive?: boolean;
          mode: "below";
          value: any;
      } | {
          lower_inclusive?: boolean;
          lower_value: any;
          mode: "range";
          upper_inclusive?: boolean;
          upper_value: any;
      }

    Returns Promise<Key_Value_Pair<Value>[]>

  • Parameters

    • name: Indexes
    • options: {
          reverse: boolean;
      } & ({
          mode: "only";
          value: any;
      } | {
          inclusive?: boolean;
          mode: "above";
          value: any;
      } | {
          inclusive?: boolean;
          mode: "below";
          value: any;
      } | {
          lower_inclusive?: boolean;
          lower_value: any;
          mode: "range";
          upper_inclusive?: boolean;
          upper_value: any;
      })

    Returns Promise<Key_Value_Pair<Value>[]>

  • Parameters

    • name: Indexes
    • options: {
          offset?: number;
          page: number;
          page_sz?: number;
      } & ({
          mode: "only";
          value: any;
      } | {
          inclusive?: boolean;
          mode: "above";
          value: any;
      } | {
          inclusive?: boolean;
          mode: "below";
          value: any;
      } | {
          lower_inclusive?: boolean;
          lower_value: any;
          mode: "range";
          upper_inclusive?: boolean;
          upper_value: any;
      })

    Returns Promise<{
        has_next: boolean;
        results: Key_Value_Pair<Value>[];
    }>

  • Parameters

    • name: Indexes
    • options: {
          offset?: number;
          page: number;
          page_sz?: number;
          reverse: boolean;
      } & ({
          mode: "only";
          value: any;
      } | {
          inclusive?: boolean;
          mode: "above";
          value: any;
      } | {
          inclusive?: boolean;
          mode: "below";
          value: any;
      } | {
          lower_inclusive?: boolean;
          lower_value: any;
          mode: "range";
          upper_inclusive?: boolean;
          upper_value: any;
      })

    Returns Promise<{
        has_next: boolean;
        results: Key_Value_Pair<Value>[];
    }>

  • Parameters

    • name: Indexes
    • options: {
          offset?: number;
          page: number;
          page_sz?: number;
      }
      • Optional offset?: number
      • page: number
      • Optional page_sz?: number

    Returns Promise<{
        has_next: boolean;
        results: Key_Value_Pair<Value>[];
    }>

  • Parameters

    • name: Indexes
    • options: {
          offset?: number;
          page: number;
          page_sz?: number;
          reverse: boolean;
      }
      • Optional offset?: number
      • page: number
      • Optional page_sz?: number
      • reverse: boolean

    Returns Promise<{
        has_next: boolean;
        results: Key_Value_Pair<Value>[];
    }>

  • Parameters

    • identifier: string
    • Optional options: {
          autoincrement?: boolean;
          consume_default?: Value;
          indexes?: Index<Indexes>[];
          keypath?: Value extends object
              ? Key
              : undefined;
          middlewares?: Middlewares<Value, Indexes>;
          migrate?: ((data) => Promise<void>);
          page_sz?: number;
          version?: number;
      }
      • Optional autoincrement?: boolean
      • Optional consume_default?: Value
      • Optional indexes?: Index<Indexes>[]
      • Optional keypath?: Value extends object
            ? Key
            : undefined
      • Optional middlewares?: Middlewares<Value, Indexes>
      • Optional migrate?: ((data) => Promise<void>)
          • (data): Promise<void>
          • Parameters

            • data: {
                  old_version: number;
                  remove_index: ((name) => void);
              }
              • old_version: number
              • remove_index: ((name) => void)
                  • (name): void
                  • Parameters

                    • name: string

                    Returns void

            Returns Promise<void>

      • Optional page_sz?: number
      • Optional version?: number

    Returns Promise<void>

  • Returns Promise<number>

  • Parameters

    • number: number

      Starts from 1

    • Optional options: {
          offset?: number;
          reverse?: boolean;
          sz?: number;
      }
      • Optional offset?: number
      • Optional reverse?: boolean
      • Optional sz?: number

    Returns Promise<{
        has_next: boolean;
        results: Key_Value_Pair<Value>[];
    }>

  • Parameters

    Returns Promise<void>

  • Parameters

    • value: Value

      If keypath was set but autoincrement was not, make sure value has the prop keypath is pointing to

    • Optional key: Key

      If keypath was set, it must be undefined. If both autoincrement and keypath were not set, it must be Key

    • options: Partial<Options> = {}

    Returns Promise<Key>

  • Parameters

    • key: Key
    • data: ((old) => Promise<{
          options?: Options | {
              expiry?: number;
          };
          value?: Value | EveryOpt<Value>;
      }>)
        • (old): Promise<{
              options?: Options | {
                  expiry?: number;
              };
              value?: Value | EveryOpt<Value>;
          }>
        • Parameters

          Returns Promise<{
              options?: Options | {
                  expiry?: number;
              };
              value?: Value | EveryOpt<Value>;
          }>

    Returns Promise<void>

  • Parameters

    • key: Key
    • data: {
          options?: Options | {
              expiry?: number;
          };
          value?: Value | EveryOpt<Value>;
      }
      • Optional options?: Options | {
            expiry?: number;
        }
      • Optional value?: Value | EveryOpt<Value>

    Returns Promise<void>

Generated using TypeDoc