import { AssignedQuestion, GradedQuestion } from "../core/assigned_exams"; import { ResponseKind } from "../response/common"; import { QuestionGrader } from "./QuestionGrader"; export type CodeWritingRubricItemStatus = "on" | "off" | "unknown"; export type CodeWritingRubricItem = { rubric_item_uuid: string; points: number; title: string; description: string; sort_index?: string; active: boolean; }; export type ManualGenericGraderSpecification = { readonly grader_kind: "manual_generic"; readonly points_possible: number; }; export type CodeWritingRubricItemResult = { status?: "on" | "off" | "unknown"; notes?: string; }; export type CodeWritingRubricResult = { [index: string]: CodeWritingRubricItemResult | undefined; }; export type ManualGenericGraderSubmissionResult = { submission_uuid: string; finished?: boolean; grader?: string; rubric_items: CodeWritingRubricResult; }; export type ManualGenericGraderGradingResult = ManualGenericGraderSubmissionResult & { wasBlankSubmission: boolean; }; export type ManualGenericGraderData = { rubric: CodeWritingRubricItem[]; submission_results: ManualGenericGraderSubmissionResult[]; }; export declare class ManualGenericGrader implements QuestionGrader { readonly t_response_kinds: ResponseKind; readonly spec: ManualGenericGraderSpecification; private rubric; private grading_data?; private submission_results; constructor(spec: ManualGenericGraderSpecification); scale(new_points_possible: number): this; isGrader(responseKind: T): this is QuestionGrader; prepare(exam_id: string, question_id: string, grading_data: ManualGenericGraderData): void; grade(aq: AssignedQuestion): ManualGenericGraderGradingResult | undefined; pointsEarned(gr: ManualGenericGraderGradingResult): number; renderReport(aq: GradedQuestion): string; annotateResponseElem(aq: GradedQuestion, response_elem: JQuery): void; renderStats(): string; renderOverview(): string; }