import { ExamGrader } from "../ExamGrader"; import { GradedExam } from "./assigned_exams"; import { GradedStats } from "./GradedStats"; export type AppliedCurve = { adjustedScore: number; report_html: string; parameters: { [index: string]: string | number; }; }; export declare abstract class ExamCurve { abstract applyTo(ex: GradedExam): AppliedCurve; abstract initialize(grader: ExamGrader): void; abstract lock(grader: ExamGrader): void; } export declare class IndividualizedNormalCurve extends ExamCurve { readonly targetMean: number; readonly targetStddev: number; readonly locked: boolean; private curving_parameters?; constructor(stats: GradedStats, targetMean: number, targetStddev: number, locked?: boolean); private getLockfileName; initialize(grader: ExamGrader): void; private computeIndividualCurvingParameters; private mostFavorable; lock(grader: ExamGrader): void; applyTo(ex: GradedExam): AppliedCurve; }