Использование

setTimeout(() => {
    window.foo = 'bar';
}, 3000)


// Будет проверять 5 раз каждые 1000мс и если вернет true, выполниться вторая callback функция
waitfor(() => {
    return window.foo
}, () => {
    // ...
}, {
    count: 5,
    time: 1000
})