import { TBaseAnswerFlow, TDependsOnAnswer, TDirectAnswer } from "./types";

export function setDirectAnswerPreset(
  sectionName: TBaseAnswerFlow["sectionName"],
  questionLabel: TBaseAnswerFlow["questionLabel"],
  questionType: TBaseAnswerFlow["questionType"],
  answer: TDirectAnswer["answer"],
): TBaseAnswerFlow & TDirectAnswer {
  return {
    sectionName,
    questionLabel,
    questionType,
    answerDependency: "directAnswer",
    answer,
  };
}

export function setDependentAnswerPreset(
  sectionName: TBaseAnswerFlow["sectionName"],
  questionLabel: TBaseAnswerFlow["questionLabel"],
  questionType: TBaseAnswerFlow["questionType"],
  keys: TDependsOnAnswer["dependsOn"]["keys"],
  getAnswer: TDependsOnAnswer["dependsOn"]["getAnswer"],
): TBaseAnswerFlow & TDependsOnAnswer {
  return {
    sectionName,
    questionLabel,
    questionType,
    answerDependency: "dependsOn",
    dependsOn: {
      keys,
      getAnswer,
    },
  };
}
