{
	"compilerOptions": {
		// https://www.totaltypescript.com/tsconfig-cheat-sheet
		/* transpiling */
		"lib": [
			"ES2023",
			"DOM"
		],
		"moduleResolution": "node10",
		"module": "ESNext",
		// where mjs is omitted. point package.json `exports` (import) / `module` field to these
		"outDir": "dist/mjs",
		"declaration": true,
		"sourceMap": true,
		/* base options */
		"esModuleInterop": true,
		"skipLibCheck": true,
		"target": "ES2022",
		"allowJs": true,
		"resolveJsonModule": true,
		/* strictness */
		"strict": true,
		"alwaysStrict": true,
		"noImplicitAny": true,
		"noImplicitOverride": true,
		"noUncheckedIndexedAccess": true,
		"strictNullChecks": true,
		"noImplicitThis": true,
		/* other */
		// where types are omitted. point package.json `exports` (import and require) / `types` field to these
		"declarationDir": "./dist/types",
		"allowSyntheticDefaultImports": true,
		"removeComments": true,
		"preserveConstEnums": true,
		"forceConsistentCasingInFileNames": true,
		"baseUrl": ".",
		"types": [
			"vitest/globals"
		]
	},
	"include": [
		"**/*.spec.ts",
	],
	"files": [
		"index.ts",
		"crypto.browser.ts",
	],
	"typeAcquisition": {
		"enable": true
	}
}
