const promisifyHandler = (element, event) => new Promise(resolve => element.addEventListner(event, resolve, {once:true}))
Promise.all([
promisifyHandler(button, 'click'),
promisifyHandler(element, 'mouseover')
]).then(handler)
вот да, плюсую промисы.
в Вашем коде ещё в хэндлер будут переданы события:
function handler([clickEvent,mouseoverEvent]){
// clickEvent.currentTarget
// mouseoverEvent.currentTarget
}