Import
import { merge } from "@typed/fx/RefStruct";Signatures
export declare const merge: {
<O extends object>(that: O): <S extends object, E, R>(ref: RefStruct<S, E, R>) => Effect.Effect<S, E, R>;
<S extends object, O extends object, E, R>(ref: RefStruct<S, E, R>, that: O): Effect.Effect<S, E, R>;
};Why
Combines bulk struct changes in one committed value, giving subscribers one coherent update rather than a partially applied sequence.
Ownership and lifetime
Running merge performs one serialized struct transition and resolves with its committed value. It acquires no resource; failures and services remain those of the source ref.
Other public imports
These import paths expose the same declaration. Each page retains its own public name and signature.