async function readFolders (folderPath, skipSet) {
  try {
    const entries = await fs.promises.readdir(folderPath, { withFileTypes: true })
    return entries
      .filter((entry) => entry.isDirectory() && !skipSet.has(entry.name) && !entry.name.startsWith('.'))
      .map((entry) => entry.name)
  }
  catch (err) {
    throw new Error(`Error reading directory: ${ err.message }`)
  }
}
Reads directories in the base folder, skipping specified folders.
@param {string} folderPath - The path of the base folder.
@param {Set<string>} skipSet - Set of folder names to skip.
@returns {Promise<string[]>} - List of folder names.