export interface CorrectionSchema {
    /** Only for VSCode, "$schema": "../node_modules/grading/dist/grade/correction.schema.json" 
     * @see MANUAL_CORRECTIONS_SCHEMA_URL
    */
    $schema: string
    course: string,
    term: string,
    exam: string;
    corrections: StudentCorrection[]
}

export interface StudentCorrection {
    submissionID: string;
    userName: string;
    general?: GeneralCorrection[];
    tasks?: TaskCorrection[];
}

export interface AbstractCorrection {
    points?: number;
    reason: string|string[];
}

export interface GeneralCorrection extends AbstractCorrection {
    points?: number;
    absolute: boolean;
}

export interface TaskCorrection extends AbstractCorrection {
    name: string;
}