/** * @since 0.1.0 */ import { Alternative1 } from 'fp-ts/lib/Alternative' import { Applicative1 } from 'fp-ts/lib/Applicative' import { Apply1 } from 'fp-ts/lib/Apply' import { Separated, Compactable1 } from 'fp-ts/lib/Compactable' import { Either } from 'fp-ts/lib/Either' import { Filterable1 } from 'fp-ts/lib/Filterable' import { Lazy, Predicate, Refinement } from 'fp-ts/lib/function' import { Functor1 } from 'fp-ts/lib/Functor' import { Monad1 } from 'fp-ts/lib/Monad' import * as O from 'fp-ts/lib/Option' import { Task } from 'fp-ts/lib/Task' import { TaskEither } from 'fp-ts/lib/TaskEither' /** * @category model * @since 0.1.0 */ export interface TaskOption extends Task> {} /** * @category constructors * @since 0.1.0 */ export declare const none: TaskOption /** * @category constructors * @since 0.1.0 */ export declare const some: (a: A) => TaskOption /** * @category constructors * @since 0.1.0 */ export declare const fromOption: (ma: O.Option) => TaskOption /** * @category constructors * @since 0.1.10 */ export declare const fromOptionK: , B>( f: (...a: A) => O.Option ) => (...a: A) => TaskOption /** * @category constructors * @since 0.1.0 */ export declare const fromTask: (as: Task) => TaskOption /** * @category constructors * @since 0.1.4 */ export declare const fromNullable: (a: A) => TaskOption> /** * @category constructors * @since 0.1.4 */ export declare const fromTaskEither: (ma: TaskEither) => TaskOption /** * @category constructors * @since 0.1.5 */ export declare const tryCatch: (f: Lazy>) => TaskOption /** * @category destructors * @since 0.1.0 */ export declare const fold: (onNone: () => Task, onSome: (a: A) => Task) => (as: TaskOption) => Task /** * @category destructors * @since 0.1.0 */ export declare const getOrElse: (onNone: () => Task) => (as: TaskOption) => Task /** * @category destructors * @since 0.1.4 */ export declare const toUndefined: (ma: TaskOption) => Task /** * @category destructors * @since 0.1.4 */ export declare const toNullable: (ma: TaskOption) => Task /** * @category combinators * @since 0.1.5 */ export declare const mapNullable: (f: (a: A) => B | null | undefined) => (ma: TaskOption) => TaskOption /** * @category Functor * @since 0.1.18 */ export declare const map: (f: (a: A) => B) => (fa: TaskOption) => TaskOption /** * @category Apply * @since 0.1.18 */ export declare const ap: (fa: TaskOption) => (fab: TaskOption<(a: A) => B>) => TaskOption /** * @category Apply * @since 0.1.18 */ export declare const apFirst: (fb: TaskOption) => (fa: TaskOption) => TaskOption /** * @category Apply * @since 0.1.18 */ export declare const apSecond: (fb: TaskOption) => (fa: TaskOption) => TaskOption /** * @category Applicative * @since 0.1.18 */ export declare const of: (a: A) => TaskOption /** * @category Monad * @since 0.1.18 */ export declare const chain: (f: (a: A) => TaskOption) => (ma: TaskOption) => TaskOption /** * @category Monad * @since 0.1.18 */ export declare const chainFirst: (f: (a: A) => TaskOption) => (ma: TaskOption) => TaskOption /** * @category Monad * @since 0.1.4 */ export declare const chainTask: (f: (a: A) => Task) => (ma: TaskOption) => TaskOption /** * @category Monad * @since 0.1.4 */ export declare const chainOption: (f: (a: A) => O.Option) => (ma: TaskOption) => TaskOption /** * @category Monad * @since 0.1.10 */ export declare const chainOptionK: (f: (a: A) => O.Option) => (ma: TaskOption) => TaskOption /** * @category Monad * @since 0.1.18 */ export declare const flatten: (mma: TaskOption>) => TaskOption /** * @category Alternative * @since 0.1.18 */ export declare const alt: (that: () => TaskOption) => (fa: TaskOption) => TaskOption /** * @category Alternative * @since 0.1.18 */ export declare const zero: () => TaskOption /** * @category Compactable * @since 0.1.18 */ export declare const compact: (fa: TaskOption>) => TaskOption /** * @category Compactable * @since 0.1.18 */ export declare const separate: (ma: TaskOption>) => Separated, TaskOption> /** * @category Filterable * @since 0.1.18 */ export declare const filter: { (refinement: Refinement): (fa: TaskOption) => TaskOption (predicate: Predicate): (fa: TaskOption) => TaskOption } /** * @category Filterable * @since 0.1.18 */ export declare const filterMap: (f: (a: A) => O.Option) => (fa: TaskOption) => TaskOption /** * @category Filterable * @since 0.1.18 */ export declare const partition: { (refinement: Refinement): (fa: TaskOption) => Separated, TaskOption> (predicate: Predicate): (fa: TaskOption) => Separated, TaskOption> } /** * @category Filterable * @since 0.1.18 */ export declare const partitionMap: ( f: (a: A) => Either ) => (fa: TaskOption) => Separated, TaskOption> /** * @category instances * @since 0.1.0 */ declare const URI = 'TaskOption' /** * @category instances * @since 0.1.0 */ export declare type URI = typeof URI declare module 'fp-ts/lib/HKT' { interface URItoKind { TaskOption: TaskOption } } /** * @category instances * @since 0.1.18 */ export declare const Functor: Functor1 /** * @category instances * @since 0.1.18 */ export declare const Applicative: Applicative1 /** * @category instances * @since 0.1.18 */ export declare const Apply: Apply1 /** * @category instances * @since 0.1.18 */ export declare const Monad: Monad1 /** * @category instances * @since 0.1.18 */ export declare const Alternative: Alternative1 /** * @category instances * @since 0.1.18 */ export declare const Compactable: Compactable1 /** * @category instances * @since 0.1.18 */ export declare const Filterable: Filterable1 /** * @category instances * @since 0.1.0 */ export declare const taskOption: Monad1 & Alternative1 & Filterable1 export {}