Improves a project's TypeScript code by creating and improving types. π
ts-enhance
is a CLI tool that iteratively improves TypeScript types in existing code.
It can:
- Add type annotations to fix
noImplicitAny
andnoImplicitThis
type errors - Annotate missing
null
s andundefined
s to fixstrictNullChecks
type errors - Remove unnecessary annotations for types that can be inferred
- Remove unnecessary constituents and members of union types and object types
β‘ To start, the ts-enhance
command will launch an interactive guide to setting up a configuration file. β‘
npx ts-enhance
π Welcome to ts-enhance! π This will create a new ts-enhance.json for you. ...
After, use ts-enhance --config ts-enhance.json
to convert your files with the same settings.
To get a deeper understanding of ts-enhance
, read the following docs pages in order:
-
Usage.md for an explanation of how
ts-enhance
works -
Fixes.md for the type of fixes
ts-enhance
will generate mutations for -
Cleanups.md for the post-fix cleaning
ts-enhance
may apply to files - Types.md for configuring how to work with types in mutations
- Filters.md for using tsquery to ignore sections of source files
- Custom Mutators.md for including or creating custom mutators
See Development.md. π
π This package is based on @JoshuaKGoldberg's create-typescript-app.