import fs, { PathLike } from 'fs'; import csv from 'csv-parser'; export async function readCsvFile( filePath: PathLike | string ): Promise> { return new Promise((resolve, reject) => { const results: Record = {}; fs.createReadStream(filePath) .pipe(csv({ headers: false })) .on('data', (data) => { // Skip the first row (headers) if (!data[0].startsWith('#')) { results[data[0]] = data[1] as T; } }) .on('end', () => { resolve(results); }) .on('error', (err) => { reject(err); }); }); }