55 lines
1007 B
TypeScript
55 lines
1007 B
TypeScript
export type ExerciseType =
|
|
| "sensibilizacion"
|
|
| "conciencia"
|
|
| "trazo"
|
|
| "eleccion"
|
|
| "emparejar"
|
|
| "secuencia"
|
|
| "palabra"
|
|
| "problema"
|
|
| "lectura"
|
|
|
|
export type ErrorType =
|
|
| "discriminacion-auditiva"
|
|
| "confusion-letra"
|
|
| "silaba-dificil"
|
|
| "omision-letra"
|
|
| "inversion-letra"
|
|
| null
|
|
|
|
export interface ExerciseContent {
|
|
instruction: string
|
|
text?: string
|
|
options?: { label: string; correct: boolean; id?: string }[]
|
|
pairs?: { left: string; right: string; id: string }[]
|
|
sequence?: string[]
|
|
emoji?: string
|
|
color?: string
|
|
audioText?: string
|
|
imageEmoji?: string
|
|
}
|
|
|
|
export interface Exercise {
|
|
id: string
|
|
stage: number
|
|
skillCode: string
|
|
type: ExerciseType
|
|
content: ExerciseContent
|
|
prerequisites: string[]
|
|
errorType?: ErrorType
|
|
functionalContext?: string
|
|
}
|
|
|
|
export interface Stage {
|
|
id: number
|
|
name: string
|
|
description: string
|
|
exercises: Exercise[]
|
|
}
|
|
|
|
export interface TopicCurriculum {
|
|
topic: string
|
|
name: string
|
|
stages: Stage[]
|
|
}
|