Defines the common interface for a derived map reducer.

interface DerivedMap<K = unknown, T = unknown> {
    get derived(): DynReducer.API.DerivedMap<K, T>;
    get destroyed(): boolean;
    get filters(): DynReducer.API.Filters<T>;
    get index(): Index<K>;
    get length(): number;
    get reversed(): boolean;
    set reversed(reversed: boolean): void;
    get sort(): DynReducer.API.Sort<T>;
    "[iterator]"(): IterableIterator<T>;
    destroy(): void;
    subscribe(
        handler: (value: DynReducer.DerivedMap<K, T>) => void,
    ): () => void;
}

Type Parameters

  • K = unknown

    unknown - Key type. Defaults to unknown to enforce type safety when no type is specified.

  • T = unknown

    unknown - Type of data. Defaults to unknown to enforce type safety when no type is specified.

Implemented by

Accessors

  • get destroyed(): boolean
  • Returns boolean

    Returns whether this derived reducer is destroyed.

  • get index(): Index<K>
  • Returns Index<K>

    Returns the Indexer public API.

  • get length(): number
  • Returns number

    Returns the main data items or indexed items length.

  • get reversed(): boolean
  • Returns boolean

    Returns current reversed state.

  • set reversed(reversed: boolean): void
  • Sets reversed state and notifies subscribers.

    Parameters

    • reversed: boolean

      New reversed state.

    Returns void

Methods

  • Removes all derived reducers, subscriptions, and cleans up all resources.

    Returns void

  • Add a subscriber to this DynMapReducer instance.

    Parameters

    • handler: (value: DynReducer.DerivedMap<K, T>) => void

      Callback function that is invoked on update / changes. Receives this reference.

    Returns () => void

    Unsubscribe function.