export interface ResultBase { t: T; e: E; } export interface ResultOk extends ResultBase { ok: true; value: V; } export interface ResultErr extends ResultBase { ok: false; error: V; } export type Result = ResultOk | ResultErr;