/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
import * as z from "zod";
import { safeParse } from "../../lib/schemas.js";
/** @internal */
export const ResponseResult$inboundSchema = z.object({
    score: z.number(),
    feedback: z.any().optional(),
});
/** @internal */
export const ResponseResult$outboundSchema = z.object({
    score: z.number(),
    feedback: z.any().optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var ResponseResult$;
(function (ResponseResult$) {
    /** @deprecated use `ResponseResult$inboundSchema` instead. */
    ResponseResult$.inboundSchema = ResponseResult$inboundSchema;
    /** @deprecated use `ResponseResult$outboundSchema` instead. */
    ResponseResult$.outboundSchema = ResponseResult$outboundSchema;
})(ResponseResult$ || (ResponseResult$ = {}));
export function responseResultToJSON(responseResult) {
    return JSON.stringify(ResponseResult$outboundSchema.parse(responseResult));
}
export function responseResultFromJSON(jsonString) {
    return safeParse(jsonString, (x) => ResponseResult$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ResponseResult' from JSON`);
}
/** @internal */
export const PowerPath100UpdateStudentQuestionResponseResult$inboundSchema = z.object({
    lessonType: z.literal("powerpath-100").default("powerpath-100").optional(),
    powerpathScore: z.number(),
    responseResult: z.lazy(() => ResponseResult$inboundSchema),
    questionResult: z.any().optional(),
    testResult: z.any().optional(),
    accuracy: z.number(),
    correctQuestions: z.number(),
    totalQuestions: z.number(),
    xp: z.nullable(z.number()),
    multiplier: z.nullable(z.number()),
});
/** @internal */
export const PowerPath100UpdateStudentQuestionResponseResult$outboundSchema = z.object({
    lessonType: z.literal("powerpath-100").default("powerpath-100"),
    powerpathScore: z.number(),
    responseResult: z.lazy(() => ResponseResult$outboundSchema),
    questionResult: z.any().optional(),
    testResult: z.any().optional(),
    accuracy: z.number(),
    correctQuestions: z.number(),
    totalQuestions: z.number(),
    xp: z.nullable(z.number()),
    multiplier: z.nullable(z.number()),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var PowerPath100UpdateStudentQuestionResponseResult$;
(function (PowerPath100UpdateStudentQuestionResponseResult$) {
    /** @deprecated use `PowerPath100UpdateStudentQuestionResponseResult$inboundSchema` instead. */
    PowerPath100UpdateStudentQuestionResponseResult$.inboundSchema = PowerPath100UpdateStudentQuestionResponseResult$inboundSchema;
    /** @deprecated use `PowerPath100UpdateStudentQuestionResponseResult$outboundSchema` instead. */
    PowerPath100UpdateStudentQuestionResponseResult$.outboundSchema = PowerPath100UpdateStudentQuestionResponseResult$outboundSchema;
})(PowerPath100UpdateStudentQuestionResponseResult$ || (PowerPath100UpdateStudentQuestionResponseResult$ = {}));
export function powerPath100UpdateStudentQuestionResponseResultToJSON(powerPath100UpdateStudentQuestionResponseResult) {
    return JSON.stringify(PowerPath100UpdateStudentQuestionResponseResult$outboundSchema.parse(powerPath100UpdateStudentQuestionResponseResult));
}
export function powerPath100UpdateStudentQuestionResponseResultFromJSON(jsonString) {
    return safeParse(jsonString, (x) => PowerPath100UpdateStudentQuestionResponseResult$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PowerPath100UpdateStudentQuestionResponseResult' from JSON`);
}
//# sourceMappingURL=powerpath100updatestudentquestionresponseresult.js.map