Как получить промисо-завершающий callback от асинхронной функции?
завершающий callback 
только в промисах. async/await – сахар (а сахар это вредно, вызывает привыкание) Вот, привыкли, теперь надо «слезать» )

Можно вынести таймаутность в функцию для читабельности:const waitFor = (ms) => new Promise((resolve) => setTimeout(resolve, ms));

async function test() {
    await waitFor(1000);
    return 1;
}
Если правильно понял замысел, то можно как-то так:async function test() {
    let savedResolve, sevedReject;
    const promiseForReturn = new Promise((resolve, reject) => {
        // этот колбэк отрабатывает синхронно
        sevedResolve = resolve;
        savedReject = reject;
    });
    // поэтому savedResolve и sevedReject уже доступны здесь
    sevedReject(1);
    return promiseForReturn; // промис возвращаемый test() будет связан с этим и ждать его
}
Но лучше с таким все же быть аккуратнымasync function test() {
    let savedResolve, sevedReject;
    const promiseForReturn = new Promise((resolve, reject) => {
        sevedResolve = resolve;
        savedReject = reject;
    });
    // это deadlock
    await promiseForReturn;
    sevedResolve(1);
}