async
функции, как правило, не должны использоваться с API, которые не знают об обещании, потому что это приводит к безудержным обещаниям, которые не объединены в цепочку.
Если gateway.transaction.search
не поддерживает обещания, ему нужнычтобы быть обещанным:
const search = util.promisify(gateway.transaction.search).bind(gateway.transaction);
const searchResult = await search();
const response = searchResult.customerId().is(braintreeCustomerId);
Если searchResult.customerId().is(braintreeCustomerId)
не возвращает обещание, его не нужно await
изд.