@instructure/athena-api-client 1.0.7 → 1.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/README.md +15 -0
  2. package/dist/apis/QuizSessionsApi.d.ts +76 -0
  3. package/dist/apis/QuizSessionsApi.js +207 -0
  4. package/dist/apis/QuizzesApi.d.ts +32 -0
  5. package/dist/apis/QuizzesApi.js +74 -0
  6. package/dist/apis/index.d.ts +2 -0
  7. package/dist/apis/index.js +2 -0
  8. package/dist/esm/apis/QuizSessionsApi.d.ts +76 -0
  9. package/dist/esm/apis/QuizSessionsApi.js +203 -0
  10. package/dist/esm/apis/QuizzesApi.d.ts +32 -0
  11. package/dist/esm/apis/QuizzesApi.js +70 -0
  12. package/dist/esm/apis/index.d.ts +2 -0
  13. package/dist/esm/apis/index.js +2 -0
  14. package/dist/esm/models/ChatRequestAttachmentsInner.d.ts +6 -0
  15. package/dist/esm/models/ChatRequestAttachmentsInner.js +4 -0
  16. package/dist/esm/models/MessageAttachmentsInner.d.ts +6 -0
  17. package/dist/esm/models/MessageAttachmentsInner.js +4 -0
  18. package/dist/esm/models/Quiz.d.ts +76 -0
  19. package/dist/esm/models/Quiz.js +72 -0
  20. package/dist/esm/models/QuizQuestion.d.ts +103 -0
  21. package/dist/esm/models/QuizQuestion.js +85 -0
  22. package/dist/esm/models/QuizResponse.d.ts +76 -0
  23. package/dist/esm/models/QuizResponse.js +70 -0
  24. package/dist/esm/models/QuizSession.d.ts +71 -0
  25. package/dist/esm/models/QuizSession.js +69 -0
  26. package/dist/esm/models/QuizSessionSummary.d.ts +61 -0
  27. package/dist/esm/models/QuizSessionSummary.js +64 -0
  28. package/dist/esm/models/QuizSessionSummaryScore.d.ts +47 -0
  29. package/dist/esm/models/QuizSessionSummaryScore.js +53 -0
  30. package/dist/esm/models/QuizWithQuestions.d.ts +83 -0
  31. package/dist/esm/models/QuizWithQuestions.js +77 -0
  32. package/dist/esm/models/ScoreByTypeValue.d.ts +38 -0
  33. package/dist/esm/models/ScoreByTypeValue.js +47 -0
  34. package/dist/esm/models/SubmitQuizResponseRequest.d.ts +58 -0
  35. package/dist/esm/models/SubmitQuizResponseRequest.js +58 -0
  36. package/dist/esm/models/UpdateQuizSessionRequest.d.ts +40 -0
  37. package/dist/esm/models/UpdateQuizSessionRequest.js +50 -0
  38. package/dist/esm/models/index.d.ts +10 -0
  39. package/dist/esm/models/index.js +10 -0
  40. package/dist/models/ChatRequestAttachmentsInner.d.ts +6 -0
  41. package/dist/models/ChatRequestAttachmentsInner.js +4 -0
  42. package/dist/models/MessageAttachmentsInner.d.ts +6 -0
  43. package/dist/models/MessageAttachmentsInner.js +4 -0
  44. package/dist/models/Quiz.d.ts +76 -0
  45. package/dist/models/Quiz.js +80 -0
  46. package/dist/models/QuizQuestion.d.ts +103 -0
  47. package/dist/models/QuizQuestion.js +93 -0
  48. package/dist/models/QuizResponse.d.ts +76 -0
  49. package/dist/models/QuizResponse.js +78 -0
  50. package/dist/models/QuizSession.d.ts +71 -0
  51. package/dist/models/QuizSession.js +77 -0
  52. package/dist/models/QuizSessionSummary.d.ts +61 -0
  53. package/dist/models/QuizSessionSummary.js +71 -0
  54. package/dist/models/QuizSessionSummaryScore.d.ts +47 -0
  55. package/dist/models/QuizSessionSummaryScore.js +60 -0
  56. package/dist/models/QuizWithQuestions.d.ts +83 -0
  57. package/dist/models/QuizWithQuestions.js +85 -0
  58. package/dist/models/ScoreByTypeValue.d.ts +38 -0
  59. package/dist/models/ScoreByTypeValue.js +54 -0
  60. package/dist/models/SubmitQuizResponseRequest.d.ts +58 -0
  61. package/dist/models/SubmitQuizResponseRequest.js +66 -0
  62. package/dist/models/UpdateQuizSessionRequest.d.ts +40 -0
  63. package/dist/models/UpdateQuizSessionRequest.js +58 -0
  64. package/dist/models/index.d.ts +10 -0
  65. package/dist/models/index.js +10 -0
  66. package/package.json +1 -1
@@ -0,0 +1,85 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const QuizQuestionTypeEnum = {
18
+ Mcq: 'mcq',
19
+ FillBlank: 'fill-blank',
20
+ SpotError: 'spot-error',
21
+ TeachBack: 'teach-back',
22
+ Flashcard: 'flashcard'
23
+ };
24
+ /**
25
+ * Check if a given object implements the QuizQuestion interface.
26
+ */
27
+ export function instanceOfQuizQuestion(value) {
28
+ if (!('id' in value) || value['id'] === undefined)
29
+ return false;
30
+ if (!('quizId' in value) || value['quizId'] === undefined)
31
+ return false;
32
+ if (!('ordinal' in value) || value['ordinal'] === undefined)
33
+ return false;
34
+ if (!('type' in value) || value['type'] === undefined)
35
+ return false;
36
+ if (!('question' in value) || value['question'] === undefined)
37
+ return false;
38
+ if (!('correctAnswer' in value) || value['correctAnswer'] === undefined)
39
+ return false;
40
+ if (!('createdAt' in value) || value['createdAt'] === undefined)
41
+ return false;
42
+ return true;
43
+ }
44
+ export function QuizQuestionFromJSON(json) {
45
+ return QuizQuestionFromJSONTyped(json, false);
46
+ }
47
+ export function QuizQuestionFromJSONTyped(json, ignoreDiscriminator) {
48
+ if (json == null) {
49
+ return json;
50
+ }
51
+ return {
52
+ 'id': json['id'],
53
+ 'quizId': json['quizId'],
54
+ 'conceptId': json['conceptId'] == null ? undefined : json['conceptId'],
55
+ 'ordinal': json['ordinal'],
56
+ 'type': json['type'],
57
+ 'question': json['question'],
58
+ 'options': json['options'] == null ? undefined : json['options'],
59
+ 'correctAnswer': json['correctAnswer'],
60
+ 'explanation': json['explanation'] == null ? undefined : json['explanation'],
61
+ 'topic': json['topic'] == null ? undefined : json['topic'],
62
+ 'createdAt': (new Date(json['createdAt'])),
63
+ };
64
+ }
65
+ export function QuizQuestionToJSON(json) {
66
+ return QuizQuestionToJSONTyped(json, false);
67
+ }
68
+ export function QuizQuestionToJSONTyped(value, ignoreDiscriminator = false) {
69
+ if (value == null) {
70
+ return value;
71
+ }
72
+ return {
73
+ 'id': value['id'],
74
+ 'quizId': value['quizId'],
75
+ 'conceptId': value['conceptId'],
76
+ 'ordinal': value['ordinal'],
77
+ 'type': value['type'],
78
+ 'question': value['question'],
79
+ 'options': value['options'],
80
+ 'correctAnswer': value['correctAnswer'],
81
+ 'explanation': value['explanation'],
82
+ 'topic': value['topic'],
83
+ 'createdAt': value['createdAt'].toISOString(),
84
+ };
85
+ }
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface QuizResponse
16
+ */
17
+ export interface QuizResponse {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof QuizResponse
22
+ */
23
+ id: string;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof QuizResponse
28
+ */
29
+ sessionId: string;
30
+ /**
31
+ *
32
+ * @type {string}
33
+ * @memberof QuizResponse
34
+ */
35
+ questionId: string;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof QuizResponse
40
+ */
41
+ userAnswer: string;
42
+ /**
43
+ *
44
+ * @type {boolean}
45
+ * @memberof QuizResponse
46
+ */
47
+ isCorrect?: boolean | null;
48
+ /**
49
+ *
50
+ * @type {string}
51
+ * @memberof QuizResponse
52
+ */
53
+ rating?: QuizResponseRatingEnum | null;
54
+ /**
55
+ *
56
+ * @type {Date}
57
+ * @memberof QuizResponse
58
+ */
59
+ createdAt: Date;
60
+ }
61
+ /**
62
+ * @export
63
+ */
64
+ export declare const QuizResponseRatingEnum: {
65
+ readonly WasRight: "was-right";
66
+ readonly NeedPractice: "need-practice";
67
+ };
68
+ export type QuizResponseRatingEnum = typeof QuizResponseRatingEnum[keyof typeof QuizResponseRatingEnum];
69
+ /**
70
+ * Check if a given object implements the QuizResponse interface.
71
+ */
72
+ export declare function instanceOfQuizResponse(value: object): value is QuizResponse;
73
+ export declare function QuizResponseFromJSON(json: any): QuizResponse;
74
+ export declare function QuizResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): QuizResponse;
75
+ export declare function QuizResponseToJSON(json: any): QuizResponse;
76
+ export declare function QuizResponseToJSONTyped(value?: QuizResponse | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,70 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const QuizResponseRatingEnum = {
18
+ WasRight: 'was-right',
19
+ NeedPractice: 'need-practice'
20
+ };
21
+ /**
22
+ * Check if a given object implements the QuizResponse interface.
23
+ */
24
+ export function instanceOfQuizResponse(value) {
25
+ if (!('id' in value) || value['id'] === undefined)
26
+ return false;
27
+ if (!('sessionId' in value) || value['sessionId'] === undefined)
28
+ return false;
29
+ if (!('questionId' in value) || value['questionId'] === undefined)
30
+ return false;
31
+ if (!('userAnswer' in value) || value['userAnswer'] === undefined)
32
+ return false;
33
+ if (!('createdAt' in value) || value['createdAt'] === undefined)
34
+ return false;
35
+ return true;
36
+ }
37
+ export function QuizResponseFromJSON(json) {
38
+ return QuizResponseFromJSONTyped(json, false);
39
+ }
40
+ export function QuizResponseFromJSONTyped(json, ignoreDiscriminator) {
41
+ if (json == null) {
42
+ return json;
43
+ }
44
+ return {
45
+ 'id': json['id'],
46
+ 'sessionId': json['sessionId'],
47
+ 'questionId': json['questionId'],
48
+ 'userAnswer': json['userAnswer'],
49
+ 'isCorrect': json['isCorrect'] == null ? undefined : json['isCorrect'],
50
+ 'rating': json['rating'] == null ? undefined : json['rating'],
51
+ 'createdAt': (new Date(json['createdAt'])),
52
+ };
53
+ }
54
+ export function QuizResponseToJSON(json) {
55
+ return QuizResponseToJSONTyped(json, false);
56
+ }
57
+ export function QuizResponseToJSONTyped(value, ignoreDiscriminator = false) {
58
+ if (value == null) {
59
+ return value;
60
+ }
61
+ return {
62
+ 'id': value['id'],
63
+ 'sessionId': value['sessionId'],
64
+ 'questionId': value['questionId'],
65
+ 'userAnswer': value['userAnswer'],
66
+ 'isCorrect': value['isCorrect'],
67
+ 'rating': value['rating'],
68
+ 'createdAt': value['createdAt'].toISOString(),
69
+ };
70
+ }
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface QuizSession
16
+ */
17
+ export interface QuizSession {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof QuizSession
22
+ */
23
+ id: string;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof QuizSession
28
+ */
29
+ quizId: string;
30
+ /**
31
+ *
32
+ * @type {string}
33
+ * @memberof QuizSession
34
+ */
35
+ accountUserId: string;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof QuizSession
40
+ */
41
+ status: QuizSessionStatusEnum;
42
+ /**
43
+ *
44
+ * @type {Date}
45
+ * @memberof QuizSession
46
+ */
47
+ startedAt: Date;
48
+ /**
49
+ *
50
+ * @type {Date}
51
+ * @memberof QuizSession
52
+ */
53
+ completedAt?: Date | null;
54
+ }
55
+ /**
56
+ * @export
57
+ */
58
+ export declare const QuizSessionStatusEnum: {
59
+ readonly Active: "active";
60
+ readonly Completed: "completed";
61
+ readonly Abandoned: "abandoned";
62
+ };
63
+ export type QuizSessionStatusEnum = typeof QuizSessionStatusEnum[keyof typeof QuizSessionStatusEnum];
64
+ /**
65
+ * Check if a given object implements the QuizSession interface.
66
+ */
67
+ export declare function instanceOfQuizSession(value: object): value is QuizSession;
68
+ export declare function QuizSessionFromJSON(json: any): QuizSession;
69
+ export declare function QuizSessionFromJSONTyped(json: any, ignoreDiscriminator: boolean): QuizSession;
70
+ export declare function QuizSessionToJSON(json: any): QuizSession;
71
+ export declare function QuizSessionToJSONTyped(value?: QuizSession | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,69 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const QuizSessionStatusEnum = {
18
+ Active: 'active',
19
+ Completed: 'completed',
20
+ Abandoned: 'abandoned'
21
+ };
22
+ /**
23
+ * Check if a given object implements the QuizSession interface.
24
+ */
25
+ export function instanceOfQuizSession(value) {
26
+ if (!('id' in value) || value['id'] === undefined)
27
+ return false;
28
+ if (!('quizId' in value) || value['quizId'] === undefined)
29
+ return false;
30
+ if (!('accountUserId' in value) || value['accountUserId'] === undefined)
31
+ return false;
32
+ if (!('status' in value) || value['status'] === undefined)
33
+ return false;
34
+ if (!('startedAt' in value) || value['startedAt'] === undefined)
35
+ return false;
36
+ return true;
37
+ }
38
+ export function QuizSessionFromJSON(json) {
39
+ return QuizSessionFromJSONTyped(json, false);
40
+ }
41
+ export function QuizSessionFromJSONTyped(json, ignoreDiscriminator) {
42
+ if (json == null) {
43
+ return json;
44
+ }
45
+ return {
46
+ 'id': json['id'],
47
+ 'quizId': json['quizId'],
48
+ 'accountUserId': json['accountUserId'],
49
+ 'status': json['status'],
50
+ 'startedAt': (new Date(json['startedAt'])),
51
+ 'completedAt': json['completedAt'] == null ? undefined : (new Date(json['completedAt'])),
52
+ };
53
+ }
54
+ export function QuizSessionToJSON(json) {
55
+ return QuizSessionToJSONTyped(json, false);
56
+ }
57
+ export function QuizSessionToJSONTyped(value, ignoreDiscriminator = false) {
58
+ if (value == null) {
59
+ return value;
60
+ }
61
+ return {
62
+ 'id': value['id'],
63
+ 'quizId': value['quizId'],
64
+ 'accountUserId': value['accountUserId'],
65
+ 'status': value['status'],
66
+ 'startedAt': value['startedAt'].toISOString(),
67
+ 'completedAt': value['completedAt'] == null ? value['completedAt'] : value['completedAt'].toISOString(),
68
+ };
69
+ }
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { QuizSessionSummaryScore } from './QuizSessionSummaryScore';
13
+ import type { Quiz } from './Quiz';
14
+ import type { QuizSession } from './QuizSession';
15
+ import type { QuizQuestion } from './QuizQuestion';
16
+ import type { QuizResponse } from './QuizResponse';
17
+ /**
18
+ *
19
+ * @export
20
+ * @interface QuizSessionSummary
21
+ */
22
+ export interface QuizSessionSummary {
23
+ /**
24
+ *
25
+ * @type {QuizSession}
26
+ * @memberof QuizSessionSummary
27
+ */
28
+ session: QuizSession;
29
+ /**
30
+ *
31
+ * @type {Quiz}
32
+ * @memberof QuizSessionSummary
33
+ */
34
+ quiz: Quiz;
35
+ /**
36
+ *
37
+ * @type {Array<QuizQuestion>}
38
+ * @memberof QuizSessionSummary
39
+ */
40
+ questions: Array<QuizQuestion>;
41
+ /**
42
+ *
43
+ * @type {Array<QuizResponse>}
44
+ * @memberof QuizSessionSummary
45
+ */
46
+ responses: Array<QuizResponse>;
47
+ /**
48
+ *
49
+ * @type {QuizSessionSummaryScore}
50
+ * @memberof QuizSessionSummary
51
+ */
52
+ score: QuizSessionSummaryScore;
53
+ }
54
+ /**
55
+ * Check if a given object implements the QuizSessionSummary interface.
56
+ */
57
+ export declare function instanceOfQuizSessionSummary(value: object): value is QuizSessionSummary;
58
+ export declare function QuizSessionSummaryFromJSON(json: any): QuizSessionSummary;
59
+ export declare function QuizSessionSummaryFromJSONTyped(json: any, ignoreDiscriminator: boolean): QuizSessionSummary;
60
+ export declare function QuizSessionSummaryToJSON(json: any): QuizSessionSummary;
61
+ export declare function QuizSessionSummaryToJSONTyped(value?: QuizSessionSummary | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,64 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { QuizSessionSummaryScoreFromJSON, QuizSessionSummaryScoreToJSON, } from './QuizSessionSummaryScore';
15
+ import { QuizFromJSON, QuizToJSON, } from './Quiz';
16
+ import { QuizSessionFromJSON, QuizSessionToJSON, } from './QuizSession';
17
+ import { QuizQuestionFromJSON, QuizQuestionToJSON, } from './QuizQuestion';
18
+ import { QuizResponseFromJSON, QuizResponseToJSON, } from './QuizResponse';
19
+ /**
20
+ * Check if a given object implements the QuizSessionSummary interface.
21
+ */
22
+ export function instanceOfQuizSessionSummary(value) {
23
+ if (!('session' in value) || value['session'] === undefined)
24
+ return false;
25
+ if (!('quiz' in value) || value['quiz'] === undefined)
26
+ return false;
27
+ if (!('questions' in value) || value['questions'] === undefined)
28
+ return false;
29
+ if (!('responses' in value) || value['responses'] === undefined)
30
+ return false;
31
+ if (!('score' in value) || value['score'] === undefined)
32
+ return false;
33
+ return true;
34
+ }
35
+ export function QuizSessionSummaryFromJSON(json) {
36
+ return QuizSessionSummaryFromJSONTyped(json, false);
37
+ }
38
+ export function QuizSessionSummaryFromJSONTyped(json, ignoreDiscriminator) {
39
+ if (json == null) {
40
+ return json;
41
+ }
42
+ return {
43
+ 'session': QuizSessionFromJSON(json['session']),
44
+ 'quiz': QuizFromJSON(json['quiz']),
45
+ 'questions': (json['questions'].map(QuizQuestionFromJSON)),
46
+ 'responses': (json['responses'].map(QuizResponseFromJSON)),
47
+ 'score': QuizSessionSummaryScoreFromJSON(json['score']),
48
+ };
49
+ }
50
+ export function QuizSessionSummaryToJSON(json) {
51
+ return QuizSessionSummaryToJSONTyped(json, false);
52
+ }
53
+ export function QuizSessionSummaryToJSONTyped(value, ignoreDiscriminator = false) {
54
+ if (value == null) {
55
+ return value;
56
+ }
57
+ return {
58
+ 'session': QuizSessionToJSON(value['session']),
59
+ 'quiz': QuizToJSON(value['quiz']),
60
+ 'questions': (value['questions'].map(QuizQuestionToJSON)),
61
+ 'responses': (value['responses'].map(QuizResponseToJSON)),
62
+ 'score': QuizSessionSummaryScoreToJSON(value['score']),
63
+ };
64
+ }
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ScoreByTypeValue } from './ScoreByTypeValue';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface QuizSessionSummaryScore
17
+ */
18
+ export interface QuizSessionSummaryScore {
19
+ /**
20
+ *
21
+ * @type {number}
22
+ * @memberof QuizSessionSummaryScore
23
+ */
24
+ totalCorrect: number;
25
+ /**
26
+ *
27
+ * @type {number}
28
+ * @memberof QuizSessionSummaryScore
29
+ */
30
+ totalQuestions: number;
31
+ /**
32
+ *
33
+ * @type {{ [key: string]: ScoreByTypeValue; }}
34
+ * @memberof QuizSessionSummaryScore
35
+ */
36
+ byType: {
37
+ [key: string]: ScoreByTypeValue;
38
+ };
39
+ }
40
+ /**
41
+ * Check if a given object implements the QuizSessionSummaryScore interface.
42
+ */
43
+ export declare function instanceOfQuizSessionSummaryScore(value: object): value is QuizSessionSummaryScore;
44
+ export declare function QuizSessionSummaryScoreFromJSON(json: any): QuizSessionSummaryScore;
45
+ export declare function QuizSessionSummaryScoreFromJSONTyped(json: any, ignoreDiscriminator: boolean): QuizSessionSummaryScore;
46
+ export declare function QuizSessionSummaryScoreToJSON(json: any): QuizSessionSummaryScore;
47
+ export declare function QuizSessionSummaryScoreToJSONTyped(value?: QuizSessionSummaryScore | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,53 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { mapValues } from '../runtime';
15
+ import { ScoreByTypeValueFromJSON, ScoreByTypeValueToJSON, } from './ScoreByTypeValue';
16
+ /**
17
+ * Check if a given object implements the QuizSessionSummaryScore interface.
18
+ */
19
+ export function instanceOfQuizSessionSummaryScore(value) {
20
+ if (!('totalCorrect' in value) || value['totalCorrect'] === undefined)
21
+ return false;
22
+ if (!('totalQuestions' in value) || value['totalQuestions'] === undefined)
23
+ return false;
24
+ if (!('byType' in value) || value['byType'] === undefined)
25
+ return false;
26
+ return true;
27
+ }
28
+ export function QuizSessionSummaryScoreFromJSON(json) {
29
+ return QuizSessionSummaryScoreFromJSONTyped(json, false);
30
+ }
31
+ export function QuizSessionSummaryScoreFromJSONTyped(json, ignoreDiscriminator) {
32
+ if (json == null) {
33
+ return json;
34
+ }
35
+ return {
36
+ 'totalCorrect': json['totalCorrect'],
37
+ 'totalQuestions': json['totalQuestions'],
38
+ 'byType': (mapValues(json['byType'], ScoreByTypeValueFromJSON)),
39
+ };
40
+ }
41
+ export function QuizSessionSummaryScoreToJSON(json) {
42
+ return QuizSessionSummaryScoreToJSONTyped(json, false);
43
+ }
44
+ export function QuizSessionSummaryScoreToJSONTyped(value, ignoreDiscriminator = false) {
45
+ if (value == null) {
46
+ return value;
47
+ }
48
+ return {
49
+ 'totalCorrect': value['totalCorrect'],
50
+ 'totalQuestions': value['totalQuestions'],
51
+ 'byType': (mapValues(value['byType'], ScoreByTypeValueToJSON)),
52
+ };
53
+ }
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { QuizQuestion } from './QuizQuestion';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface QuizWithQuestions
17
+ */
18
+ export interface QuizWithQuestions {
19
+ /**
20
+ *
21
+ * @type {string}
22
+ * @memberof QuizWithQuestions
23
+ */
24
+ id: string;
25
+ /**
26
+ *
27
+ * @type {string}
28
+ * @memberof QuizWithQuestions
29
+ */
30
+ accountUserId: string;
31
+ /**
32
+ *
33
+ * @type {string}
34
+ * @memberof QuizWithQuestions
35
+ */
36
+ chatId?: string | null;
37
+ /**
38
+ *
39
+ * @type {string}
40
+ * @memberof QuizWithQuestions
41
+ */
42
+ title: string;
43
+ /**
44
+ *
45
+ * @type {string}
46
+ * @memberof QuizWithQuestions
47
+ */
48
+ topic: string;
49
+ /**
50
+ *
51
+ * @type {string}
52
+ * @memberof QuizWithQuestions
53
+ */
54
+ mode: QuizWithQuestionsModeEnum;
55
+ /**
56
+ *
57
+ * @type {Date}
58
+ * @memberof QuizWithQuestions
59
+ */
60
+ createdAt: Date;
61
+ /**
62
+ *
63
+ * @type {Array<QuizQuestion>}
64
+ * @memberof QuizWithQuestions
65
+ */
66
+ questions: Array<QuizQuestion>;
67
+ }
68
+ /**
69
+ * @export
70
+ */
71
+ export declare const QuizWithQuestionsModeEnum: {
72
+ readonly Quiz: "quiz";
73
+ readonly Flashcards: "flashcards";
74
+ };
75
+ export type QuizWithQuestionsModeEnum = typeof QuizWithQuestionsModeEnum[keyof typeof QuizWithQuestionsModeEnum];
76
+ /**
77
+ * Check if a given object implements the QuizWithQuestions interface.
78
+ */
79
+ export declare function instanceOfQuizWithQuestions(value: object): value is QuizWithQuestions;
80
+ export declare function QuizWithQuestionsFromJSON(json: any): QuizWithQuestions;
81
+ export declare function QuizWithQuestionsFromJSONTyped(json: any, ignoreDiscriminator: boolean): QuizWithQuestions;
82
+ export declare function QuizWithQuestionsToJSON(json: any): QuizWithQuestions;
83
+ export declare function QuizWithQuestionsToJSONTyped(value?: QuizWithQuestions | null, ignoreDiscriminator?: boolean): any;