Вообще-то да.
Я попробовал вот так
function bar() {
fs.readFile('_moment.js', (err, data) => {
console.log('file');
});
}
async function foo() {
await bar();
console.log('ok');
}
foo();
и так
function bar() {
return new Promise( resolve => {
fs.readFile('_moment.js', (err, data) => {
console.log('file');
resolve();
});
});
}
async function foo() {
await bar();
console.log('ok');
}
foo();
Вывод в разном порядке.
await на функции без промисов не действует.
Внутренности функции надо заворачивать в промис в любом случае - предполагается у него then или нет.