# tsconfig.json · versecafe/bot-face-labs

[View on GitCafe](https://git.cafe/versecafe/bot-face-labs/blob/c3c047e8176e93e41e092248fb63fbb511d00106/tsconfig.json)

Repository: [versecafe/bot-face-labs](https://git.cafe/versecafe/bot-face-labs)

Visibility: public

Requested revision: c3c047e8176e93e41e092248fb63fbb511d00106

Requested commit: c3c047e8176e93e41e092248fb63fbb511d00106

Commit: c3c047e8176e93e41e092248fb63fbb511d00106

Blob: 1cede0d8fc42d1e9a1dffb5abe3663f32b885ded

Size: 1230 bytes

[Immutable source](https://git.cafe/versecafe/bot-face-labs/blob/c3c047e8176e93e41e092248fb63fbb511d00106/tsconfig.json?format=markdown)

```
{
  "compilerOptions": {
    "target": "ESNext",
    "module": "ESNext",
    "moduleResolution": "bundler",
    "lib": ["ESNext", "DOM", "DOM.Iterable"],
    "jsx": "preserve",
    "jsxImportSource": "@solidjs/web",

    "strict": true,
    // Off deliberately. The unsafe lookups this was meant to catch were the
    // state-keyed tables, and those are now closed by `StateName` being a
    // literal union. What is left is fixed-size geometry — 48-point rings,
    // four-corner radius tuples, the shape and expression catalogues — where
    // the flag would only add fallbacks to invariants held by construction,
    // inside the per-point loops that run sixty times a second.
    "noUncheckedIndexedAccess": false,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "noFallthroughCasesInSwitch": true,
    "exactOptionalPropertyTypes": false,

    "allowImportingTsExtensions": true,
    "rewriteRelativeImportExtensions": true,
    "verbatimModuleSyntax": true,
    "isolatedModules": true,
    "noEmit": true,
    "skipLibCheck": true,
    "resolveJsonModule": true,
    "types": ["vite/client", "bun"]
  },
  "include": ["src", "vite.config.ts", "biome.json"],
  "exclude": ["node_modules", "dist"]
}

```
