{
  "extends": "../tsconfig-library-base",
	"compilerOptions": {
		"experimentalDecorators": true,
		"noImplicitReturns": true,
		"noImplicitOverride": true,
		"noUnusedLocals": true,
		"allowUnreachableCode": false,
		"strict": true,
		"exactOptionalPropertyTypes": false,
		"useUnknownInCatchVariables": false,
		"forceConsistentCasingInFileNames": true,
		"paths": {
			"vs/*": [
				"./vs/*"
			],
			"vs/nls": [
        "./vs/patches/nls"
      ]
		},
		"target": "es2022",
		"useDefineForClassFields": false,
		"lib": [
			"ES2022",
			"DOM",
			"DOM.Iterable",
			"WebWorker.ImportScripts"
		],
		"esModuleInterop": true,
		"removeComments": false,
		"preserveConstEnums": true,
		"sourceMap": false,
		"allowJs": true,
		"resolveJsonModule": true,
		"isolatedModules": true,
		"types": [
			"trusted-types",
		],
    "composite": true,
    "outDir": "../../out",
    "baseUrl": "../",
	},
	"include": [
    "./base/**/*",
    "./patches/**/*",
    "./typings/**/*",
  ],
  "exclude": [
    // Update repo folder
    "temp/",

    // Unwanted layers/modules
    "**/electron-main",
    "**/electron-sandbox",
    "**/node",
    "**/parts",
    "**/test",
    "**/sandbox",
    "**/worker",

    // Problematic files
    "base/common/amd.ts",
    "base/browser/defaultWorkerFactory.ts",
    "base/common/jsonc.js",
    "base/common/performance.js",
    "base/common/marked/marked.js",
    "base/common/network.ts"
  ]
}
