@allspark-js/core
Version:
Core library to create js applications.
21 lines (20 loc) • 569 B
TypeScript
declare class Failure<T, E> {
readonly error: E;
constructor(error: E);
isError(): this is Failure<T, E>;
}
declare class Success<T, E> {
readonly value: T;
constructor(value: T);
isError(): this is Failure<T, E>;
}
export type TFailable<T, E> = Success<T, E> | Failure<T, E>;
export interface IFailableFactory {
success<T>(value: T): Success<T, any>;
fail<E>(error: E): Failure<any, E>;
}
export declare const failableFactory: {
success: <T, E>(value: T) => Success<T, E>;
fail: <T, E>(error: E) => Failure<T, E>;
};
export {};