A simple tool to extract DTOs from a project (like NestJS) and convert them to plain TS Types.
It was mainly developed for NestJS project to export all DTOs so that they could be used in other projects, like frontend.
- Class to plain TS Type
- when class is empty or output no properties use Record<string,any>
- keep JSDoc comments
- import and properly refer to enums
- import and properly refer to imported types
Install as dev-dependency
npm i --save-dev @tauqeernasir/class2type
yarn add -D @tauqeernasir/class2type
Use following script to run the exporter
{
"script": "class2type --pattern /src/**/*.dto.ts --outDir ./types --outFile definitions.d.ts --namespace projectName"
}