import type * as HKT from "@principia/prelude/HKT"; import type { Monad } from "@principia/prelude/Monad"; export declare class GenHKT { readonly T: T; constructor(T: T); [Symbol.iterator](): Generator, A, any>; } export declare function genWithHistoryF< F extends HKT.URIS, TC, Adapter = { (_: HKT.Kind): GenHKT< HKT.Kind, A >; } >( M: Monad, config?: { adapter?: Adapter; } ): , any>, A0>( f: (i: Adapter) => Generator ) => HKT.Kind< F, TC, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, A0 >; export declare function genF< F extends HKT.URIS, TC, Adapter = { (_: HKT.Kind): GenHKT< HKT.Kind, A >; } >( M: Monad, config?: { adapter?: Adapter; } ): , any>, A0>( f: (i: Adapter) => Generator ) => HKT.Kind< F, TC, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, HKT.Infer, A0 >; //# sourceMappingURL=gen.d.ts.map