Vous pouvez essayer de convertir la liste des résultats en documents Mongoose et d'envelopper le résultat dans une promesse en tant que :
Company.aggregate(pipeline).exec((err, result) =>
(
new Promise((resolve, reject) => {
if (err) {
reject(err)
} else {
resolve(result.map(doc => {
delete doc.company_users;
return new Company( doc );
}))
}
})
))