1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
interface Success<T> {
ok: true;
value: T;
}
interface Failure<E> {
ok: false;
error: E;
}
export function Success<T>(value: T): Success<T> {
return { ok: true, value };
}
export function Failure<E>(error: E): Failure<E> {
return { ok: false, error };
}