export type ResourceArticle = { id: string; title: string; type: "article"; path: string; }; export type ResourceVideo = { id: string; title: string; type: "video"; path: string; youtubeId: string; durationSeconds: number; description: string; }; export type QuestionRef = { number: number; xml: string; json: string; }; export type ResourceQuiz = { id: string; title: string; type: "quiz"; path: string; questionCount: number; questions: QuestionRef[]; }; export type Resource = ResourceArticle | ResourceVideo | ResourceQuiz; export type Lesson = { id: string; unitId: string; lessonNumber: number; title: string; resources: Array; }; export type UnitTest = { id: string; title: string; path: string; questionCount: number; questions: QuestionRef[]; }; export type Unit = { id: string; unitNumber: number; title: string; lessons: Array<{ id: string; lessonNumber: number; title: string; path: string; }>; unitTest?: UnitTest; counts: { lessonCount: number; resourceCount: number; questionCount: number; }; }; export type IndexV1 = { version: 1; generatedAt: string; generator: { name: string; version: string; commit?: string; }; course: { title: string; subject: string; }; units: Array<{ id: string; unitNumber: number; title: string; path: string; }>; }; export type IntegrityEntry = { size: number; sha256: string; }; export type IntegrityManifest = { algorithm: "sha256"; files: Record; }; //# sourceMappingURL=types.d.ts.map