export async function wait(delay: number, fn: T): Promise> { return await Promise.all([fn, new Promise(y => setTimeout(y, delay))]).then( arr => arr[0], ) }