Да, под капотом там генераторы и промисы. Один из вариантов проверить это - транспилировать async/await код в ES5 с помощью Babel и посмотреть что получается. Я сделал
небольшой gist с тестовым проектом, там можно увидеть результат. Babel использует
regenerator для реализации генераторов.