import { Equals } from "@tsplus/stdlib/structure/Equals"; import { Hash } from "@tsplus/stdlib/structure/Hash"; import { HashSet } from "@tsplus/stdlib/collections/HashSet/definition"; export declare const FiberIdSym: unique symbol; export type FiberIdSym = typeof FiberIdSym; /** * @tsplus type effect/core/io/FiberId */ export interface FiberId extends Equals { readonly [FiberIdSym]: FiberIdSym; } export declare namespace FiberId { type Runtime = RuntimeFiberId; } /** * @tsplus type effect/core/io/FiberId.Ops */ export interface FiberIdOps { $: FiberIdAspects; } export declare const FiberId: FiberIdOps; /** * @tsplus type effect/core/io/FiberId.Aspects */ export interface FiberIdAspects { } export type RealFiberId = None | RuntimeFiberId | CompositeFiberId; /** * @tsplus macro remove */ export declare function realFiberId(_: FiberId): asserts _ is RealFiberId; export declare class None implements FiberId, Equals { readonly _tag = "None"; readonly [FiberIdSym]: FiberIdSym; [Hash.sym](): number; [Equals.sym](that: unknown): boolean; } export declare class RuntimeFiberId implements Equals { readonly id: number; readonly startTimeMillis: number; readonly _tag = "Runtime"; readonly [FiberIdSym]: FiberIdSym; constructor(id: number, startTimeMillis: number); [Hash.sym](): number; [Equals.sym](that: unknown): boolean; } export declare class CompositeFiberId implements FiberId, Equals { readonly fiberIds: HashSet; readonly _tag = "Composite"; readonly [FiberIdSym]: FiberIdSym; constructor(fiberIds: HashSet); [Hash.sym](): number; [Equals.sym](that: unknown): boolean; } /** * Checks if the specified unknown value is a `FiberId`. * @tsplus static effect/core/io/FiberId.Ops isFiberId * @tsplus location "@effect/core/io/FiberId/definition" */ export declare function isFiberId(self: unknown): self is FiberId; //# sourceMappingURL=definition.d.ts.map