Sé que esta es una vieja pregunta, pero recientemente enfrenté un problema similar que no se pudo resolver de esta manera, ya que tuve que devolver una matriz vacía de un tipo específico.
yo tenía
return [];
donde []
estaba el Criminal[]
tipo
Ni return: Criminal[] [];
tampocoreturn []: Criminal[];
trabajó para mí.
A primera vista Lo resuelto mediante la creación de una variable de tipo (como se informó correctamente) justo antes de devolverlo, pero (no sé cómo funcionan los motores de JavaScript) que puede crear sobrecarga y es menos legible.
Por rigor, también reportaré esta solución en mi respuesta:
let temp: Criminal[] = [];
return temp;
Finalmente encontré la conversión de tipos de TypeScript, lo que me permitió resolver el problema de una manera más concisa y legible (y tal vez eficiente):
return <Criminal[]>[];
Espero que esto ayude a los futuros lectores!