Closed samreid closed 2 years ago
Summarizing work so far. It took nearly 3 hours to port all of bending light (8900 lines) to TypeScript. WebStorm tooling provided good support with tooling like "infer types from JSDoc" and "promote to property". The port is not complete due to the following:
@ts-ignore
, mainly due to strings, and inadequacies in common codeany
due to numerous non-generic Property and Emitter: any
due to inadequancy in common codeoptions?:any
I discovered numerous problems in this port so far, like:
In the commits, I added type declaration for strings, better enum support and addressed several TODOs. Total time so far: about 9.5 hours. What's left:
any
Many of the existing problems are due to inadequacies in common code. I can add better types for options, and look through the any and ts-ignore again, but many things may need to wait until we have common code support.
This port is is good shape and I don't plan other work at the moment. Closing.
To help move TypeScript forward and to get the benefits of TypeScript in this repo, we should port it to TypeScript.