In sleep method you can return any then-able object. and not necessarily a new promise.
example :
const sleep = (t) => ({ then: (r) => setTimeout(r, t) })
const someMethod = async () => {
console.log("hi");
await sleep(5000)
console.log("bye");
}
someMethod()
_x000D_