import { QuizSettings } from "@model/settingsData"; import { createContext, useContext } from "react"; type QuizSettingsFull = QuizSettings | {}; type QuizData = QuizSettingsFull & { quizId: string; preview: boolean; }; type QuizDataClean = QuizSettings & { quizId: string; preview: boolean; }; export const QuizDataContext = createContext(null); export const useQuizData = ():QuizDataClean => { const quizData = useContext(QuizDataContext); if ( quizData === null || !("settings" in quizData) || !("recentlyCompleted" in quizData) ) throw new Error("QuizData context is null"); return quizData; };