{
  "compilerOptions": {
    /* Enable constraints that allow a TypeScript project to be used with project references. */
    "composite": true,

    /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
    "target": "es2021",

    /* Specify what module code is generated. */
    "module": "ES2020",

    /* Specify the root folder within your source files. */
    "rootDir": "../",

    /* Specify how TypeScript looks up a file from a given module specifier. */
    "moduleResolution": "bundler",

    /* Specify the base directory to resolve non-relative module names. */
    "baseUrl": "./",

    /* Specify a set of entries that re-map imports to additional lookup locations. */
    // WARNING: do not break the array into lines as it will break the parser in ./vitest.config.ts
    "paths": {
      "@shared/*": ["../shared/*"],
      "@lib/*": ["./lib/*"],
      "@modules/*": ["./modules/*"],
      "@routes/*": ["./routes/*"],
      "@core/*": ["./*"]
    },      
                                
    /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */
    "allowJs": true,

    /* Specify an output folder for all emitted files. */
    "outDir": "../.tsc/core",

    /* Disable emitting files if any type checking errors are reported. */
    "noEmitOnError": true,

    /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */
    "esModuleInterop": true,

    /* Specify library files to be included in the compilation. */
    "lib": ["ES2021"], //@tsconfig/node16

    /* Specify type declaration files to be included in compilation. */
    "types": ["node"],

    /* Ensure that casing is correct in imports. */
    "forceConsistentCasingInFileNames": true,

    /* Enable all strict type-checking options. */
    "strict": true,

    /* Skip type checking all .d.ts files. */
    "skipLibCheck": true
  },
  "include": [
    "**/*",
    "../shared/",
    "../dynamicAds2.json",
  ],
  "references": [
    { "path": "../shared" }
  ]
}