diff --git a/.gitignore b/.gitignore index 80b250ffe7..d83ac7684b 100644 --- a/.gitignore +++ b/.gitignore @@ -78,3 +78,6 @@ retire-report.json dump.rdb .archiver_shadow/ .snapshots/ + +## ts-standard output +ts_standard_output.txt diff --git a/package.json b/package.json index a5c9e93e95..38832f8a5d 100644 --- a/package.json +++ b/package.json @@ -150,6 +150,7 @@ "tinycon": "0.6.8", "toobusy-js": "0.5.1", "tough-cookie": "6.0.0", + "ts-standard": "^12.0.2", "undici": "^7.10.0", "validator": "13.15.26", "webpack": "5.104.1", diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000000..cec4a3a4be --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,44 @@ +{ + // 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": [], + // 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, + } +}