{
	"compilerOptions": {
		"rootDir": "src",
		"outDir": "generated/types",

		"declaration": true,
		// helps to click "implementation" and go to the source code
		"declarationMap": true,
		"emitDeclarationOnly": true,
		"preserveWatchOutput": true,
		"pretty": false,

		"allowJs": true,
		"checkJs": true,
		"strict": true,
		"noImplicitAny": false,
		// `true` breaks inference
		"strictNullChecks": false,
		"skipLibCheck": true,
		"resolveJsonModule": true,

		"module": "NodeNext",
		"moduleResolution": "NodeNext",
		"target": "ESNext",
		"lib": ["ESNext", "DOM"],

		"jsx": "preserve",
		"jsxImportSource": "pota"
	},
	"include": ["src"],
	// hand-maintained .d.ts files that src/ JSDoc needs for
	// type-checking (ambient types like JSX, Accessor, Dynamic).
	// These are outside "include" so tsc won't find them
	// automatically — listing them here makes their types globally
	// available to the checked source files. They are NOT emitted
	// to generated/types/ (tsc skips .d.ts during emit).
	"files": [
		"typescript/public/components.d.ts",
		"typescript/public/pota.d.ts",
		"typescript/jsx/components.d.ts",
		"typescript/jsx/namespace.d.ts"
	],
	"exclude": ["node_modules", "projects"]
}
