Microsoft introduces more granular checks for branches within return expressions in TypeScript 5.8, punts checking against conditional types in returns to TypeScript 5.9.