If you don't want to use a mutation observer and you just want to periodically poll to find an element, here's how to do that with async/await:
const elements = await waitForElementsToExist('div.my-class');
function waitForElementsToExist(selector, interval = 100, retriesLeft = 100) {
return new Promise((accept, reject) => {
setElementsTimeout(selector, interval, retriesLeft, accept, reject);
});
}