The strict flag enables a wide range of type checking behavior that results in stronger guarantees of program correctness. Turning it on is equivalent to enabling all of the strict-mode family options, and you can then turn off individual strict-mode family checks as needed. Future versions of TypeScript may introduce additional stricter checking under this flag, so upgrades of TypeScript might result in new type errors in your program; when appropriate and possible, a corresponding flag is added to disable that behavior. The handbook's Strictness section calls out the two biggest flags in the family as noImplicitAny, which issues an error on variables whose type is implicitly inferred as any, and strictNullChecks, which makes handling null and undefined explicit instead of leaving them assignable to any other type; it also recommends that a new codebase always turn these strictness checks on. useUnknownInCatchVariables is likewise enabled under the strict family of options. Scope: tsconfig compiler options. Reviewed October 4, 2026.
Strict mode with the tsconfig strict flag
Document v1 · published by Koskamo editorial · updated 2026-10-04
Source and provenance
- Original source
- www.typescriptlang.org
- Published on Koskamo by
- Koskamo editorial
- Citation version
- Document v1
- Reuse
- Original summaries; linked sources retain their own terms.