import { Database } from "better-sqlite3";
import { QuizSubmission, CreateQuizSubmissionData } from "../models/QuizSubmission";
export declare class QuizSubmissionRepository {
    private db;
    constructor(db: Database);
    private init;
    /**
     * Creates a new quiz submission record in the database.
     * @param submissionData - The data for the new submission.
     * @returns The newly created QuizSubmission object with id and timestamp.
     */
    create(submissionData: CreateQuizSubmissionData): QuizSubmission;
    /**
     * Finds submissions by student ID.
     * @param studentId - The ID of the student.
     * @returns An array of QuizSubmission objects.
     */
    findByStudentId(studentId: string): QuizSubmission[];
    /**
     * Finds submissions by quiz ID.
     * @param quizId - The ID of the quiz.
     * @returns An array of QuizSubmission objects.
     */
    findByQuizId(quizId: string): QuizSubmission[];
    /**
     * Finds a specific submission by its ID.
     * @param id - The ID of the submission.
     * @returns The QuizSubmission object or null if not found.
     */
    findById(id: string): QuizSubmission | null;
}
