UNPKG

education-module-ai

Version:
62 lines (61 loc) 1.82 kB
import { Subject } from "../models/EducationalContent"; /** * User progress tracking event */ interface ProgressEvent { userId: string; timestamp: Date; eventType: 'session_completed' | 'content_completed' | 'quiz_completed'; subject?: Subject; contentId?: string; score?: number; timeSpent?: number; } /** * Progress summary for a user */ interface ProgressSummary { totalSessionsCompleted: number; totalContentCompleted: number; totalQuizzesCompleted: number; totalTimeSpent: number; subjectBreakdown: Record<Subject, { sessionsCompleted: number; contentCompleted: number; quizzesCompleted: number; averageScore: number; timeSpent: number; }>; } /** * Service for tracking user learning progress */ declare class ProgressTrackingService { private progressEvents; /** * Track a session completion */ trackSessionCompletion(userId: string, sessionId: string, subject: Subject, timeSpent?: number): Promise<void>; /** * Track content completion */ trackContentCompleted(userId: string, contentId: string, subject: Subject, timeSpent?: number): Promise<void>; /** * Track quiz completion */ trackQuizCompleted(userId: string, contentId: string, subject: Subject, score: number, timeSpent?: number): Promise<void>; /** * Get progress summary for a user */ getProgressSummary(userId: string): Promise<ProgressSummary>; /** * Get events for a specific user */ getUserEvents(userId: string): Promise<ProgressEvent[]>; /** * Get subject-specific progress for a user */ getSubjectProgress(userId: string, subject: Subject): Promise<any>; } export declare const progressTrackingService: ProgressTrackingService; export {};