/** * Timeback Shared Primitives * * Core types used across multiple Timeback protocols. * * Organization: * - Shared types (this file): Used by multiple protocols (Caliper, OneRoster, etc.) * - Protocol-specific types: Live in their respective protocols/X/primitives.ts files * * What belongs here: * - TimebackSubject - Used in OneRoster courses AND Caliper events * - TimebackGrade - Used across OneRoster, Caliper, and QTI * - IMSErrorResponse - IMS Global standard used by multiple 1EdTech protocols * * What doesn't belong here: * - OneRoster-specific: protocols/oneroster/primitives.ts * - QTI-specific: protocols/qti/primitives.ts */ /** * Valid Timeback subject values. * Used in OneRoster courses and Caliper events. */ export type TimebackSubject = 'Reading' | 'Language' | 'Vocabulary' | 'Social Studies' | 'Writing' | 'Science' | 'FastMath' | 'Math' | 'None' | 'Other'; /** * Grade levels per Timeback OneRoster GradeEnum (numeric). * -1 = Pre-K, 0 = Kindergarten, 1-12 = Grades 1-12, 13 = AP * * Use for input types where numbers are accepted. */ export type TimebackGrade = -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13; /** * Grade levels as strings (API response format). * The database stores grades as text, so API responses return strings. * * Use for response types. */ export type TimebackGradeString = '-1' | '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12' | '13'; /** * IMS Global error response format. * Used across OneRoster, Caliper, and other 1EdTech protocols. */ export interface IMSErrorResponse { imsx_codeMajor: 'failure' | 'success'; imsx_severity: 'error' | 'warning' | 'status'; imsx_description: string; imsx_CodeMinor?: { imsx_codeMinorField: Array<{ imsx_codeMinorFieldName: string; imsx_codeMinorFieldValue: string; }>; }; imsx_error_details?: Array>; } //# sourceMappingURL=primitives.d.ts.map