Conceitualmente, por que podemos usar
new NegociacaoDao(conexao).then(dao => dao.adiciona(new Negociacao(new Date(), 1, 200.13)))
se NegociacaoDao não retorna uma Promise? Coloquei um log em dao e ele retorna um objeto NegociacaoDao, como esperado. Eu achei que só podíamos usar then() em Promises; pode explicar esse conceito?
Obrigado.