function rebuildAllFrameworks({ type, restartWithFramework, useCi }) {
  let types = type || ["keyed", "non-keyed"];
  console.log(`Rebuild all frameworks. ci: ${useCi}, restartWith: ${restartWithFramework}, types: ${types}`);

  let frameworks = getFrameworks();
  frameworks = frameworks.filter(f => types.includes(f.type));
  const skippableFrameworks = takeWhile(frameworks, (framework) =>
    shouldSkipFramework(framework, restartWithFramework)
  );
  const buildableFrameworks = frameworks.slice(skippableFrameworks.length);

  // console.log("Building frameworks:", buildableFrameworks);

  for (const framework of buildableFrameworks) {
    buildFramework(framework, useCi);
  }

  console.log("All frameworks were built!");
}
@param {Object} options
@param {string} options.restartWithFramework
@param {boolean} options.useCi