helpertypes is a lightweight collection of general-purpose TypeScript helper types designed to simplify complex type manipulations across various projects. As of version `0.0.19`, the library offers utilities like deep partial/required types, object key pickers, and string lookup types. The project maintains an active development status, with frequent releases (often multiple per month) focused on introducing new helper types and refining the behavior and robustness of existing ones, particularly for deep type transformations. Its key differentiators include its small footprint, focused scope on just type utilities without runtime code, and a commitment to providing common, reusable type patterns that might otherwise be cumbersome to implement from scratch. While still in a pre-1.0 state, it's regularly updated with fixes and new features.
npm install helpertypesVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to install `helpertypes` and use `PartialDeep`, `RequiredDeep`, and `ObjectLookupString` to create new derived types from existing interfaces, showcasing deep optionality, deep requiredness, and string-based path lookups.
Upgrade to the latest version of `helpertypes` (v0.0.19 or newer) to benefit from the most stable implementations of `RequiredDeep` and `PartialDeep`. Review any complex type definitions that use these helpers after upgrading to ensure desired behavior.
Upgrade to `helpertypes@0.0.18` or newer. If you were encountering recursion limit errors with `ObjectLookupTuple`, this fix should resolve them. Otherwise, verify that the type inference for paths you use with this helper remains correct.
Always use `import type { SomeType } from 'helpertypes';` to explicitly import only the type definitions. This helps prevent accidental runtime imports and ensures correct usage.Upgrade `helpertypes` to the latest version (v0.0.19+), as many recursion issues have been fixed. If the problem persists with extremely deep types, consider manually increasing TypeScript's `--declarationDir` or `--maxNodeModuleJsDepth` compiler options, though this is often a sign of overly complex types.
Change the import statement from `import { PartialDeep } from 'helpertypes';` to `import type { PartialDeep } from 'helpertypes';`. This explicitly tells TypeScript to only import the type definition, which is correctly stripped at compile time.No dependency data recorded yet.