# tsconfig.base.json · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/blob/HEAD/tsconfig.base.json)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

Requested revision: HEAD

Commit: 97be291eb1562378f055ebce0f169d1d842b53f0

Blob: 07c4224cf8d2539d6bfa3883f53b3ecf3b97eac2

Size: 3025 bytes

[Immutable source](https://git.cafe/pingdotgg/t3code/blob/97be291eb1562378f055ebce0f169d1d842b53f0/tsconfig.base.json?format=markdown)

```
{
  "compilerOptions": {
    "target": "ESNext",
    "module": "NodeNext",
    "moduleResolution": "NodeNext",
    "noEmit": true,
    "allowImportingTsExtensions": true,
    "rewriteRelativeImportExtensions": true,
    "erasableSyntaxOnly": true,
    "verbatimModuleSyntax": true,
    "strict": true,
    "noUncheckedIndexedAccess": true,
    "exactOptionalPropertyTypes": true,
    "noImplicitOverride": true,
    "useDefineForClassFields": true,
    "forceConsistentCasingInFileNames": true,
    "skipLibCheck": true,
    "allowSyntheticDefaultImports": true,
    "esModuleInterop": true,
    "resolveJsonModule": true,
    "plugins": [
      {
        "name": "@effect/language-service",
        "namespaceImportPackages": ["@effect/platform-node", "effect"],
        "effectFn": ["span", "inferred-span", "suggested-span"],
        "diagnosticSeverity": {
          "effectFnOpportunity": "suggestion",
          "anyUnknownInErrorContext": "error",
          "unsafeEffectTypeAssertion": "error",
          "instanceOfSchema": "error",
          "deterministicKeys": "error",
          "strictEffectProvide": "off",
          // We use Effect's unstable modules (http, sql) on purpose. These rules
          // also make effect-tsgo 0.47+ report false TS2790 errors on `delete`.
          "unstableApiUsage": "off",
          "experimentalApiUsage": "off",
          "missingEffectServiceDependency": "error",
          "leakingRequirements": "error",
          "globalErrorInEffectCatch": "error",
          "globalErrorInEffectFailure": "error",
          "unknownInEffectCatch": "error",
          "strictBooleanExpressions": "off",
          "lazyEffect": "off",
          "preferSchemaOverJson": "error",
          "schemaSyncInEffect": "error",
          "cryptoRandomUUID": "error",
          "cryptoRandomUUIDInEffect": "error",
          "nodeBuiltinImport": "error",
          "globalDate": "error",
          "globalDateInEffect": "error",
          "globalConsole": "error",
          "globalConsoleInEffect": "error",
          "globalRandom": "error",
          "globalRandomInEffect": "error",
          "globalTimers": "error",
          "globalTimersInEffect": "error",
          "globalFetch": "error",
          "globalFetchInEffect": "error",
          "schemaNumber": "off"
        },
        "overrides": [
          {
            "include": ["**/*.test.ts", "**/*.test.tsx"],
            "options": {
              "diagnosticSeverity": {
                "preferSchemaOverJson": "off",
                "effectFnOpportunity": "off"
              }
            }
          },
          {
            "include": [
              "**/*.spec.ts",
              "**/*.spec.tsx",
              "**/*.testkit.ts",
              "**/*.testkit.tsx",
              "**/{test,tests,testkit,testing,fixtures,integration}/**",
              "packages/provider-testing/**"
            ],
            "options": { "diagnosticSeverity": { "effectFnOpportunity": "off" } }
          }
        ]
      }
    ]
  }
}

```
