# ts-r > Fast TypeScript tooling written from scratch in Rust: ts-r-dev, ts-r-build, ts-r-check, ts-r-lint, ts-r-run and ts-r-lsp, plus a tiny ts-r launcher. Each tool is a separate binary that works on its own next to tsc, ESLint and Vite. Alpha: install from npm with `npm install --save-dev ts-r@next`. Every page below has a Markdown version at the same address with `index.md` appended. ## Docs - [ts-r docs](https://ts-r.dev/docs/index.md): Six separate Rust tools for TypeScript, each usable on its own next to tsc, ESLint and Vite. What works today, how to install it, and every error code. - [Getting started](https://ts-r.dev/docs/getting-started/index.md): Install the ts-r tools from npm, or build them from source, and try each one next to tsc, ESLint and Vite. - [ts-r-dev: dev server with hot reload](https://ts-r.dev/docs/tools/ts-r-dev/index.md): A dev server with hot module replacement and Vite's import.meta.hot API. No vite.config support yet. - [ts-r-build: bundler and minifier](https://ts-r.dev/docs/tools/ts-r-build/index.md): An esbuild-compatible bundler and minifier. Same flags as esbuild 0.28.2, ES2022 and later targets, no plugins or CSS bundling yet. - [ts-r-check: type checker](https://ts-r.dev/docs/tools/ts-r-check/index.md): A type checker with tsc's command line and output format. It reports only what it is sure of; many checks are still missing. - [ts-r-lint: linter](https://ts-r.dev/docs/tools/ts-r-lint/index.md): A linter with 103 ESLint and typescript-eslint rules that reads eslint.config, .oxlintrc.json or biome.json. No type-aware rules yet. - [ts-r-run: run TypeScript with Node](https://ts-r.dev/docs/tools/ts-r-run/index.md): Runs a TypeScript file on the Node you already have, like tsx or ts-node. Needs Node 22.15 or later. Compiles the module graph once and caches it. - [ts-r-lsp: language server](https://ts-r.dev/docs/tools/ts-r-lsp/index.md): One shared, memory-budgeted language server per workspace. Runs your project's TypeScript or the ts-r checker, plus ts-r-lint diagnostics. - [Sound mode](https://ts-r.dev/docs/sound-mode/index.md): An opt-in mode where a static type is a guarantee about the runtime value. 14 rules, parse validators, escape hatches. Pre-alpha. - [Compatibility and status](https://ts-r.dev/docs/status/index.md): What ts-r matches today against tsc 7, esbuild and ESLint, and how the top 1,000 npm packages fare. Generated from ecosystem/STATUS.md and the crates' notes. - [Benchmarks](https://ts-r.dev/benchmarks/): measured numbers for every tool, each with its method and source commit. Raw data: https://ts-r.dev/data/bench.json ## Error codes - [TS1002](https://ts-r.dev/errors/TS1002/index.md): Unterminated string literal. - [TS1003](https://ts-r.dev/errors/TS1003/index.md): Identifier expected. - [TS1005](https://ts-r.dev/errors/TS1005/index.md): '…' expected. - [TS1011](https://ts-r.dev/errors/TS1011/index.md): An element access expression should take an argument. - [TS1013](https://ts-r.dev/errors/TS1013/index.md): A rest parameter or binding pattern may not have a trailing comma. - [TS1028](https://ts-r.dev/errors/TS1028/index.md): Accessibility modifier already seen. - [TS1029](https://ts-r.dev/errors/TS1029/index.md): '…' modifier must precede '…' modifier. - [TS1030](https://ts-r.dev/errors/TS1030/index.md): '…' modifier already seen. - [TS1042](https://ts-r.dev/errors/TS1042/index.md): '…' modifier cannot be used here. - [TS1044](https://ts-r.dev/errors/TS1044/index.md): '…' modifier cannot appear on a module or namespace element. - [TS1068](https://ts-r.dev/errors/TS1068/index.md): Unexpected token. A constructor, method, accessor, or property was expected. - [TS1070](https://ts-r.dev/errors/TS1070/index.md): '…' modifier cannot appear on a type member. - [TS1090](https://ts-r.dev/errors/TS1090/index.md): '…' modifier cannot appear on a parameter. - [TS1097](https://ts-r.dev/errors/TS1097/index.md): '…' list cannot be empty. - [TS1100](https://ts-r.dev/errors/TS1100/index.md): Invalid use of '…' in strict mode. - [TS1101](https://ts-r.dev/errors/TS1101/index.md): 'with' statements are not allowed in strict mode. - [TS1102](https://ts-r.dev/errors/TS1102/index.md): 'delete' cannot be called on an identifier in strict mode. - [TS1109](https://ts-r.dev/errors/TS1109/index.md): Expression expected. - [TS1110](https://ts-r.dev/errors/TS1110/index.md): Type expected. - [TS1114](https://ts-r.dev/errors/TS1114/index.md): Duplicate label '…'. - [TS1117](https://ts-r.dev/errors/TS1117/index.md): An object literal cannot have multiple properties with the same name. - [TS1118](https://ts-r.dev/errors/TS1118/index.md): An object literal cannot have multiple get/set accessors with the same name. - [TS1119](https://ts-r.dev/errors/TS1119/index.md): An object literal cannot have property and accessor with the same name. - [TS1121](https://ts-r.dev/errors/TS1121/index.md): Octal literals are not allowed. Use the syntax '…'. - [TS1124](https://ts-r.dev/errors/TS1124/index.md): Digit expected. - [TS1125](https://ts-r.dev/errors/TS1125/index.md): Hexadecimal digit expected. - [TS1127](https://ts-r.dev/errors/TS1127/index.md): Invalid character. - [TS1128](https://ts-r.dev/errors/TS1128/index.md): Declaration or statement expected. - [TS1131](https://ts-r.dev/errors/TS1131/index.md): Property or signature expected. - [TS1134](https://ts-r.dev/errors/TS1134/index.md): Variable declaration expected. - [TS1135](https://ts-r.dev/errors/TS1135/index.md): Argument expression expected. - [TS1136](https://ts-r.dev/errors/TS1136/index.md): Property assignment expected. - [TS1138](https://ts-r.dev/errors/TS1138/index.md): Parameter declaration expected. - [TS1141](https://ts-r.dev/errors/TS1141/index.md): String literal expected. - [TS1146](https://ts-r.dev/errors/TS1146/index.md): Declaration expected. - [TS1160](https://ts-r.dev/errors/TS1160/index.md): Unterminated template literal. - [TS1162](https://ts-r.dev/errors/TS1162/index.md): An object member cannot be declared optional. - [TS1163](https://ts-r.dev/errors/TS1163/index.md): A 'yield' expression is only allowed in a generator body. - [TS1181](https://ts-r.dev/errors/TS1181/index.md): Array element destructuring pattern expected. - [TS1184](https://ts-r.dev/errors/TS1184/index.md): Modifiers cannot appear here. - [TS1192](https://ts-r.dev/errors/TS1192/index.md): Module '…' has no default export. - [TS1196](https://ts-r.dev/errors/TS1196/index.md): Catch clause variable type annotation must be 'any' or 'unknown' if specified. - [TS1199](https://ts-r.dev/errors/TS1199/index.md): Unterminated Unicode escape sequence. - [TS1200](https://ts-r.dev/errors/TS1200/index.md): Line terminator not permitted before arrow. - [TS1206](https://ts-r.dev/errors/TS1206/index.md): Decorators are not valid here. - [TS1210](https://ts-r.dev/errors/TS1210/index.md): Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '…'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode. - [TS1212](https://ts-r.dev/errors/TS1212/index.md): Identifier expected. '…' is a reserved word in strict mode. - [TS1213](https://ts-r.dev/errors/TS1213/index.md): Identifier expected. '…' is a reserved word in strict mode. Class definitions are automatically in strict mode. - [TS1214](https://ts-r.dev/errors/TS1214/index.md): Identifier expected. '…' is a reserved word in strict mode. Modules are automatically in strict mode. - [TS1215](https://ts-r.dev/errors/TS1215/index.md): Invalid use of '…'. Modules are automatically in strict mode. - [TS1243](https://ts-r.dev/errors/TS1243/index.md): '…' modifier cannot be used with '…' modifier. - [TS1244](https://ts-r.dev/errors/TS1244/index.md): Abstract methods can only appear within an abstract class. - [TS1249](https://ts-r.dev/errors/TS1249/index.md): A decorator can only decorate a method implementation, not an overload. - [TS1253](https://ts-r.dev/errors/TS1253/index.md): Abstract properties can only appear within an abstract class. - [TS1344](https://ts-r.dev/errors/TS1344/index.md): A label is not allowed here. - [TS1345](https://ts-r.dev/errors/TS1345/index.md): An expression of type 'void' cannot be tested for truthiness. - [TS1351](https://ts-r.dev/errors/TS1351/index.md): An identifier or keyword cannot immediately follow a numeric literal. - [TS1359](https://ts-r.dev/errors/TS1359/index.md): Identifier expected. '…' is a reserved word that cannot be used here. - [TS1360](https://ts-r.dev/errors/TS1360/index.md): Type '…' does not satisfy the expected type '…'. - [TS1381](https://ts-r.dev/errors/TS1381/index.md): Unexpected token. Did you mean `{'}'}` or `}`? - [TS1382](https://ts-r.dev/errors/TS1382/index.md): Unexpected token. Did you mean `{'>'}` or `>`? - [TS1433](https://ts-r.dev/errors/TS1433/index.md): Neither decorators nor modifiers may be applied to 'this' parameters. - [TS1477](https://ts-r.dev/errors/TS1477/index.md): An instantiation expression cannot be followed by a property access. - [TS1489](https://ts-r.dev/errors/TS1489/index.md): Decimals with leading zeros are not allowed. - [TS1497](https://ts-r.dev/errors/TS1497/index.md): Expression must be enclosed in parentheses to be used as a decorator. - [TS1499](https://ts-r.dev/errors/TS1499/index.md): Unknown regular expression flag. - [TS1500](https://ts-r.dev/errors/TS1500/index.md): Duplicate regular expression flag. - [TS1502](https://ts-r.dev/errors/TS1502/index.md): The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously. - [TS2300](https://ts-r.dev/errors/TS2300/index.md): Duplicate identifier '…'. - [TS2304](https://ts-r.dev/errors/TS2304/index.md): Cannot find name '…'. - [TS2305](https://ts-r.dev/errors/TS2305/index.md): Module '…' has no exported member '…'. - [TS2307](https://ts-r.dev/errors/TS2307/index.md): Cannot find module '…' or its corresponding type declarations. - [TS2314](https://ts-r.dev/errors/TS2314/index.md): Generic type '…' requires … type argument(s). - [TS2315](https://ts-r.dev/errors/TS2315/index.md): Type '…' is not generic. - [TS2320](https://ts-r.dev/errors/TS2320/index.md): Interface '…' cannot simultaneously extend types '…' and '…'. - [TS2322](https://ts-r.dev/errors/TS2322/index.md): Type '…' is not assignable to type '…'. - [TS2339](https://ts-r.dev/errors/TS2339/index.md): Property '…' does not exist on type '…'. - [TS2341](https://ts-r.dev/errors/TS2341/index.md): Property '…' is private and only accessible within class '…'. - [TS2344](https://ts-r.dev/errors/TS2344/index.md): Type '…' does not satisfy the constraint '…'. - [TS2345](https://ts-r.dev/errors/TS2345/index.md): Argument of type '…' is not assignable to parameter of type '…'. - [TS2348](https://ts-r.dev/errors/TS2348/index.md): Value of type '…' is not callable. Did you mean to include 'new'? - [TS2349](https://ts-r.dev/errors/TS2349/index.md): This expression is not callable. - [TS2351](https://ts-r.dev/errors/TS2351/index.md): This expression is not constructable. - [TS2352](https://ts-r.dev/errors/TS2352/index.md): Conversion of type '…' to type '…' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. - [TS2353](https://ts-r.dev/errors/TS2353/index.md): Object literal may only specify known properties, and '…' does not exist in type '…'. - [TS2355](https://ts-r.dev/errors/TS2355/index.md): A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value. - [TS2356](https://ts-r.dev/errors/TS2356/index.md): An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type. - [TS2357](https://ts-r.dev/errors/TS2357/index.md): The operand of an increment or decrement operator must be a variable or a property access. - [TS2358](https://ts-r.dev/errors/TS2358/index.md): The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter. - [TS2359](https://ts-r.dev/errors/TS2359/index.md): The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method. - [TS2362](https://ts-r.dev/errors/TS2362/index.md): The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type. - [TS2363](https://ts-r.dev/errors/TS2363/index.md): The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type. - [TS2365](https://ts-r.dev/errors/TS2365/index.md): Operator '…' cannot be applied to types '…' and '…'. - [TS2366](https://ts-r.dev/errors/TS2366/index.md): Function lacks ending return statement and return type does not include 'undefined'. - [TS2367](https://ts-r.dev/errors/TS2367/index.md): This comparison appears to be unintentional because the types '…' and '…' have no overlap. - [TS2369](https://ts-r.dev/errors/TS2369/index.md): A parameter property is only allowed in a constructor implementation. - [TS2383](https://ts-r.dev/errors/TS2383/index.md): Overload signatures must all be exported or non-exported. - [TS2384](https://ts-r.dev/errors/TS2384/index.md): Overload signatures must all be ambient or non-ambient. - [TS2385](https://ts-r.dev/errors/TS2385/index.md): Overload signatures must all be public, private or protected. - [TS2386](https://ts-r.dev/errors/TS2386/index.md): Overload signatures must all be optional or required. - [TS2387](https://ts-r.dev/errors/TS2387/index.md): Function overload must be static. - [TS2388](https://ts-r.dev/errors/TS2388/index.md): Function overload must not be static. - [TS2389](https://ts-r.dev/errors/TS2389/index.md): Function implementation name must be '…'. - [TS2390](https://ts-r.dev/errors/TS2390/index.md): Constructor implementation is missing. - [TS2391](https://ts-r.dev/errors/TS2391/index.md): Function implementation is missing or not immediately following the declaration. - [TS2392](https://ts-r.dev/errors/TS2392/index.md): Multiple constructor implementations are not allowed. - [TS2393](https://ts-r.dev/errors/TS2393/index.md): Duplicate function implementation. - [TS2394](https://ts-r.dev/errors/TS2394/index.md): This overload signature is not compatible with its implementation signature. - [TS2403](https://ts-r.dev/errors/TS2403/index.md): Subsequent variable declarations must have the same type. Variable '…' must be of type '…', but here has type '…'. - [TS2407](https://ts-r.dev/errors/TS2407/index.md): The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '…'. - [TS2411](https://ts-r.dev/errors/TS2411/index.md): Property '…' of type '…' is not assignable to '…' index type '…'. - [TS2413](https://ts-r.dev/errors/TS2413/index.md): '…' index type '…' is not assignable to '…' index type '…'. - [TS2415](https://ts-r.dev/errors/TS2415/index.md): Class '…' incorrectly extends base class '…'. - [TS2416](https://ts-r.dev/errors/TS2416/index.md): Property '…' in type '…' is not assignable to the same property in base type '…'. - [TS2417](https://ts-r.dev/errors/TS2417/index.md): Class static side '…' incorrectly extends base class static side '…'. - [TS2420](https://ts-r.dev/errors/TS2420/index.md): Class '…' incorrectly implements interface '…'. - [TS2430](https://ts-r.dev/errors/TS2430/index.md): Interface '…' incorrectly extends interface '…'. - [TS2435](https://ts-r.dev/errors/TS2435/index.md): Ambient modules cannot be nested in other modules or namespaces. - [TS2445](https://ts-r.dev/errors/TS2445/index.md): Property '…' is protected and only accessible within class '…' and its subclasses. - [TS2447](https://ts-r.dev/errors/TS2447/index.md): The '…' operator is not allowed for boolean types. Consider using '…' instead. - [TS2448](https://ts-r.dev/errors/TS2448/index.md): Block-scoped variable '…' used before its declaration. - [TS2449](https://ts-r.dev/errors/TS2449/index.md): Class '…' used before its declaration. - [TS2450](https://ts-r.dev/errors/TS2450/index.md): Enum '…' used before its declaration. - [TS2451](https://ts-r.dev/errors/TS2451/index.md): Cannot redeclare block-scoped variable '…'. - [TS2454](https://ts-r.dev/errors/TS2454/index.md): Variable '…' is used before being assigned. - [TS2464](https://ts-r.dev/errors/TS2464/index.md): A computed property name must be of type 'string', 'number', 'symbol', or 'any'. - [TS2469](https://ts-r.dev/errors/TS2469/index.md): The '…' operator cannot be applied to type 'symbol'. - [TS2488](https://ts-r.dev/errors/TS2488/index.md): Type '…' must have a '[Symbol.iterator]()' method that returns an iterator. - [TS2493](https://ts-r.dev/errors/TS2493/index.md): Tuple type '…' of length '…' has no element at index '…'. - [TS2503](https://ts-r.dev/errors/TS2503/index.md): Cannot find namespace '…'. - [TS2511](https://ts-r.dev/errors/TS2511/index.md): Cannot create an instance of an abstract class. - [TS2512](https://ts-r.dev/errors/TS2512/index.md): Overload signatures must all be abstract or non-abstract. - [TS2515](https://ts-r.dev/errors/TS2515/index.md): Non-abstract class '…' does not implement inherited abstract member … from class '…'. - [TS2528](https://ts-r.dev/errors/TS2528/index.md): A module cannot have multiple default exports. - [TS2531](https://ts-r.dev/errors/TS2531/index.md): Object is possibly 'null'. - [TS2532](https://ts-r.dev/errors/TS2532/index.md): Object is possibly 'undefined'. - [TS2534](https://ts-r.dev/errors/TS2534/index.md): A function returning 'never' cannot have a reachable end point. - [TS2538](https://ts-r.dev/errors/TS2538/index.md): Type '…' cannot be used as an index type. - [TS2540](https://ts-r.dev/errors/TS2540/index.md): Cannot assign to '…' because it is a read-only property. - [TS2542](https://ts-r.dev/errors/TS2542/index.md): Index signature in type '…' only permits reading. - [TS2551](https://ts-r.dev/errors/TS2551/index.md): Property '…' does not exist on type '…'. Did you mean '…'? - [TS2552](https://ts-r.dev/errors/TS2552/index.md): Cannot find name '…'. Did you mean '…'? - [TS2554](https://ts-r.dev/errors/TS2554/index.md): Expected … arguments, but got …. - [TS2555](https://ts-r.dev/errors/TS2555/index.md): Expected at least … arguments, but got …. - [TS2556](https://ts-r.dev/errors/TS2556/index.md): A spread argument must either have a tuple type or be passed to a rest parameter. - [TS2558](https://ts-r.dev/errors/TS2558/index.md): Expected … type arguments, but got …. - [TS2559](https://ts-r.dev/errors/TS2559/index.md): Type '…' has no properties in common with type '…'. - [TS2561](https://ts-r.dev/errors/TS2561/index.md): Object literal may only specify known properties, but '…' does not exist in type '…'. Did you mean to write '…'? - [TS2564](https://ts-r.dev/errors/TS2564/index.md): Property '…' has no initializer and is not definitely assigned in the constructor. - [TS2567](https://ts-r.dev/errors/TS2567/index.md): Enum declarations can only merge with namespace or other enum declarations. - [TS2575](https://ts-r.dev/errors/TS2575/index.md): No overload expects … arguments, but overloads do exist that expect either … or … arguments. - [TS2576](https://ts-r.dev/errors/TS2576/index.md): Property '…' does not exist on type '…'. Did you mean to access the static member '…' instead? - [TS2578](https://ts-r.dev/errors/TS2578/index.md): Unused '@ts-expect-error' directive. - [TS2584](https://ts-r.dev/errors/TS2584/index.md): Cannot find name '…'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'. - [TS2588](https://ts-r.dev/errors/TS2588/index.md): Cannot assign to '…' because it is a constant. - [TS2589](https://ts-r.dev/errors/TS2589/index.md): Type instantiation is excessively deep and possibly infinite. - [TS2591](https://ts-r.dev/errors/TS2591/index.md): Cannot find name '…'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig. - [TS2592](https://ts-r.dev/errors/TS2592/index.md): Cannot find name '…'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig. - [TS2593](https://ts-r.dev/errors/TS2593/index.md): Cannot find name '…'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig. - [TS2610](https://ts-r.dev/errors/TS2610/index.md): '…' is defined as an accessor in class '…', but is overridden here in '…' as an instance property. - [TS2611](https://ts-r.dev/errors/TS2611/index.md): '…' is defined as a property in class '…', but is overridden here in '…' as an accessor. - [TS2628](https://ts-r.dev/errors/TS2628/index.md): Cannot assign to '…' because it is an enum. - [TS2629](https://ts-r.dev/errors/TS2629/index.md): Cannot assign to '…' because it is a class. - [TS2630](https://ts-r.dev/errors/TS2630/index.md): Cannot assign to '…' because it is a function. - [TS2631](https://ts-r.dev/errors/TS2631/index.md): Cannot assign to '…' because it is a namespace. - [TS2654](https://ts-r.dev/errors/TS2654/index.md): Non-abstract class '…' is missing implementations for the following members of '…': …. - [TS2664](https://ts-r.dev/errors/TS2664/index.md): Invalid module name in augmentation, module '…' cannot be found. - [TS2669](https://ts-r.dev/errors/TS2669/index.md): Augmentations for the global scope can only be directly nested in external modules or ambient module declarations. - [TS2678](https://ts-r.dev/errors/TS2678/index.md): Type '…' is not comparable to type '…'. - [TS2683](https://ts-r.dev/errors/TS2683/index.md): 'this' implicitly has type 'any' because it does not have a type annotation. - [TS2688](https://ts-r.dev/errors/TS2688/index.md): Cannot find type definition file for '…'. - [TS2693](https://ts-r.dev/errors/TS2693/index.md): '…' only refers to a type, but is being used as a value here. - [TS2694](https://ts-r.dev/errors/TS2694/index.md): Namespace '…' has no exported member '…'. - [TS2703](https://ts-r.dev/errors/TS2703/index.md): The operand of a 'delete' operator must be a property reference. - [TS2707](https://ts-r.dev/errors/TS2707/index.md): Generic type '…' requires between … and … type arguments. - [TS2708](https://ts-r.dev/errors/TS2708/index.md): Cannot use namespace '…' as a value. - [TS2717](https://ts-r.dev/errors/TS2717/index.md): Subsequent property declarations must have the same type. Property '…' must be of type '…', but here has type '…'. - [TS2720](https://ts-r.dev/errors/TS2720/index.md): Class '…' incorrectly implements class '…'. Did you mean to extend '…' and inherit its members as a subclass? - [TS2722](https://ts-r.dev/errors/TS2722/index.md): Cannot invoke an object which is possibly 'undefined'. - [TS2729](https://ts-r.dev/errors/TS2729/index.md): Property '…' is used before its initialization. - [TS2739](https://ts-r.dev/errors/TS2739/index.md): Type '…' is missing the following properties from type '…': … - [TS2740](https://ts-r.dev/errors/TS2740/index.md): Type '…' is missing the following properties from type '…': …, and … more. - [TS2741](https://ts-r.dev/errors/TS2741/index.md): Property '…' is missing in type '…' but required in type '…'. - [TS2749](https://ts-r.dev/errors/TS2749/index.md): '…' refers to a value, but is being used as a type here. Did you mean 'typeof …'? - [TS2769](https://ts-r.dev/errors/TS2769/index.md): No overload matches this call. - [TS2790](https://ts-r.dev/errors/TS2790/index.md): The operand of a 'delete' operator must be optional. - [TS2882](https://ts-r.dev/errors/TS2882/index.md): Cannot find module or type declarations for side-effect import of '…'. - [TS4104](https://ts-r.dev/errors/TS4104/index.md): The type '…' is 'readonly' and cannot be assigned to the mutable type '…'. - [TS4112](https://ts-r.dev/errors/TS4112/index.md): This member cannot have an 'override' modifier because its containing class '…' does not extend another class. - [TS4113](https://ts-r.dev/errors/TS4113/index.md): This member cannot have an 'override' modifier because it is not declared in the base class '…'. - [TS4114](https://ts-r.dev/errors/TS4114/index.md): This member must have an 'override' modifier because it overrides a member in the base class '…'. - [TS4115](https://ts-r.dev/errors/TS4115/index.md): This parameter property must have an 'override' modifier because it overrides a member in base class '…'. - [TS4127](https://ts-r.dev/errors/TS4127/index.md): This member cannot have an 'override' modifier because its name is dynamic. - [TS5052](https://ts-r.dev/errors/TS5052/index.md): Option '…' cannot be specified without specifying option '…'. - [TS5053](https://ts-r.dev/errors/TS5053/index.md): Option '…' cannot be specified with option '…'. - [TS5055](https://ts-r.dev/errors/TS5055/index.md): Cannot write file '…' because it would overwrite input file. - [TS5061](https://ts-r.dev/errors/TS5061/index.md): Pattern '…' can have at most one '*' character. - [TS5062](https://ts-r.dev/errors/TS5062/index.md): Substitution '…' in pattern '…' can have at most one '*' character. - [TS5069](https://ts-r.dev/errors/TS5069/index.md): Option '…' cannot be specified without specifying option '…' or option '…'. - [TS5076](https://ts-r.dev/errors/TS5076/index.md): '…' and '…' operations cannot be mixed without parentheses. - [TS5090](https://ts-r.dev/errors/TS5090/index.md): Non-relative paths are not allowed. Did you forget a leading './'? - [TS5095](https://ts-r.dev/errors/TS5095/index.md): Option '…' can only be used when 'module' is set to 'preserve', 'commonjs', or 'es2015' or later. - [TS5102](https://ts-r.dev/errors/TS5102/index.md): Option '…' has been removed. Please remove it from your configuration. - [TS5110](https://ts-r.dev/errors/TS5110/index.md): Option 'module' must be set to '…' when option 'moduleResolution' is set to '…'. - [TS6053](https://ts-r.dev/errors/TS6053/index.md): File '…' not found. - [TS6133](https://ts-r.dev/errors/TS6133/index.md): '…' is declared but its value is never read. - [TS6142](https://ts-r.dev/errors/TS6142/index.md): Module '…' was resolved to '…', but '--jsx' is not set. - [TS6188](https://ts-r.dev/errors/TS6188/index.md): Numeric separators are not allowed here. - [TS6189](https://ts-r.dev/errors/TS6189/index.md): Multiple consecutive numeric separators are not permitted. - [TS6196](https://ts-r.dev/errors/TS6196/index.md): '…' is declared but never used. - [TS7006](https://ts-r.dev/errors/TS7006/index.md): Parameter '…' implicitly has an '…' type. - [TS7009](https://ts-r.dev/errors/TS7009/index.md): 'new' expression, whose target lacks a construct signature, implicitly has an 'any' type. - [TS7010](https://ts-r.dev/errors/TS7010/index.md): '…', which lacks return-type annotation, implicitly has an '…' return type. - [TS7013](https://ts-r.dev/errors/TS7013/index.md): Construct signature, which lacks return-type annotation, implicitly has an 'any' return type. - [TS7015](https://ts-r.dev/errors/TS7015/index.md): Element implicitly has an 'any' type because index expression is not of type 'number'. - [TS7016](https://ts-r.dev/errors/TS7016/index.md): Could not find a declaration file for module '…'. '…' implicitly has an 'any' type. - [TS7026](https://ts-r.dev/errors/TS7026/index.md): JSX element implicitly has type 'any' because no interface 'JSX.…' exists. - [TS7027](https://ts-r.dev/errors/TS7027/index.md): Unreachable code detected. - [TS7028](https://ts-r.dev/errors/TS7028/index.md): Unused label. - [TS7032](https://ts-r.dev/errors/TS7032/index.md): Property '…' implicitly has type 'any', because its set accessor lacks a parameter type annotation. - [TS7053](https://ts-r.dev/errors/TS7053/index.md): Element implicitly has an 'any' type because expression of type '…' can't be used to index type '…'. - [TS8002](https://ts-r.dev/errors/TS8002/index.md): 'import ... =' can only be used in TypeScript files. - [TS8003](https://ts-r.dev/errors/TS8003/index.md): 'export =' can only be used in TypeScript files. - [TS8004](https://ts-r.dev/errors/TS8004/index.md): Type parameter declarations can only be used in TypeScript files. - [TS8005](https://ts-r.dev/errors/TS8005/index.md): 'implements' clauses can only be used in TypeScript files. - [TS8006](https://ts-r.dev/errors/TS8006/index.md): '…' declarations can only be used in TypeScript files. - [TS8008](https://ts-r.dev/errors/TS8008/index.md): Type aliases can only be used in TypeScript files. - [TS8009](https://ts-r.dev/errors/TS8009/index.md): The '…' modifier can only be used in TypeScript files. - [TS8010](https://ts-r.dev/errors/TS8010/index.md): Type annotations can only be used in TypeScript files. - [TS8011](https://ts-r.dev/errors/TS8011/index.md): Type arguments can only be used in TypeScript files. - [TS8012](https://ts-r.dev/errors/TS8012/index.md): Parameter modifiers can only be used in TypeScript files. - [TS8013](https://ts-r.dev/errors/TS8013/index.md): Non-null assertions can only be used in TypeScript files. - [TS8016](https://ts-r.dev/errors/TS8016/index.md): Type assertion expressions can only be used in TypeScript files. - [TS8017](https://ts-r.dev/errors/TS8017/index.md): Signature declarations can only be used in TypeScript files. - [TS8037](https://ts-r.dev/errors/TS8037/index.md): Type satisfaction expressions can only be used in TypeScript files. - [TS17002](https://ts-r.dev/errors/TS17002/index.md): Expected corresponding JSX closing tag for '…'. - [TS17004](https://ts-r.dev/errors/TS17004/index.md): Cannot use JSX unless the '--jsx' flag is provided. - [TS17006](https://ts-r.dev/errors/TS17006/index.md): An unary expression with the '…' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses. - [TS17007](https://ts-r.dev/errors/TS17007/index.md): A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses. - [TS17008](https://ts-r.dev/errors/TS17008/index.md): JSX element '…' has no corresponding closing tag. - [TS18013](https://ts-r.dev/errors/TS18013/index.md): Property '…' is not accessible outside class '…' because it has a private identifier. - [TS18046](https://ts-r.dev/errors/TS18046/index.md): '…' is of type 'unknown'. - [TS18047](https://ts-r.dev/errors/TS18047/index.md): '…' is possibly 'null'. - [TS18048](https://ts-r.dev/errors/TS18048/index.md): '…' is possibly 'undefined'. - [TS18049](https://ts-r.dev/errors/TS18049/index.md): '…' is possibly 'null' or 'undefined'. - [TS18050](https://ts-r.dev/errors/TS18050/index.md): The value '…' cannot be used here. - [TS99001](https://ts-r.dev/errors/TS99001/index.md): Maximum nesting depth exceeded; the rest of this construct was skipped. - [TS99002](https://ts-r.dev/errors/TS99002/index.md): File is too large to parse (over 4 GiB). - [TS99003](https://ts-r.dev/errors/TS99003/index.md): The parser stopped making progress; the rest of this file was skipped. - [TSR0001](https://ts-r.dev/errors/TSR0001/index.md): '@ts-r-unsafe' needs a reason: write '// @ts-r-unsafe: '. (sound mode) - [TSR0002](https://ts-r.dev/errors/TSR0002/index.md): Unused '@ts-r-unsafe' directive: the next line has no sound-mode error. (sound mode) - [TSR0003](https://ts-r.dev/errors/TSR0003/index.md): Unknown sound-mode rule '…' in '@ts-r-unsafe'. Rules are S-01 to S-14. (sound mode) - [TSR0004](https://ts-r.dev/errors/TSR0004/index.md): Unknown level '…' in '@ts-r' pragma. Use 'off', 'strict', 'sound' or 'contracts'. (sound mode) - [TSR0005](https://ts-r.dev/errors/TSR0005/index.md): The '@ts-r' pragma must come before the first statement; this one is ignored. (sound mode) - [TSR0010](https://ts-r.dev/errors/TSR0010/index.md): … (sound mode enables 'isolatedDeclarations'). (sound mode) - [TSR0011](https://ts-r.dev/errors/TSR0011/index.md): … (sound mode enables '…'). (sound mode) - [TSR0020](https://ts-r.dev/errors/TSR0020/index.md): Invalid sound-mode configuration: …. (sound mode) - [TSR0101](https://ts-r.dev/errors/TSR0101/index.md): Type 'any' is not allowed in sound mode. Use 'unknown', a type parameter or a specific type. (sound mode) - [TSR0102](https://ts-r.dev/errors/TSR0102/index.md): '…' is 'unknown' in sound mode because '…' declares it as 'any'. Narrow it or parse it with 'parse'. (sound mode) - [TSR0103](https://ts-r.dev/errors/TSR0103/index.md): Calling a value of type 'Function' returns 'any'. Give '…' a function type. (sound mode) - [TSR0201](https://ts-r.dev/errors/TSR0201/index.md): Type assertion from '…' to '…' narrows the type. Use 'parse<…>', 'is<…>' or a narrowing check instead. (sound mode) - [TSR0301](https://ts-r.dev/errors/TSR0301/index.md): Non-null assertion is not allowed in sound mode. Narrow '…' with a check, or use 'expect(…, "why")'. (sound mode) - [TSR0401](https://ts-r.dev/errors/TSR0401/index.md): … (sound mode enables 'noUncheckedIndexedAccess': indexed reads can be 'undefined'). (sound mode) - [TSR0402](https://ts-r.dev/errors/TSR0402/index.md): … (sound mode enables 'exactOptionalPropertyTypes': write '…?: T | undefined' to allow 'undefined'). (sound mode) - [TSR0501](https://ts-r.dev/errors/TSR0501/index.md): '…' is not assignable to '…': mutable '…' is invariant in sound mode, so writes through '…' could break '…'. Use '…' if it is only read. (sound mode) - [TSR0601](https://ts-r.dev/errors/TSR0601/index.md): Method '…' is not compatible: parameter '…' of type '…' would receive '…'. Methods are checked like functions in sound mode. (sound mode) - [TSR0701](https://ts-r.dev/errors/TSR0701/index.md): Type predicate '… is …' is not proved: when it returns true, '…' can be '…'. (sound mode) - [TSR0702](https://ts-r.dev/errors/TSR0702/index.md): Type predicate '… is …' is not proved: when it returns false, '…' can still be '…'. (sound mode) - [TSR0703](https://ts-r.dev/errors/TSR0703/index.md): Assertion '…' is not proved: the function can return normally with '…' of type '…'. (sound mode) - [TSR0801](https://ts-r.dev/errors/TSR0801/index.md): Definite assignment assertion on '…' is not allowed in sound mode. Initialise it in its declaration or the constructor. (sound mode) - [TSR0802](https://ts-r.dev/errors/TSR0802/index.md): 'this' escapes before '…' is initialised. Assign every field first. (sound mode) - [TSR0803](https://ts-r.dev/errors/TSR0803/index.md): 'this' escapes from the constructor through '…' before subclass fields are initialised. Make it '#private', or do this after construction (a static factory). (sound mode) - [TSR0901](https://ts-r.dev/errors/TSR0901/index.md): '…' may have changed since it was narrowed: '…' on line … can modify it. Copy it to a 'const' before that point. (sound mode) - [TSR0902](https://ts-r.dev/errors/TSR0902/index.md): '…' may have changed since it was narrowed: it is assigned in a closure, and '…' on line … can run that closure. (sound mode) - [TSR1001](https://ts-r.dev/errors/TSR1001/index.md): Promise from '…' is not handled. Await it, return it, or attach '.catch'. (sound mode) - [TSR1002](https://ts-r.dev/errors/TSR1002/index.md): 'void' discards a promise that can reject. Attach '.catch' first: 'void ….catch(...)'. (sound mode) - [TSR1003](https://ts-r.dev/errors/TSR1003/index.md): Async function passed where '…' expects a function returning 'void'; its promise is never handled. (sound mode) - [TSR1101](https://ts-r.dev/errors/TSR1101/index.md): Augmenting module '…' in a sound file changes its trusted types without a check. Move the augmentation to a '.d.ts' file. (sound mode) - [TSR1102](https://ts-r.dev/errors/TSR1102/index.md): Shorthand ambient module '…' makes every import 'any'. Declare its types in a '.d.ts' file. (sound mode) - [TSR1103](https://ts-r.dev/errors/TSR1103/index.md): Ambient declaration '…' in a sound file asserts a value exists without checking it. Move it to a '.d.ts' file or import the real value. (sound mode) - [TSR1201](https://ts-r.dev/errors/TSR1201/index.md): '@…' is not allowed in sound mode. Fix the error, or use '// @ts-r-unsafe: ' for sound-mode errors. (sound mode) - [TSR1202](https://ts-r.dev/errors/TSR1202/index.md): '@ts-nocheck' cannot be used in a sound file. Set the file to '// @ts-r off' instead. (sound mode) - [TSR1204](https://ts-r.dev/errors/TSR1204/index.md): Global augmentation in a sound file changes types for the whole program without a check. Move it to a '.d.ts' file. (sound mode) - [TSR1205](https://ts-r.dev/errors/TSR1205/index.md): Overload '…' is not satisfied by its implementation: called through it, the body can return '…', which is not assignable to '…'. (sound mode) - [TSR1301](https://ts-r.dev/errors/TSR1301/index.md): '…' can throw '…', which is not in its '@throws' tags. Catch it or add a '@throws' tag for it. (sound mode) - [TSR1302](https://ts-r.dev/errors/TSR1302/index.md): Exported '…' can throw '…' but has no '@throws' tag. Document it with a '@throws' tag. (sound mode) - [TSR1303](https://ts-r.dev/errors/TSR1303/index.md): Only Error objects can be thrown in sound mode; '…' is not assignable to 'Error'. (sound mode) - [TSR1304](https://ts-r.dev/errors/TSR1304/index.md): '…' can throw '…', which '…' (the member it overrides or implements) does not declare. (sound mode) - [TSR1401](https://ts-r.dev/errors/TSR1401/index.md): Value from external source '…' must be parsed before use: write 'parse(…)' with the type you expect. (sound mode) - [TSR1402](https://ts-r.dev/errors/TSR1402/index.md): '…' needs an explicit type argument in sound mode, e.g. '…(...)'. (sound mode) - [TSR1501](https://ts-r.dev/errors/TSR1501/index.md): Type '…' cannot be checked at runtime: …. (sound mode) - [TSR1502](https://ts-r.dev/errors/TSR1502/index.md): '…<…>' needs a concrete type, but '…' is a type parameter. Take a 'Guard<…>' argument and call 'guard()' at the call site. (sound mode) - [TSR1503](https://ts-r.dev/errors/TSR1503/index.md): '…' from '@ts-r.dev/guard' must be called with a type argument; it can't be used as a value. (sound mode) - [TSR1504](https://ts-r.dev/errors/TSR1504/index.md): The validator for '…' is … KB, over the … KB budget. Validate a smaller type or raise '[sound.guard] max-validator-kb'. (sound mode)