import * as P from "../../Prelude/index.js"; /** * Struct based applicative for IO[+_] */ export declare const struct: >, K = any, Q = any, W = any, X = any, I = any, S = any, R = any, E = any>(r: import("@effect-ts/system/Utils/index.js").EnforceNonEmptyRecord & Record>) => import("./definition.js").XIO<{ [K_1 in keyof NER]: P.Infer<[P.URI<"XIO", {}>], P.Auto, "A", NER[K_1]>; }>; /** * Tuple based applicative for IO[+_] */ export declare const tuple: [], K = any, Q = any, W = any, X = any, I = any, S = any, R = any, E = any>(...t: T & { readonly 0: import("./definition.js").XIO; }) => import("./definition.js").XIO<{ [K_1 in keyof T]: [T[K_1]] extends [import("./definition.js").XIO] ? A : never; }>; /** * Matchers */ export declare const match: (tag: N) => P.MatchFn<[P.URI<"XIO", {}>], P.Auto, N>, matchIn: (tag: N) => P.MatchInFn<[P.URI<"XIO", {}>], P.Auto, N>, matchMorph: (MorphADT: { tag: N; _A: X; }) => P.MatchMorphFn<[P.URI<"XIO", {}>], P.Auto, N, X>, matchTag: P.MatchFn<[P.URI<"XIO", {}>], P.Auto, "_tag">, matchTagIn: P.MatchInFn<[P.URI<"XIO", {}>], P.Auto, "_tag">; /** * Conditionals */ declare const branch: , Y extends import("./definition.js").XIO>(onTrue: () => X, onFalse: () => Y) => (predicate: boolean) => import("./definition.js").XIO], P.Auto, "A", X | Y>>; declare const branch_: , Y extends import("./definition.js").XIO>(predicate: boolean, onTrue: () => X, onFalse: () => Y) => import("./definition.js").XIO], P.Auto, "A", X | Y>>; export { branch as if, branch_ as if_ }; /** * Do */ export declare const bind: (tag: Exclude, f: (a: BK) => import("./definition.js").XIO) => (fa: import("./definition.js").XIO) => import("./definition.js").XIO; declare const let_: (tag: Exclude, f: (a: BK) => BA) => (fa: import("./definition.js").XIO) => import("./definition.js").XIO; declare const do_: import("./definition.js").XIO<{}>; export { do_ as do, let_ as let }; /** * Generator */ export declare const gen: , any>, AEff>(f: (i: (_: import("./definition.js").XIO) => P.GenHKT, A>) => Generator) => import("./definition.js").XIO; //# sourceMappingURL=dsls.d.ts.map