1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
export type Success<T> = { success: true; value: T; }; export type Failure<E> = { success: false; error: E; }; export type Result<T, E> = Success<T> | Failure<E>; export function success<T>(value: T): Success<T> { return { success: true, value }; } export function failure<E>(error: E): Failure<E> { return { success: false, error }; }