package models type SuccessResponse struct { Status string `json:"status"` Message string `json:"message"` Data any `json:"data"` MetaData any `json:"meta_data"` } type ErrorResponse struct { Status string `json:"status"` Message string `json:"message"` Errors Exception `json:"errors"` MetaData any `json:"meta_data"` } type AuthenticatedUser struct { Account Account `json:"account"` Token string `json:"token"` } type Options struct { OptionCategory OptionCategory `json:"option_category"` OptionValues []OptionValues `json:"option_values"` } type OptionsResponse struct { Options []Options `json:"options"` } type UserProfileResponse struct { Account Account `json:"account"` Details AccountDetails `json:"details"` } type AttemptExamResponse struct { Exam Quiz `json:"exam"` Questions []Question `json:"questions"` } type QuestionResponse struct { Question Question `json:"question"` Answer []Answer `json:"answer_options"` UserAnswer int `json:"current_user_answer"` IsDoubt bool `json:"is_doubt"` } type OnExamUserAnswerResponse struct { ID uint `gorm:"primaryKey" json:"id"` QuizAttemptID uint `json:"quiz_attempt_id"` QuestionID uint `json:"question_id"` SelectedAnswer uint `json:"selected_answer"` IsDoubt bool `json:"is_doubt"` }