/** * JSON/YAML syllabus parser * * Parses structured JSON or YAML syllabi into the standard format. * * @packageDocumentation */ import type { Parser, ParseResult, ParseOptions } from '../types/parser.js'; /** * Expected JSON structure for syllabus input */ export interface SyllabusJSON { title?: string; course?: string; institution?: string; gradeLevel?: string; modules?: Array<{ id?: string; title: string; description?: string; week?: number; estimatedMinutes?: number; topics?: Array<{ name: string; description?: string; estimatedMinutes?: number; objectives?: string[]; }>; objectives?: string[]; }>; topics?: Array<{ name: string; description?: string; estimatedMinutes?: number; objectives?: string[]; }>; objectives?: string[]; } /** * JSON/YAML parser for structured syllabi * * @example * ```typescript * import { JSONParser } from 'learngraph/parsers'; * * const parser = new JSONParser(); * const result = await parser.parse(JSON.stringify({ * title: "Kindergarten Math", * modules: [ * { * title: "Counting", * week: 1, * objectives: [ * "Count objects from 1 to 10", * "Recognize number symbols 1-10", * "Compare groups using more, less, same" * ] * } * ] * })); * ``` */ export declare class JSONParser implements Parser { readonly format: "json"; parse(content: string, _options?: ParseOptions): Promise; /** * Parse simple key-value format (basic YAML-like) */ private parseSimpleFormat; } //# sourceMappingURL=json.d.ts.map