import { Effect } from "@effect/io/Effect"; import { LazyArg } from "@effect-ts-app/core/Function"; import { Either } from "@fp-ts/data/Either"; import { Tag } from "@fp-ts/data/Context"; import { Scope } from "@effect/io/Scope"; import "./builtIn.js"; import "./date.js"; import "./Lens.ext.js"; import "./Ref.js"; import "./refinements.js"; import "./Schema.ext.js"; import type { Option } from "@fp-ts/data/Option"; export type _R> = [T] extends [ Effect ] ? R : never; export type _E> = [T] extends [ Effect ] ? E : never; /** * @tsplus fluent fp-ts/data/Option encaseInEffect * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function encaseMaybeInEffect_(o: Option, onError: LazyArg): Effect; /** * @tsplus getter fp-ts/data/Either asEffect * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare const EitherasEffect: (either: import("@fp-ts/data/Either").Either) => import("@effect/io/Effect").Effect; /** * @tsplus fluent fp-ts/data/Option encaseInEither * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function encaseMaybeEither_(o: Option, onError: LazyArg): Either; type Service = T extends Tag ? S : never; type Values = T extends { [s: string]: infer S; } ? Service : never; type Services>> = { [key in keyof T]: Service; }; /** * @tsplus static effect/io/Effect.Ops servicesWith * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function accessServices_>, A>(services: T, fn: (services: Services) => A): import("@effect/io/Effect").Effect, never, A>; /** * @tsplus static effect/io/Effect.Ops servicesWithEffect * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function accessServicesM_>, R, E, A>(services: T, fn: (services: Services) => Effect): import("@effect/io/Effect").Effect, E, A>; export declare function accessServices>>(services: T): (fn: (services: Services) => A) => import("@effect/io/Effect").Effect, never, A>; export declare function accessServicesM>>(services: T): (fn: (services: Services) => import("@effect/io/Effect").Effect) => import("@effect/io/Effect").Effect, E, A>; /** * @tsplus getter effect/io/Effect toNullable * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function toNullable(self: Effect>): import("@effect/io/Effect").Effect; /** * @tsplus fluent effect/io/Effect scope * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function scope(scopedEffect: Effect, effect: Effect): Effect, E | E2, A2>; /** * @tsplus fluent effect/io/Effect flatMapScoped * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function flatMapScoped(scopedEffect: Effect, effect: (a: A) => Effect): Effect, E | E2, A2>; /** * Recovers from all errors. * @tsplus static effect/io/Effect.Aspects catchAllMap * @tsplus pipeable effect/io/Effect catchAllMap * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function catchAllMap(f: (e: E) => A2): (self: import("@effect/io/Effect").Effect) => import("@effect/io/Effect").Effect; /** * Annotates each log in this effect with the specified log annotations. * @tsplus static effect/io/Effect.Ops logAnnotates * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function logAnnotates(kvps: Record): (effect: import("@effect/io/Effect").Effect) => import("@effect/io/Effect").Effect; /** * Annotates each log in this scope with the specified log annotation. * @tsplus static effect/io/Effect.Ops logAnnotateScoped * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function logAnnotateScoped(key: string, value: string): import("@effect/io/Effect").Effect; /** * Annotates each log in this scope with the specified log annotations. * @tsplus static effect/io/Effect.Ops logAnnotatesScoped * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function logAnnotatesScoped(kvps: Record): import("@effect/io/Effect").Effect; /** * @tsplus fluent function flow * @tsplus location "@effect-ts-app/boilerplate-prelude/_ext/Prelude.ext" */ export declare function flow(f: (a: A) => B, g: (b: B) => C): (a: A) => C; export {}; //# sourceMappingURL=Prelude.ext.d.ts.map