Skip to content

Repository files navigation

TypeScript Advanced Type Utilities

A comprehensive collection of more than 150 high-performance TypeScript type utilities focused on type safety and developer experience.

Features

  • Zero Runtime Overhead - Pure type definitions
  • Type Safety - Advanced constraint utilities
  • Modular Design - Import only what you need
  • Rich Toolset - From basic to advanced type operations
  • IntelliSense Optimized - Great IDE support

Installation

npm install devtypes

Documentation

Read the full devtypes Documentation for detailed usage instructions, examples, and API references.

Quick Examples

Object Type Manipulation

importtype{Merge}from'devtypes/types/merge';importtype{RequireExactlyOne}from'devtypes/types/constraint';typeUserBase={id: number;name: string;email?: string};typeUserAuth={email: string;password: string};// Merge types (smart conflict resolution)typeUser=Merge<UserBase,UserAuth>;// { id: number; name: string; email: string; password: string }// Require exactly one fieldtypeLoginCredentials=RequireExactlyOne<{email?: string;phone?: string;username?: string;},'email'|'phone'|'username'>;

Deep Utilities

importtype{DeepPartial,DeepRequired}from'devtypes/types/transform';interfaceConfig{server: {port: number;host: string;ssl?: {cert: string;key: string;};};database: {url: string;timeout?: number;};}// Make everything optionaltypePartialConfig=DeepPartial<Config>;// Make everything requiredtypeFullConfig=DeepRequired<Config>;

Core Modules

ModulePurpose
assertAssertion utilities for compile-time checks
classClass-specific utilities: methods, properties, constructors
conditionConditional type utilities (If and Equals)
constraintProperty requirement constraints and validation
functionalFunctional type utilities: curry, compose, promisify
guardType guard utilities for runtime type checking
listList-like structures (arrays, sets, maps, records, iterables)
merge(Deep) merging and intersection of types
objectObject type manipulation and property utilities
primitivePrimitive type utilities and literal handling
transform(Deep) transformations for objects, arrays, and nested structures
tupleTuple-specific utilities and manipulations
unionUnion type utilities: exclusion, extraction, conversion
utilGeneric utility types: branding, boxing, casting, simplification

Performance Tips

Import from specific modules for best IDE performance:

// Good - direct importimporttype{Brand}from'devtypes/types/util';importtype{MethodNames}from'devtypes/types/class';// Avoid - star imports slow down IntelliSenseimporttype*asTypesfrom'devtypes';

Contributing

Contributions are welcome! Please feel free to submit a pull request.

License

Copyright 2025–2026 Paul Köhler (komed3).
Distributed under the MIT license.

About

A comprehensive collection of highly-optimized TypeScript type utilities for building type-safe applications

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors