Búsqueda de sitios web

typescript - Comprobación estricta de tipo para el objeto devuelto por una función


¿Alguien podría ayudarme a entender por qué los comportamientos en los casos siguientes son diferentes?
Porque esperaba que fuera lo mismo, debería devolver el error.
¿Y puedo declarar el tipo de una función con un objeto de retorno "strict"? (con el comportamiento del caso 2)

// OK
const check1: () => {foo: string} = () => ({foo: 'test', bar: 'test'})


// Type '{ foo: string; bar: string; }' is not assignable to type '{ foo: string; }'.
const check2 = (): {foo: string} => ({foo: 'test', bar: 'test'})