{
	"compilerOptions": {
		"target": "ES2020", // Latest ECMAScript features that are widely supported by modern browsers
		"module": "ESNext", // Use ES modules
		"strict": true, // Enable all strict type checking options
		"jsx": "preserve", // Preserves JSX to be transformed by Babel or another transpiler
		"moduleResolution": "node", // Use Node.js style module resolution
		"experimentalDecorators": true,
		"esModuleInterop": true, // Enables compatibility with CommonJS modules for default imports
		"allowSyntheticDefaultImports": true, // Allow default imports from modules with no default export
		"forceConsistentCasingInFileNames": true, // Disallow inconsistently-cased references to the same file
		"useDefineForClassFields": true,
		"sourceMap": true,
		"baseUrl": "./src", // Base directory to resolve non-relative module names
		"paths": {
			"@/components/*": ["components/*"],
			"@/views/*": ["views/*"],
			"@/db/*": ["db/*"],
			"@/libs/*": ["libs/*"],
			"@/constants/*": ["constants/*"],
			"@/store/*": ["store/*"]
		},
		"lib": ["ES2020", "dom", "dom.iterable"], // Include typings for ES2020 and DOM APIs
	},
	"include": [
		"src/**/*.ts",
		"src/**/*.tsx",
		"src/**/*.vue",
		"test-playwright/**/*.ts",
		"test-playwright/**/*.tsx"
	],
	"exclude": [
		"node_modules"
	]
}