chore: add typescript
This is not to convert the project to TypeScript.
During development, we do use types though for developer experience. In other projects, I know also add a devDependency on typescript and using tsc as a linter.
While still using *.js files, and JSDoc types, enforce the types with tsc.