Question
type QuestionType = 'mc' | 'open' | 'sc'
type ForkStatus = 'current' | 'suggested' | 'replaced' | 'rejected'
type ForkStatusReason = 'siblingAccepted' | 'notBetter'
interface Question {
id?: string
forkedFrom?: string
forkedFromOrigin?: string
type: QuestionType
userId?: string
topicId?: string
publishedAt?: string | any
modifiedAt?: string | any
hidden?: boolean
copiedFrom?: string
details:
| {
text: string
options: any[]
}
| any
forkInfo?: {
message?: string
guidelines?: string[]
}
forkStatus?: ForkStatus
versionNumber?: number
forkStatusReason?: ForkStatusReason
forkSize?: string
scores?: {
feedbackScore: number
feedbackScoreNonFullfilledCriteria?: FeedbackDetailedCriterion[]
feedbackAmountScore: number
feedbackAmountScoreNonFullfilledCriteria?: FeedbackDetailedCriterion[]
[scoreType: string]: number | any
}
tags?: QuestionTagsInQuestion
}
interface QuestionTagsInQuestion {
tagsClaimed: string[]
tagsConfirmed: string[]
factor: number
confirmedAt?: any
confirmed: boolean
}