function delay(ms, value) {
  return new Promise((resolve) => setTimeout(() => resolve(value), ms));
}

async function run() {
  console.log("Waiting...");
  const result = await delay(500, "Done!");
  console.log(result);
}

run();