return-style
Version:
Non-intrusively convert the result of any function or promise to the user's desired style.
22 lines (21 loc) • 766 B
TypeScript
import { Result } from './result.js';
export declare class Option<T> {
private type;
private value?;
private constructor();
private constructor();
static Some<T>(value: T): Option<T>;
static None<T>(): Option<T>;
isSome(): boolean;
isNone(): boolean;
map<U>(mapper: (val: T) => U): Option<U>;
filter<U extends T = T>(predicate: (val: T) => boolean): Option<U>;
mapOr<U>(defaultValue: U, mapper: (val: T) => U): U;
mapOrElse<U>(createDefaultValue: () => U, mapper: (val: T) => U): U;
unwrap(): T;
unwrapOr<U>(defaultValue: U): T | U;
unwrapOrElse<U>(createDefaultValue: () => U): T | U;
expect(message: string): T;
okOr<E>(err: E): Result<T, E>;
okOrElse<E>(createErr: () => E): Result<T, E>;
}