quizSchema: ZodObject<
{
allowedQuestionTypesSettings: ZodRecord<
ZodEnum<["SINGLE", "MULTIPLE", "TEXT"]>,
ZodBoolean,
>;
archived: ZodOptional<
ZodEffects<
ZodObject<
{ type: ZodEnum<["Timestamp"]>; value: ZodNumber },
"strip",
ZodTypeAny,
{ type: "Timestamp"; value: number },
{ type: "Timestamp"; value: number },
>,
Timestamp,
{ type: "Timestamp"; value: number },
>,
>;
comments: ZodArray<ZodBranded<ZodString, "UID">, "many">;
created: ZodEffects<
ZodObject<
{ type: ZodEnum<["Timestamp"]>; value: ZodNumber },
"strip",
ZodTypeAny,
{ type: "Timestamp"; value: number },
{ type: "Timestamp"; value: number },
>,
Timestamp,
{ type: "Timestamp"; value: number },
>;
createdBy: ZodOptional<ZodBranded<ZodString, "UID">>;
description: ZodString;
groups: ZodArray<
ZodObject<
{
name: ZodString;
questions: ZodArray<ZodBranded<ZodString, "UID">, "many">;
statistics: ZodOptional<
ZodObject<
{
answers: ZodArray<ZodNumber, "many">;
correctAnswers: ZodArray<ZodNumber, "many">;
groupName: ZodString;
maximumParticipants: ZodNumber;
questionIds: ZodArray<ZodBranded<ZodString, "UID">, "many">;
quizId: ZodBranded<ZodString, "UID">;
wrongAnswers: ZodArray<ZodNumber, "many">;
},
"strip",
ZodTypeAny,
{
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: (string & BRAND<(...)>)[];
quizId: string & BRAND<"UID">;
wrongAnswers: number[];
},
{
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: string[];
quizId: string;
wrongAnswers: number[];
},
>,
>;
},
"strip",
ZodTypeAny,
{
name: string;
questions: (string & BRAND<"UID">)[];
statistics?: {
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: (string & BRAND<"UID">)[];
quizId: string & BRAND<"UID">;
wrongAnswers: number[];
};
},
{
name: string;
questions: string[];
statistics?: {
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: string[];
quizId: string;
wrongAnswers: number[];
};
},
>,
"many",
>;
hideComments: ZodDefault<ZodOptional<ZodBoolean>>;
lastExport: ZodOptional<
ZodEffects<
ZodObject<
{ type: ZodEnum<["Timestamp"]>; value: ZodNumber },
"strip",
ZodTypeAny,
{ type: "Timestamp"; value: number },
{ type: "Timestamp"; value: number },
>,
Timestamp,
{ type: "Timestamp"; value: number },
>,
>;
previewers: ZodOptional<ZodArray<ZodBranded<ZodString, "UID">, "many">>;
runOptions: ZodOptional<
ZodObject<
{ runningEntity: ZodOptional<ZodBranded<ZodString, "UID">> },
"strip",
ZodTypeAny,
{ runningEntity?: string & BRAND<"UID"> },
{ runningEntity?: string },
>,
>;
shuffleAnswers: ZodDefault<ZodOptional<ZodBoolean>>;
shuffleQuestions: ZodBoolean;
state: ZodEnum<["EDITING", "ACTIVE", "STARTED", "STOPPED"]>;
statistics: ZodOptional<
ZodObject<
{
answers: ZodArray<ZodNumber, "many">;
correctAnswers: ZodArray<ZodNumber, "many">;
groupName: ZodString;
maximumParticipants: ZodNumber;
questionIds: ZodArray<ZodBranded<ZodString, "UID">, "many">;
quizId: ZodBranded<ZodString, "UID">;
wrongAnswers: ZodArray<ZodNumber, "many">;
},
"strip",
ZodTypeAny,
{
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: (string & BRAND<"UID">)[];
quizId: string & BRAND<"UID">;
wrongAnswers: number[];
},
{
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: string[];
quizId: string;
wrongAnswers: number[];
},
>,
>;
studentComments: ZodBoolean;
studentParticipationSettings: ZodRecord<
ZodEnum<["NAME", "NICKNAME", "ANONYMOUS"]>,
ZodBoolean,
>;
studentQuestions: ZodBoolean;
students: ZodArray<ZodBranded<ZodString, "UID">, "many">;
studentsCanSeeStatistics: ZodOptional<ZodBoolean>;
teachers: ZodArray<ZodBranded<ZodString, "UID">, "many">;
title: ZodString;
uid: ZodBranded<ZodString, "UID">;
uniqueLink: ZodString;
updated: ZodEffects<
ZodObject<
{ type: ZodEnum<["Timestamp"]>; value: ZodNumber },
"strip",
ZodTypeAny,
{ type: "Timestamp"; value: number },
{ type: "Timestamp"; value: number },
>,
Timestamp,
{ type: "Timestamp"; value: number },
>;
},
"strip",
ZodTypeAny,
{
allowedQuestionTypesSettings: Partial<
Record<"SINGLE" | "MULTIPLE" | "TEXT", boolean>,
>;
archived?: Timestamp;
comments: (string & BRAND<"UID">)[];
created: Timestamp;
createdBy?: string & BRAND<"UID">;
description: string;
groups: {
name: string;
questions: (string & BRAND<"UID">)[];
statistics?: {
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: (string & BRAND<"UID">)[];
quizId: string & BRAND<"UID">;
wrongAnswers: number[];
};
}[];
hideComments: boolean;
lastExport?: Timestamp;
previewers?: (string & BRAND<"UID">)[];
runOptions?: { runningEntity?: string & BRAND<"UID"> };
shuffleAnswers: boolean;
shuffleQuestions: boolean;
state: "EDITING" | "ACTIVE" | "STARTED" | "STOPPED";
statistics?: {
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: (string & BRAND<"UID">)[];
quizId: string & BRAND<"UID">;
wrongAnswers: number[];
};
studentComments: boolean;
studentParticipationSettings: Partial<
Record<"NAME" | "NICKNAME" | "ANONYMOUS", boolean>,
>;
studentQuestions: boolean;
students: (string & BRAND<"UID">)[];
studentsCanSeeStatistics?: boolean;
teachers: (string & BRAND<"UID">)[];
title: string;
uid: string & BRAND<"UID">;
uniqueLink: string;
updated: Timestamp;
},
{
allowedQuestionTypesSettings: Partial<
Record<"SINGLE" | "MULTIPLE" | "TEXT", boolean>,
>;
archived?: { type: "Timestamp"; value: number };
comments: string[];
created: { type: "Timestamp"; value: number };
createdBy?: string;
description: string;
groups: {
name: string;
questions: string[];
statistics?: {
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: string[];
quizId: string;
wrongAnswers: number[];
};
}[];
hideComments?: boolean;
lastExport?: { type: "Timestamp"; value: number };
previewers?: string[];
runOptions?: { runningEntity?: string };
shuffleAnswers?: boolean;
shuffleQuestions: boolean;
state: "EDITING" | "ACTIVE" | "STARTED" | "STOPPED";
statistics?: {
answers: number[];
correctAnswers: number[];
groupName: string;
maximumParticipants: number;
questionIds: string[];
quizId: string;
wrongAnswers: number[];
};
studentComments: boolean;
studentParticipationSettings: Partial<
Record<"NAME" | "NICKNAME" | "ANONYMOUS", boolean>,
>;
studentQuestions: boolean;
students: string[];
studentsCanSeeStatistics?: boolean;
teachers: string[];
title: string;
uid: string;
uniqueLink: string;
updated: { type: "Timestamp"; value: number };
},
> = ...