UNPKG

@defikitdotnet/education-module-ai

Version:
45 lines (44 loc) 1.42 kB
import { Course } from "../models/Course"; import { UpdateCoursePayloadDTO } from "../services/CourseService"; interface CourseWithDetails extends Course { sectionCount: number; lectureCount: number; } export interface CourseDetail extends Course { sections: { id: string; title: string; description: string; orderIndex: number; lectures: { id: string; title: string; content: string; type: string; orderIndex: number; }[]; quiz?: { id: string; title: string; description: string; questions: { id: string; question: string; options: string[]; answer: string; explanation: string; }[]; }; }[]; } export declare function useCourses(teacherId?: string, apiBaseUrl?: string): { courses: CourseWithDetails[]; isLoading: boolean; error: string | null; fetchCourses: (forced?: boolean) => Promise<void>; fetchCourseDetail: (courseId: string) => Promise<CourseDetail | null>; createCourse: (courseData: Partial<Course>) => Promise<Course | null>; updateCourse: (courseId: string, courseData: UpdateCoursePayloadDTO) => Promise<CourseDetail | null>; deleteCourse: (courseId: string) => Promise<boolean>; }; export {};