omnimatch (npm): TypeScript tagged-union utility knife
Keywords: typescript|discriminated|tagged|union|match|pattern