import type { Effect, EffectTypeId } from "@effect/io/Effect"; import type { Chunk, Either, Option } from "./Prelude.js"; /** * @tsplus unify effect/io/Effect */ export declare function unifyEffect>(self: X): Effect<[ X ] extends [{ readonly [EffectTypeId]: { _R: (_: never) => infer R; }; }] ? R : never, [ X ] extends [{ readonly [EffectTypeId]: { _E: (_: never) => infer E; }; }] ? E : never, [ X ] extends [{ readonly [EffectTypeId]: { _A: (_: never) => infer A; }; }] ? A : never>; /** * @tsplus unify fp-ts/data/Chunk */ export declare function unifyChunk>(self: X): Chunk<[X] extends [Chunk] ? A : never>; /** * @tsplus unify fp-ts/data/Either * @tsplus unify fp-ts/data/Either.Left * @tsplus unify fp-ts/data/Either.Right */ export declare function unifyEither>(self: X): Either ? EX : never, X extends Either.Right ? AX : never>; /** * @tsplus unify fp-ts/data/Option * @tsplus unify fp-ts/data/Option.Some * @tsplus unify fp-ts/data/Option.None */ export declare function unifyOpt>(self: X): Option ? A : never>; //# sourceMappingURL=Unify.d.ts.map