import { Fiber } from "@effect/core/io/Fiber/definition"; import { Either } from "@tsplus/stdlib/data/Either/definition"; import { Exit } from "@effect/core/io/Exit/definition"; import { Effect } from "@effect/core/io/Effect/definition"; /** * @tsplus type effect/core/stream/Channel/MergeState */ export type MergeState = BothRunning | LeftDone | RightDone; export declare class BothRunning<_Env, Err, Err1, _Err2, Elem, Done, Done1, _Done2> { readonly left: Fiber>; readonly right: Fiber>; readonly _tag = "BothRunning"; constructor(left: Fiber>, right: Fiber>); } export declare class LeftDone { readonly f: (exit: Exit) => Effect; readonly _tag = "LeftDone"; constructor(f: (exit: Exit) => Effect); } export declare class RightDone { readonly f: (ex: Exit) => Effect; readonly _tag = "RightDone"; constructor(f: (ex: Exit) => Effect); } /** * @tsplus type effect/core/stream/Channel/MergeState.Ops */ export interface MergeStateOps { } export declare const MergeState: MergeStateOps; /** * @tsplus static effect/core/stream/Channel/MergeState.Ops BothRunning * @tsplus location "@effect/core/stream/Channel/MergeState" */ export declare function bothRunning<_Env, Err, Err1, _Err2, Elem, Done, Done1, _Done2>(left: Fiber>, right: Fiber>): MergeState<_Env, Err, Err1, _Err2, Elem, Done, Done1, _Done2>; /** * @tsplus static effect/core/stream/Channel/MergeState.Ops LeftDone * @tsplus location "@effect/core/stream/Channel/MergeState" */ export declare function leftDone(f: (exit: Exit) => Effect): MergeState; /** * @tsplus static effect/core/stream/Channel/MergeState.Ops RightDone * @tsplus location "@effect/core/stream/Channel/MergeState" */ export declare function rightDone(f: (ex: Exit) => Effect): MergeState; //# sourceMappingURL=MergeState.d.ts.map