{
	"compilerOptions": {
		// Enable latest features
		"lib": ["ESNext"],
		"target": "ESNext",
		"module": "NodeNext",
		"moduleResolution": "NodeNext",
		"jsx": "react-jsx",
		"allowJs": true,

		// Library/ESM specific settings
		"declaration": true,
		"declarationMap": true,
		"sourceMap": true,
		"outDir": "./dist",
		"esModuleInterop": true,
		"forceConsistentCasingInFileNames": true,

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

		// Some stricter flags (disabled by default)
		"noUnusedLocals": false,
		"noUnusedParameters": false,
		"noPropertyAccessFromIndexSignature": false
	},
	"include": ["src/**/*.ts"],
	"exclude": ["node_modules", "dist", "src/**/*.test.ts", "src/**/*.spec.ts"]
}
