Но второй раз это уже не сработает.
Промис уже будет в разрешенном состоянии
Лучше так.
function doSomething(){
doSomeStuff();
const waitClick = () => {
doSomeStuffAfter();
document.getElementById('button-1').removeEventListener('click', waitClick)
}
document.getElementById('button-1').addEventListener('click', waitClick)
}