UNPKG

typescript-nullable

Version:

A TypeScript Nullable<T> Type and Monad Compliant Utility Functions

27 lines (26 loc) 1.15 kB
export declare type None = null | undefined; export declare type Nullable<T> = T | None; export declare const Nullable: { andThen: { <A, B>(func: (val: A) => Nullable<B>, nullable: Nullable<A>): Nullable<B>; <A, B>(func: (val: A) => Nullable<B>): (nullable: Nullable<A>) => Nullable<B>; }; ap: { <A, B>(targetNullable: Nullable<A>, applicativeNullable: Nullable<(val: A) => B>): Nullable<B>; <A, B>(targetNullable: Nullable<A>): (applicativeNullable: Nullable<(val: A) => B>) => Nullable<B>; }; isNone: <T>(nullable: Nullable<T>) => nullable is null | undefined; isSome: <T>(nullable: Nullable<T>) => nullable is T; map: { <A, B>(func: (val: A) => B, nullable: Nullable<A>): Nullable<B>; <A, B>(func: (val: A) => B): (nullable: Nullable<A>) => Nullable<B>; }; maybe: { <A, B>(defaultVal: B, f: (a: A) => B, nullable: Nullable<A>): B; <A, B>(defaultVal: B, f: (a: A) => B): (nullable: Nullable<A>) => B; }; withDefault: { <T>(defaultVal: T, nullable: Nullable<T>): T; <T>(defaultVal: T): (nullable: Nullable<T>) => T; }; };