{
  "slug": "typescript",
  "templates": {
    "base": {
      "files": [
        {
          "type": "tooling",
          "path": "tsconfig.json",
          "content": "{\r\n  \"compilerOptions\": {\r\n    \"target\": \"ES2021\",\r\n    \"module\": \"es2022\",\r\n    \"moduleResolution\": \"bundler\",\r\n    \"lib\": [\"ES2022\"],\r\n    \"allowJs\": true,\r\n    \"checkJs\": false,\r\n    \"declaration\": true,\r\n    \"sourceMap\": true,\r\n    \"outDir\": \"dist\",\r\n    \"rootDir\": \"src\",\r\n    \"removeComments\": true,\r\n\r\n    \"strict\": true,\r\n    \"noImplicitAny\": true,\r\n    \"strictNullChecks\": true,\r\n    \"strictFunctionTypes\": true,\r\n    \"strictBindCallApply\": true,\r\n    \"strictPropertyInitialization\": true,\r\n    \"noImplicitThis\": true,\r\n    \"useUnknownInCatchVariables\": true,\r\n    \"alwaysStrict\": true,\r\n    \"noUnusedLocals\": true,\r\n    \"noUnusedParameters\": true,\r\n    \"noImplicitReturns\": true,\r\n    \"noFallthroughCasesInSwitch\": true,\r\n\r\n    \"paths\": {\r\n      \"@/*\": [\"src/*\"],\r\n      \"@/shared/*\": [\"../../shared/*\"]\r\n    },\r\n    \"esModuleInterop\": true,\r\n    \"forceConsistentCasingInFileNames\": true,\r\n\r\n    /* Advanced */\r\n    \"skipLibCheck\": true,\r\n    \"resolveJsonModule\": true\r\n  },\r\n  \"tsc-alias\": {\r\n    \"resolveFullPaths\": true,\r\n    \"verbose\": false\r\n  },\r\n  \"include\": [\"src/**/*\"],\r\n  \"exclude\": [\"node_modules\", \"dist\", \"coverage\", \"**/*.test.ts\"]\r\n}\r\n"
        }
      ]
    }
  },
  "dependencies": {
    "runtime": [],
    "dev": [
      "typescript",
      "tsc-alias",
      "@types/node",
      "tsx"
    ]
  }
}
