/** * Lift a computation from the `Task` monad * * @since 2.10.0 */ import { Chain, Chain1, Chain2, Chain2C, Chain3, Chain3C, Chain4 } from './Chain' import { FromIO, FromIO1, FromIO2, FromIO2C, FromIO3, FromIO3C, FromIO4 } from './FromIO' import { HKT, Kind, Kind2, Kind3, Kind4, URIS, URIS2, URIS3, URIS4 } from './HKT' import { Task } from './Task' /** * @category model * @since 2.10.0 */ export interface FromTask extends FromIO { readonly fromTask: (fa: Task) => HKT } /** * @category model * @since 2.10.0 */ export interface FromTask1 extends FromIO1 { readonly fromTask: (fa: Task) => Kind } /** * @category model * @since 2.10.0 */ export interface FromTask2 extends FromIO2 { readonly fromTask: (fa: Task) => Kind2 } /** * @category model * @since 2.10.0 */ export interface FromTask2C extends FromIO2C { readonly fromTask: (fa: Task) => Kind2 } /** * @category model * @since 2.10.0 */ export interface FromTask3 extends FromIO3 { readonly fromTask: (fa: Task) => Kind3 } /** * @category model * @since 2.10.0 */ export interface FromTask3C extends FromIO3C { readonly fromTask: (fa: Task) => Kind3 } /** * @category model * @since 2.10.0 */ export interface FromTask4 extends FromIO4 { readonly fromTask: (fa: Task) => Kind4 } /** * @since 2.10.0 */ export declare function fromTaskK( F: FromTask4 ): , B>(f: (...a: A) => Task) => (...a: A) => Kind4 export declare function fromTaskK( F: FromTask3 ): , B>(f: (...a: A) => Task) => (...a: A) => Kind3 export declare function fromTaskK( F: FromTask3C ): , B>(f: (...a: A) => Task) => (...a: A) => Kind3 export declare function fromTaskK( F: FromTask2 ): , B>(f: (...a: A) => Task) => (...a: A) => Kind2 export declare function fromTaskK( F: FromTask2C ): , B>(f: (...a: A) => Task) => (...a: A) => Kind2 export declare function fromTaskK( F: FromTask1 ): , B>(f: (...a: A) => Task) => (...a: A) => Kind export declare function fromTaskK( F: FromTask ): , B>(f: (...a: A) => Task) => (...a: A) => HKT /** * @since 2.10.0 */ export declare function chainTaskK( F: FromTask4, M: Chain4 ): (f: (a: A) => Task) => (first: Kind4) => Kind4 export declare function chainTaskK( F: FromTask3, M: Chain3 ): (f: (a: A) => Task) => (first: Kind3) => Kind3 export declare function chainTaskK( F: FromTask3C, M: Chain3C ): (f: (a: A) => Task) => (first: Kind3) => Kind3 export declare function chainTaskK( F: FromTask2, M: Chain2 ): (f: (a: A) => Task) => (first: Kind2) => Kind2 export declare function chainTaskK( F: FromTask2C, M: Chain2C ): (f: (a: A) => Task) => (first: Kind2) => Kind2 export declare function chainTaskK( F: FromTask1, M: Chain1 ): (f: (a: A) => Task) => (first: Kind) => Kind export declare function chainTaskK( F: FromTask, M: Chain ): (f: (a: A) => Task) => (first: HKT) => HKT /** * @since 2.10.0 */ export declare function chainFirstTaskK( F: FromTask4, M: Chain4 ): (f: (a: A) => Task) => (first: Kind4) => Kind4 export declare function chainFirstTaskK( F: FromTask3, M: Chain3 ): (f: (a: A) => Task) => (first: Kind3) => Kind3 export declare function chainFirstTaskK( F: FromTask3C, M: Chain3C ): (f: (a: A) => Task) => (first: Kind3) => Kind3 export declare function chainFirstTaskK( F: FromTask2, M: Chain2 ): (f: (a: A) => Task) => (first: Kind2) => Kind2 export declare function chainFirstTaskK( F: FromTask2C, M: Chain2C ): (f: (a: A) => Task) => (first: Kind2) => Kind2 export declare function chainFirstTaskK( F: FromTask1, M: Chain1 ): (f: (a: A) => Task) => (first: Kind) => Kind export declare function chainFirstTaskK( F: FromTask, M: Chain ): (f: (a: A) => Task) => (first: HKT) => HKT