{"version":3,"sources":["../src/types/questions.ts"],"sourcesContent":["import { QUESTION_TYPE } from '../components/Quiz/useQuizStore';\n\n/**\n * Question difficulty enumerations\n * Defines the difficulty levels for questions and activities\n */\nexport enum DIFFICULTY_LEVEL_ENUM {\n  FACIL = 'FACIL',\n  MEDIO = 'MEDIO',\n  DIFICIL = 'DIFICIL',\n}\n\n/**\n * Question status enumerations\n * Defines the possible statuses for questions in the system\n */\nexport enum QUESTION_STATUS_ENUM {\n  APROVADO = 'APROVADO',\n  REVISAR = 'REVISAR',\n  REPROVADO = 'REPROVADO',\n  DESATIVADO = 'DESATIVADO',\n  CATEGORIZACAO = 'CATEGORIZACAO',\n  DADOS_AUSENTES = 'DADOS AUSENTES',\n}\n\n/**\n * Question interface\n */\nexport interface Question {\n  id: string;\n  statement: string;\n  description: string | null;\n  questionType: QUESTION_TYPE;\n  status: QUESTION_STATUS_ENUM;\n  difficultyLevel: DIFFICULTY_LEVEL_ENUM;\n  questionBankYearId: string;\n  questionBankYear?: QuestionBankYearActivity;\n  solutionExplanation: string | null;\n  createdAt: string;\n  updatedAt: string;\n  knowledgeMatrix?: KnowledgeMatrixItemActivity[];\n  options?: QuestionOptionActivity[];\n  createdBy?: string;\n  additionalContent?: string | null;\n}\n\n/**\n * Pagination interface\n */\nexport interface Pagination {\n  page: number;\n  pageSize: number;\n  total: number;\n  totalPages: number;\n  hasNext: boolean;\n  hasPrevious: boolean;\n}\n\n/**\n * Questions filter body interface\n */\nexport interface QuestionsFilterBody {\n  questionType?: QUESTION_TYPE[];\n  questionBankYearId?: string[];\n  subjectId?: string[];\n  topicId?: string[];\n  subtopicId?: string[];\n  contentId?: string[];\n  page?: number;\n  pageSize?: number;\n  selectedQuestionsIds?: string[];\n  randomQuestions?: number;\n  /** Filter for questions without any subject association */\n  noSubject?: boolean;\n  [key: string]: unknown;\n}\n\n/**\n * Questions list response interface\n */\nexport interface QuestionsListResponse {\n  message: string;\n  data: {\n    questions: Question[];\n    pagination: Pagination;\n  };\n}\n\n/**\n * Option interface for questions\n */\nexport interface QuestionOptionActivity {\n  id: string;\n  option: string;\n  isCorrect?: boolean;\n  correctValue?: string | null;\n}\n\n/**\n * Knowledge Matrix Item interface\n */\nexport interface KnowledgeMatrixItemActivity {\n  areaKnowledge?: {\n    id: string;\n    name: string;\n  } | null;\n  subject?: {\n    id: string;\n    name: string;\n    color: string;\n    icon: string;\n  } | null;\n  topic?: {\n    id: string;\n    name: string;\n  } | null;\n  subtopic?: {\n    id: string;\n    name: string;\n  } | null;\n  content?: {\n    id: string;\n    name: string;\n  } | null;\n}\n\n/**\n * Question Bank Year interface\n */\nexport interface QuestionBankYearActivity {\n  id: string;\n  year: string;\n  questionBank: {\n    id: string;\n    name: string;\n  };\n}\n\n/**\n * Pagination interface for questions list (API schema)\n * Based on paginationSchema - uses 'hasPrev' instead of 'hasPrevious'\n */\nexport interface PaginationActivity {\n  page: number;\n  limit: number;\n  total: number;\n  totalPages: number;\n  hasNext: boolean;\n  hasPrev: boolean;\n}\n\n/**\n * Questions list API response interface\n * Based on questionsListResponseSchema\n */\nexport interface QuestionsListResponseActivity {\n  message?: string;\n  data: {\n    questions: Question[];\n    pagination?: PaginationActivity;\n  };\n}\n\n/**\n * Questions by IDs request body interface\n */\nexport interface QuestionsByIdsBody {\n  questionsIds: string[];\n}\n\n/**\n * Questions by IDs response interface\n */\nexport interface QuestionsByIdsResponse {\n  message?: string;\n  data: {\n    questions: Question[];\n  };\n}\n"],"mappings":";AAMO,IAAK,wBAAL,kBAAKA,2BAAL;AACL,EAAAA,uBAAA,WAAQ;AACR,EAAAA,uBAAA,WAAQ;AACR,EAAAA,uBAAA,aAAU;AAHA,SAAAA;AAAA,GAAA;AAUL,IAAK,uBAAL,kBAAKC,0BAAL;AACL,EAAAA,sBAAA,cAAW;AACX,EAAAA,sBAAA,aAAU;AACV,EAAAA,sBAAA,eAAY;AACZ,EAAAA,sBAAA,gBAAa;AACb,EAAAA,sBAAA,mBAAgB;AAChB,EAAAA,sBAAA,oBAAiB;AANP,SAAAA;AAAA,GAAA;","names":["DIFFICULTY_LEVEL_ENUM","QUESTION_STATUS_ENUM"]}