Ao criar o NegociacaoService, conforme código a seguir:
import { Negociacao, NegociacaoParcial } from '../models/index';
export class NegociacaoService {
obterNegociacoes(handler: Function): Promise<Negociacao[]> {
return fetch('http://localhost:8080/dados')
.then(res => handler(res))
.then(res => res.json())
.then((dados: NegociacaoParcial[]) =>
dados
.map(dado => new Negociacao(new Date(), dado.vezes, dado.montante))
)
.catch(err => console.log(err));
}
}
Estou recebendo o erro:
Type 'Promise<void | Negociacao[]>' is not assignable to type 'Promise<Negociacao[]>'.
Type 'void | Negociacao[]' is not assignable to type 'Negociacao[]'.
Type 'void' is not assignable to type 'Negociacao[]'.ts(2322)
E caso eu altere o tipo do Promise para Promise<void | Negociacao[]> eu passo a receber erro no NegociacaoController ao usar o NegociacaoService, conforme abaixo:
Property 'forEach' does not exist on type 'void | Negociacao[]'.
Property 'forEach' does not exist on type 'void'.ts(2339)