Inspired by the failure of https://github.com/vector-im/element-desktop/pull/529
to lint our code with the @typescript-eslint/no-base-to-string rule
turned on, I found we needed to add a parserOptions.project to our
.eslintrc.js, pointing to the tsconfig.json.
This led to more fixes, because we have 3 tsconfig.json files for
src+test, scripts and hak and the single eslintrc was complaining that
it could see more files than the tsconfig file knew about.
So, I think the right split is to have one eslintrc file and one
tsconfig for each of the three projects.
* Convert hak to TypeScript
* Fix linter & remove stray log line
* Fix more linting errors
In one case by switching to import() and hence esnext
* Return type for getNodeModuleBin
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
* More types
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>