package domain import "time" type TreeModule struct { ID int64 Title string } type TreeLevel struct { ID int64 Title string Modules []TreeModule } type TreeProgram struct { ID int64 Title string Levels []TreeLevel } type TreeCourse struct { ID int64 Title string Programs []TreeProgram } type CourseCategory struct { ID int64 Name string IsActive bool CreatedAt time.Time } type Program struct { ID int64 CourseID int64 Title string Description *string Thumbnail *string DisplayOrder int32 IsActive bool } type Course struct { ID int64 CategoryID int64 Title string Description *string IsActive bool } type Module struct { ID int64 LevelID int64 Title string Content *string DisplayOrder int32 IsActive bool } type ModuleVideo struct { ID int64 ModuleID int64 Title string Description *string VideoURL string Duration int32 Resolution *string InstructorID *string Thumbnail *string Visibility *string IsPublished bool PublishDate *time.Time IsActive bool } type PracticeQuestion struct { ID int64 PracticeID int64 Question string QuestionVoicePrompt *string SampleAnswerVoicePrompt *string SampleAnswer *string Tips *string Type string } type Practice struct { ID int64 OwnerType string OwnerID int64 Title string Description *string BannerImage *string Persona *string IsActive bool } type Level struct { ID int64 ProgramID int64 Title string Description *string LevelIndex int NumberOfModules int NumberOfPractices int NumberOfVideos int IsActive bool }