export * from "fp-ts/Either"; import { IO } from "fp-ts/IO"; import { Either } from "fp-ts/Either"; export type ExtractEitherLeftType> = T extends Either ? E : never; export type ExtractEitherRightType> = T extends Either ? A : never; export declare function chainFirstIOK(f: (a: A) => IO): (e: Either) => Either; export declare const doIfRight: typeof chainFirstIOK; export declare function doIfLeft(f: (a: A) => IO): (e: Either) => Either; export declare function doIfLeftOrRight(f: (a: A | B) => IO): (e: Either) => Either; export declare const bindM: () => >>(dependencies: D) => Either ? R : any; }>;