The best Result type for TypeScript

Make Result types in TypeScript as ergonomic as Rust's ? operator