// ets_tracing: off import type { Option } from "@effect-ts/system/Option" import type { Applicative } from "../Applicative/index.js" import type * as HKT from "../HKT/index.js" export interface Wither { (F: Applicative): < GK, GQ, GW, GX, GI, GS, GR, GE, A, B >( f: (a: A) => HKT.Kind> ) => ( ta: HKT.Kind ) => HKT.Kind< G, GC, GK, GQ, GW, GX, GI, GS, GR, GE, HKT.Kind > } export interface Witherable extends HKT.Base { readonly _Witherable: "Witherable" readonly compactF: Wither } export function implementCompactF(): ( i: (_: { A: A B: B G: G FK: FK FQ: FQ FW: FW FX: FX FI: FI FS: FS FR: FR FE: FE }) => ( G: Applicative> ) => ( f: (a: A) => HKT.HKT> ) => ( ta: HKT.Kind ) => HKT.HKT> ) => Wither export function implementCompactF() { return (i: any) => i() }