import { ImmutableMap } from "@tsplus/stdlib/collections/ImmutableMap/definition"; import { FiberRef } from "@effect/core/io/FiberRef/definition"; import { List } from "@tsplus/stdlib/collections/List/definition"; import { FiberId } from "@effect/core/io/FiberId/definition"; import { Equals } from "@tsplus/stdlib/structure/Equals"; import { HashSet } from "@tsplus/stdlib/collections/HashSet/definition"; import { Maybe } from "@tsplus/stdlib/data/Maybe/definition"; import { Effect } from "@effect/core/io/Effect/definition"; export declare const FiberRefsSym: unique symbol; export type FiberRefsSym = typeof FiberRefsSym; /** * `FiberRefs` is a data type that represents a collection of `FiberRef` values. * This allows safely propagating `FiberRef` values across fiber boundaries, for * example between an asynchronous producer and consumer. * * @tsplus type effect/core/io/FiberRefs * @tsplus companion effect/core/io/FiberRefs.Ops */ export declare class FiberRefs { readonly locals: ImmutableMap, List.NonEmpty>; readonly [FiberRefsSym]: FiberRefsSym; constructor(locals: ImmutableMap, List.NonEmpty>); joinAs(fiberId: FiberId.Runtime, that: FiberRefs): FiberRefs; /** * Forks this collection of fiber refs as the specified child fiber id. This * will potentially modify the value of the fiber refs, as determined by the * individual fiber refs that make up the collection. */ forkAs(childId: FiberId.Runtime): FiberRefs; get fiberRefs(): import("@tsplus/stdlib/collections/HashSet").HashSet>; get(fiberRef: FiberRef): Maybe; getOrDefault(fiberRef: FiberRef): A; get setAll(): import("../Effect").Effect; updateAs(fiberId: FiberId.Runtime, fiberRef: FiberRef, value: A): FiberRefs; delete(fiberRef: FiberRef): FiberRefs; } /** * @tsplus type effect/core/io/FiberRefs.Aspects */ export interface FiberRefsAspects { } /** * @tsplus static effect/core/io/FiberRefs.Ops $ * @tsplus location "@effect/core/io/FiberRefs/definition" */ export declare const FiberRefsAspects: FiberRefsAspects; //# sourceMappingURL=definition.d.ts.map