{
  // to generate d.ts files run npx tsc

  // generate d.ts only for .js + jsx files in the following directory
  "include": ["src/modules/*.js", "src/modules/*.jsx"],

  "compilerOptions": {
    // Tells TypeScript to read JS files, as
    // normally they are ignored as source files
    "allowJs": true,

    // Generate d.ts files
    "declaration": true,

    // This compiler run should
    // only output d.ts files
    "emitDeclarationOnly": true,

    // Types should concatenate into one file.
    // Removing this would create .d.ts files
    // next to the .js files
    // ### "outFile": "./index.d.ts",

    // go to js file when using IDE functions like
    // "Go to Definition" in VSCode
    // ### "declarationMap": true,

    //when true -> null and undefined have their own distinct types
    //otherwise null type will end as any type
    "strictNullChecks": true
  }
}
