@defikitdotnet/education-module-ai
Version:
AI Education Module using Agent Framework
45 lines (44 loc) • 1.42 kB
TypeScript
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 {};