{
  // Visit https://aka.ms/tsconfig to read more about this file
  "compilerOptions": {
	// File Layout
	"rootDir": "./src",
	"outDir": "./dist",

	// Environment Settings
	// See also https://aka.ms/tsconfig/module
	"module": "nodenext",
	"target": "esnext",
	"types": ["node"],
	// For nodejs:
	// "lib": ["esnext"],
	// "types": ["node"],
	// and npm install -D @types/node

	// Other Outputs
	"sourceMap": true,
	"declaration": true,
	"declarationMap": true,

	// Stricter Typechecking Options
	// "noUncheckedIndexedAccess": true,
	// "exactOptionalPropertyTypes": true,

	// Style Options
	"noImplicitReturns": true,
	// "noImplicitOverride": true,
	// "noUnusedLocals": true,
	// "noUnusedParameters": true,
	// "noFallthroughCasesInSwitch": true,
	// "noPropertyAccessFromIndexSignature": true,

	// Recommended Options
	"strict": true,
	"jsx": "react-jsx",
	// "verbatimModuleSyntax": true,
	"isolatedModules": true,
	"noUncheckedSideEffectImports": true,
	"moduleDetection": "force",
	"skipLibCheck": true,

	// Extended options not in generated tsconfig.json
	"newLine": "lf",
	"forceConsistentCasingInFileNames": true,
	"alwaysStrict": true,

	"noImplicitThis": true,
	"strictBindCallApply": true,
	"strictFunctionTypes": true,

	"noErrorTruncation": true,
  }
}
