import readline from 'node:readline'; const yesNo = async (question: string) => { const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); return new Promise((resolve) => { rl.question(question, (answer) => { rl.close(); const lowerAnswer = answer.toLowerCase(); switch (lowerAnswer) { case 'y': { return resolve(true); } case 'n': { return resolve(false); } default: { console.log('Invalid response. Please answer with a `y` or `n`'); return resolve(yesNo(question)); } } }); }); }; export const ask = { yesNo, };