Import
import { make } from "@typed/fx/Sink";Signatures
export declare function make<A, E = never, R = never, R2 = R>(onFailure: (cause: Cause.Cause<E>) => Effect<unknown, never, R>, onSuccess: (value: A) => Effect<unknown, never, R2>): Sink<A, E, R | R2>;Why
make is the smallest adapter from ordinary Effect programs to an Fx consumer.
Ownership and lifetime
Construction is pure and acquires nothing. Callback ordering and concurrency belong to the
invoking producer; this adapter adds no queue. Callbacks are interrupted with their delivery
owners. Requirements from both callbacks are combined in the returned
sink; callback defects remain defects, while typed producer failures arrive through onFailure.
Examples
import { Effect } from "effect"
import * as Sink from "@typed/fx/Sink"
const sink = Sink.make(Effect.logError, (value: number) => Effect.log(value))Other public imports
These import paths expose the same declaration. Each page retains its own public name and signature.