Interface for providing a custom storage implementation to a client-side SDK.

This interface should only be used when customizing the storage mechanism used by the SDK. Typical usage of the SDK does not require implementing this interface.

Storage is used to cache flag values per context and to persist generated identifiers. It may be used for additional features in the future.

Implementations should not throw exceptions. If an implementation does throw, the SDK guards against it: the error is logged and the operation degrades gracefully (reads return null, writes are dropped) rather than crashing the host application.

Hierarchy

  • LDStorage

Properties

Properties

clear: ((key) => Promise<void>)

Type declaration

    • (key): Promise<void>
    • Clear the value associated with a given key.

      After clearing a key subsequent calls to the get function should return null for that key.

      Parameters

      • key: string

        The key to clear the value for.

      Returns Promise<void>

      A promise that resolves after that operation completes.

get: ((key) => Promise<null | string>)

Type declaration

    • (key): Promise<null | string>
    • Get a value from the storage.

      Parameters

      • key: string

        The key to get a value for.

      Returns Promise<null | string>

      A promise which resolves to the value for the specified key, or null if there is no value for the key.

set: ((key, value) => Promise<void>)

Type declaration

    • (key, value): Promise<void>
    • Set the given key to the specified value.

      Parameters

      • key: string

        The key to set a value for.

      • value: string

        The value to set for the key.

      Returns Promise<void>

      A promise that resolves after the operation completes.

Generated using TypeDoc