{
  "compilerOptions": {
    "lib": ["WebWorker", "DOM", "ESNext"],
    "target": "ESNext",
    "module": "ESNext",
    "types": [], // Only want types for the browser
    "moduleDetection": "force",
    "allowJs": true,

    // Bundler mode
    "moduleResolution": "bundler",
    "allowImportingTsExtensions": true,

    // Enable declaration file generation
    "declaration": true,
    "emitDeclarationOnly": true, // Only generate declarations, no JavaScript
    "outDir": "./dist",
    "rootDir": "./src",

    // Best practices
    "strict": true,
    "skipLibCheck": true,
    "noFallthroughCasesInSwitch": true,

    // Some stricter flags (disabled by default)
    "noUnusedLocals": false,
    "noUnusedParameters": false,
    "noPropertyAccessFromIndexSignature": false
  },
  "files": [
    "./src/main/picsquish.ts",
    "./src/worker/worker.ts"
  ]
}
