import { RequestCluster } from '../request-cluster';
import { ParsedAnswers } from './parse-answers';
import NoInformationAtAllProblem from './problems/no-information-at-all';
import { Problem } from './problems/problem';
import { UnlawfulCookieAccess } from './problems/unlawful-cookies';

export default function deduceProblems(
   answers: ParsedAnswers,
   clusters: Record<string, RequestCluster>
): Problem[] {
   const problems = [];
   if (answers.popup_type === 'none') {
      problems.push(new NoInformationAtAllProblem(answers, clusters));
   }
   if (UnlawfulCookieAccess.qualifies(answers, Object.values(clusters))) {
      problems.push(new UnlawfulCookieAccess(answers, clusters));
   }
   return problems;
}
