variable / @typed/fx/RefRecord

filter

Filter entries in place.

Package version
2.0.0-beta.13
Category
State updates
Since
1.18.0

Import

import { filter } from "@typed/fx/RefRecord";

Signatures

export declare const filter: {
    <K extends string, V>(predicate: (value: V, key: K) => boolean): <E, R>(ref: RefRecord<K, V, E, R>) => Effect.Effect<Record.ReadonlyRecord<K, V>, E, R>;
    <K extends string, V, E, R>(ref: RefRecord<K, V, E, R>, predicate: (value: V, key: K) => boolean): Effect.Effect<Record.ReadonlyRecord<K, V>, E, R>;
};

Why

Applies filter to the committed Record through RefSubject.update and publishes one coherent replacement; this is a mutation, not a read-only Computed projection.

Ownership and lifetime

The Effect starts when run, participates in the source ref’s serialized update boundary, and acquires no resource. It returns the committed Record and retains the ref’s E and R channels.

Other public imports

These import paths expose the same declaration. Each page retains its own public name and signature.

Source