@defikitdotnet/education-module-ai
Version:
AI Education Module using Agent Framework
33 lines (32 loc) • 1.41 kB
TypeScript
import { QuizSubmissionRepository } from "../repositories/QuizSubmissionRepository";
import { QuizSubmission, CreateQuizSubmissionData } from "../models/QuizSubmission";
export declare class QuizSubmissionService {
private quizSubmissionRepository;
constructor(quizSubmissionRepository: QuizSubmissionRepository);
/**
* Creates a new quiz submission.
* Performs validation before calling the repository.
* @param submissionData - Data for the submission.
* @returns The created QuizSubmission object.
* @throws Error if creation fails.
*/
createSubmission(submissionData: CreateQuizSubmissionData): Promise<QuizSubmission>;
/**
* Retrieves submissions for a specific student.
* @param studentId - The ID of the student.
* @returns An array of QuizSubmission objects.
*/
getSubmissionsByStudent(studentId: string): Promise<QuizSubmission[]>;
/**
* Retrieves submissions for a specific quiz.
* @param quizId - The ID of the quiz.
* @returns An array of QuizSubmission objects.
*/
getSubmissionsByQuiz(quizId: string): Promise<QuizSubmission[]>;
/**
* Retrieves a specific submission by its ID.
* @param submissionId - The ID of the submission.
* @returns The QuizSubmission object or null if not found.
*/
getSubmissionById(submissionId: string): Promise<QuizSubmission | null>;
}