fengari-lua / fengari

🌙 φεγγάρι - The Lua VM written in JS ES6 for Node and the browser
MIT License
1.81k stars 65 forks source link

TypeScript type definitions not available #135

Open fcrick opened 6 years ago

fcrick commented 6 years ago

Not really your problem, per say, but if libraries maintain their own type definitions they tend to stay in sync better than ones provided separately. This would be a big help for fengari, specifically, as the API is quite large, and already has great documentation, so getting all that info to show up in tooling and be type checked would mean a big gain for not much work.

Usually the process is something like:

  1. Add something like "types": "types/index.d.ts", to package.json and make sure it's included in the published package.
  2. Add types/index.d.ts with all the types.

Alternatively, the types can be published separately as the package @types/fengari. I'm not exactly sure what the process around that is but it looks like these are added via pull requests to https://github.com/DefinitelyTyped/DefinitelyTyped

I might try to get this started at some point if time permits.

Thanks for making fengari! I think I'll find it incredibly useful.

daurnimator commented 6 years ago

I don't think any of us are Typescript users, so we don't have the expertise to create such type definition files. That said, if you were to send a PR with 80% of the API covered, I'd be happy to merge+maintain it.

roddypratt commented 5 years ago

I'm actually working on this now, I have most of the API functions defined, and a typescript version of lapi.test.js which compiles and runs cleanly.