As explained by @JoshuaKGoldberg, TypeScript doesn’t use semantic versioning (semver): “A new major version of TypeScript (e.g. 5.0.0) is released if the minor version would have exceeded 9 (e.g. 4.10.0).”
https://www.learningtypescript.com/articles/why-typescript-doesnt-follow-strict-semantic-versioning
It’s interesting that people don’t seem to be aware of that and are hesitant about upgrading to a different major version: https://majors.nullvoxpopuli.com/q?minors=on&packages=typescript