Array.prototype.find debe devolver T | undefined
Pero, por alguna razón, en mi entorno (NestJS generado automáticamente), TypeScript tiene implícitamente solo T como el tipo de retorno de dichos métodos.
¿Cómo debo hacer que TypeScript infiera automáticamente que find debe devolver T | undefined ?
Eche un vistazo a la opción del compilador strictNullChecks: https://www.typescriptlang.org/tsconfig#strictNullChecks
Cuando strictNullChecks es falso, el lenguaje ignora efectivamente los valores nulo e indefinido. Esto puede conducir a errores inesperados en tiempo de ejecución.
Cuando strictNullChecks es verdadero, nulo e indefinido tienen sus propios tipos distintos y obtendrá un error de tipo si intenta usarlos donde se espera un valor concreto.
¿Es esto lo que estás buscando?
const task: Task | undefined = this.tasks.find((task) => task.id === id);