@instructure/athena-api-client 2.26.0 → 2.28.0

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 (34) hide show
  1. package/README.md +6 -0
  2. package/dist/apis/PracticeQuizzesApi.d.ts +56 -0
  3. package/dist/apis/PracticeQuizzesApi.js +134 -0
  4. package/dist/apis/index.d.ts +1 -0
  5. package/dist/apis/index.js +1 -0
  6. package/dist/esm/apis/PracticeQuizzesApi.d.ts +56 -0
  7. package/dist/esm/apis/PracticeQuizzesApi.js +130 -0
  8. package/dist/esm/apis/index.d.ts +1 -0
  9. package/dist/esm/apis/index.js +1 -0
  10. package/dist/esm/models/CreateChatRequest.d.ts +6 -0
  11. package/dist/esm/models/CreateChatRequest.js +2 -0
  12. package/dist/esm/models/CreatePracticeQuizRequest.d.ts +58 -0
  13. package/dist/esm/models/CreatePracticeQuizRequest.js +60 -0
  14. package/dist/esm/models/PracticeQuiz.d.ts +38 -0
  15. package/dist/esm/models/PracticeQuiz.js +47 -0
  16. package/dist/esm/models/PracticeQuizStatus.d.ts +67 -0
  17. package/dist/esm/models/PracticeQuizStatus.js +70 -0
  18. package/dist/esm/models/PracticeQuizStatusList.d.ts +33 -0
  19. package/dist/esm/models/PracticeQuizStatusList.js +44 -0
  20. package/dist/esm/models/index.d.ts +4 -0
  21. package/dist/esm/models/index.js +4 -0
  22. package/dist/models/CreateChatRequest.d.ts +6 -0
  23. package/dist/models/CreateChatRequest.js +2 -0
  24. package/dist/models/CreatePracticeQuizRequest.d.ts +58 -0
  25. package/dist/models/CreatePracticeQuizRequest.js +68 -0
  26. package/dist/models/PracticeQuiz.d.ts +38 -0
  27. package/dist/models/PracticeQuiz.js +54 -0
  28. package/dist/models/PracticeQuizStatus.d.ts +67 -0
  29. package/dist/models/PracticeQuizStatus.js +78 -0
  30. package/dist/models/PracticeQuizStatusList.d.ts +33 -0
  31. package/dist/models/PracticeQuizStatusList.js +51 -0
  32. package/dist/models/index.d.ts +4 -0
  33. package/dist/models/index.js +4 -0
  34. package/package.json +1 -1
@@ -0,0 +1,47 @@
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
+ * Check if a given object implements the PracticeQuiz interface.
16
+ */
17
+ export function instanceOfPracticeQuiz(value) {
18
+ if (!('chatId' in value) || value['chatId'] === undefined)
19
+ return false;
20
+ if (!('isNew' in value) || value['isNew'] === undefined)
21
+ return false;
22
+ return true;
23
+ }
24
+ export function PracticeQuizFromJSON(json) {
25
+ return PracticeQuizFromJSONTyped(json, false);
26
+ }
27
+ export function PracticeQuizFromJSONTyped(json, ignoreDiscriminator) {
28
+ if (json == null) {
29
+ return json;
30
+ }
31
+ return {
32
+ 'chatId': json['chatId'],
33
+ 'isNew': json['isNew'],
34
+ };
35
+ }
36
+ export function PracticeQuizToJSON(json) {
37
+ return PracticeQuizToJSONTyped(json, false);
38
+ }
39
+ export function PracticeQuizToJSONTyped(value, ignoreDiscriminator = false) {
40
+ if (value == null) {
41
+ return value;
42
+ }
43
+ return {
44
+ 'chatId': value['chatId'],
45
+ 'isNew': value['isNew'],
46
+ };
47
+ }
@@ -0,0 +1,67 @@
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 PracticeQuizStatus
16
+ */
17
+ export interface PracticeQuizStatus {
18
+ /**
19
+ * Canvas object id ('{type}:{local_id}') the row refers to.
20
+ * @type {string}
21
+ * @memberof PracticeQuizStatus
22
+ */
23
+ canvasObjectId: string;
24
+ /**
25
+ * Quiz mode for this slot.
26
+ * @type {string}
27
+ * @memberof PracticeQuizStatus
28
+ */
29
+ mode: PracticeQuizStatusModeEnum;
30
+ /**
31
+ * Chat id associated with this practice-quiz slot, or null when no practice quiz exists yet for this (course, object, mode).
32
+ * @type {string}
33
+ * @memberof PracticeQuizStatus
34
+ */
35
+ chatId: string | null;
36
+ /**
37
+ * Latest quiz session status for the associated chat, or null when no chat exists or no session has been started.
38
+ * @type {string}
39
+ * @memberof PracticeQuizStatus
40
+ */
41
+ sessionStatus: PracticeQuizStatusSessionStatusEnum | null;
42
+ }
43
+ /**
44
+ * @export
45
+ */
46
+ export declare const PracticeQuizStatusModeEnum: {
47
+ readonly Quiz: "quiz";
48
+ readonly Flashcards: "flashcards";
49
+ };
50
+ export type PracticeQuizStatusModeEnum = typeof PracticeQuizStatusModeEnum[keyof typeof PracticeQuizStatusModeEnum];
51
+ /**
52
+ * @export
53
+ */
54
+ export declare const PracticeQuizStatusSessionStatusEnum: {
55
+ readonly Active: "active";
56
+ readonly Completed: "completed";
57
+ readonly Abandoned: "abandoned";
58
+ };
59
+ export type PracticeQuizStatusSessionStatusEnum = typeof PracticeQuizStatusSessionStatusEnum[keyof typeof PracticeQuizStatusSessionStatusEnum];
60
+ /**
61
+ * Check if a given object implements the PracticeQuizStatus interface.
62
+ */
63
+ export declare function instanceOfPracticeQuizStatus(value: object): value is PracticeQuizStatus;
64
+ export declare function PracticeQuizStatusFromJSON(json: any): PracticeQuizStatus;
65
+ export declare function PracticeQuizStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): PracticeQuizStatus;
66
+ export declare function PracticeQuizStatusToJSON(json: any): PracticeQuizStatus;
67
+ export declare function PracticeQuizStatusToJSONTyped(value?: PracticeQuizStatus | 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 PracticeQuizStatusModeEnum = {
18
+ Quiz: 'quiz',
19
+ Flashcards: 'flashcards'
20
+ };
21
+ /**
22
+ * @export
23
+ */
24
+ export const PracticeQuizStatusSessionStatusEnum = {
25
+ Active: 'active',
26
+ Completed: 'completed',
27
+ Abandoned: 'abandoned'
28
+ };
29
+ /**
30
+ * Check if a given object implements the PracticeQuizStatus interface.
31
+ */
32
+ export function instanceOfPracticeQuizStatus(value) {
33
+ if (!('canvasObjectId' in value) || value['canvasObjectId'] === undefined)
34
+ return false;
35
+ if (!('mode' in value) || value['mode'] === undefined)
36
+ return false;
37
+ if (!('chatId' in value) || value['chatId'] === undefined)
38
+ return false;
39
+ if (!('sessionStatus' in value) || value['sessionStatus'] === undefined)
40
+ return false;
41
+ return true;
42
+ }
43
+ export function PracticeQuizStatusFromJSON(json) {
44
+ return PracticeQuizStatusFromJSONTyped(json, false);
45
+ }
46
+ export function PracticeQuizStatusFromJSONTyped(json, ignoreDiscriminator) {
47
+ if (json == null) {
48
+ return json;
49
+ }
50
+ return {
51
+ 'canvasObjectId': json['canvasObjectId'],
52
+ 'mode': json['mode'],
53
+ 'chatId': json['chatId'],
54
+ 'sessionStatus': json['sessionStatus'],
55
+ };
56
+ }
57
+ export function PracticeQuizStatusToJSON(json) {
58
+ return PracticeQuizStatusToJSONTyped(json, false);
59
+ }
60
+ export function PracticeQuizStatusToJSONTyped(value, ignoreDiscriminator = false) {
61
+ if (value == null) {
62
+ return value;
63
+ }
64
+ return {
65
+ 'canvasObjectId': value['canvasObjectId'],
66
+ 'mode': value['mode'],
67
+ 'chatId': value['chatId'],
68
+ 'sessionStatus': value['sessionStatus'],
69
+ };
70
+ }
@@ -0,0 +1,33 @@
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 { PracticeQuizStatus } from './PracticeQuizStatus';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface PracticeQuizStatusList
17
+ */
18
+ export interface PracticeQuizStatusList {
19
+ /**
20
+ * One entry per requested (canvasObjectId, mode) pair within the supplied globalCourseId, including nulls for pairs with no row.
21
+ * @type {Array<PracticeQuizStatus>}
22
+ * @memberof PracticeQuizStatusList
23
+ */
24
+ items: Array<PracticeQuizStatus>;
25
+ }
26
+ /**
27
+ * Check if a given object implements the PracticeQuizStatusList interface.
28
+ */
29
+ export declare function instanceOfPracticeQuizStatusList(value: object): value is PracticeQuizStatusList;
30
+ export declare function PracticeQuizStatusListFromJSON(json: any): PracticeQuizStatusList;
31
+ export declare function PracticeQuizStatusListFromJSONTyped(json: any, ignoreDiscriminator: boolean): PracticeQuizStatusList;
32
+ export declare function PracticeQuizStatusListToJSON(json: any): PracticeQuizStatusList;
33
+ export declare function PracticeQuizStatusListToJSONTyped(value?: PracticeQuizStatusList | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,44 @@
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 { PracticeQuizStatusFromJSON, PracticeQuizStatusToJSON, } from './PracticeQuizStatus';
15
+ /**
16
+ * Check if a given object implements the PracticeQuizStatusList interface.
17
+ */
18
+ export function instanceOfPracticeQuizStatusList(value) {
19
+ if (!('items' in value) || value['items'] === undefined)
20
+ return false;
21
+ return true;
22
+ }
23
+ export function PracticeQuizStatusListFromJSON(json) {
24
+ return PracticeQuizStatusListFromJSONTyped(json, false);
25
+ }
26
+ export function PracticeQuizStatusListFromJSONTyped(json, ignoreDiscriminator) {
27
+ if (json == null) {
28
+ return json;
29
+ }
30
+ return {
31
+ 'items': (json['items'].map(PracticeQuizStatusFromJSON)),
32
+ };
33
+ }
34
+ export function PracticeQuizStatusListToJSON(json) {
35
+ return PracticeQuizStatusListToJSONTyped(json, false);
36
+ }
37
+ export function PracticeQuizStatusListToJSONTyped(value, ignoreDiscriminator = false) {
38
+ if (value == null) {
39
+ return value;
40
+ }
41
+ return {
42
+ 'items': (value['items'].map(PracticeQuizStatusToJSON)),
43
+ };
44
+ }
@@ -35,6 +35,7 @@ export * from './CreateMessagesRequest';
35
35
  export * from './CreateMessagesRequestMessagesInner';
36
36
  export * from './CreateMessagesResponse';
37
37
  export * from './CreatePlanDto';
38
+ export * from './CreatePracticeQuizRequest';
38
39
  export * from './CreateTokenRequest';
39
40
  export * from './CreateTokenResponse';
40
41
  export * from './DailyQuizStatus';
@@ -60,6 +61,9 @@ export * from './PaginatedQuizzes';
60
61
  export * from './PaginatedTaxonomies';
61
62
  export * from './PaginatedUserConcepts';
62
63
  export * from './Plan';
64
+ export * from './PracticeQuiz';
65
+ export * from './PracticeQuizStatus';
66
+ export * from './PracticeQuizStatusList';
63
67
  export * from './Quiz';
64
68
  export * from './QuizListItem';
65
69
  export * from './QuizQuestion';
@@ -37,6 +37,7 @@ export * from './CreateMessagesRequest';
37
37
  export * from './CreateMessagesRequestMessagesInner';
38
38
  export * from './CreateMessagesResponse';
39
39
  export * from './CreatePlanDto';
40
+ export * from './CreatePracticeQuizRequest';
40
41
  export * from './CreateTokenRequest';
41
42
  export * from './CreateTokenResponse';
42
43
  export * from './DailyQuizStatus';
@@ -62,6 +63,9 @@ export * from './PaginatedQuizzes';
62
63
  export * from './PaginatedTaxonomies';
63
64
  export * from './PaginatedUserConcepts';
64
65
  export * from './Plan';
66
+ export * from './PracticeQuiz';
67
+ export * from './PracticeQuizStatus';
68
+ export * from './PracticeQuizStatusList';
65
69
  export * from './Quiz';
66
70
  export * from './QuizListItem';
67
71
  export * from './QuizQuestion';
@@ -51,6 +51,12 @@ export interface CreateChatRequest {
51
51
  * @memberof CreateChatRequest
52
52
  */
53
53
  initialStrength?: number;
54
+ /**
55
+ * Optional study guide (taxonomy) this chat is scoped to. Persists on `chats.taxonomyId` for any chatType — the existing AI tooling (`getTaxonomy` + `getUserTaxonomyProgress` tool registration, study-guide-scoped system prompt) keys off the row regardless of chatType. The level-up prompt additionally injects the study guide name + description as anchoring context in the prompt body. Caller must be actively enrolled in the supplied taxonomy or the request is rejected with 403, matching the message-stream path's enrollment check.
56
+ * @type {string}
57
+ * @memberof CreateChatRequest
58
+ */
59
+ taxonomyId?: string;
54
60
  }
55
61
  /**
56
62
  * @export
@@ -46,6 +46,7 @@ function CreateChatRequestFromJSONTyped(json, ignoreDiscriminator) {
46
46
  'visibility': json['visibility'] == null ? undefined : json['visibility'],
47
47
  'primaryConceptId': json['primaryConceptId'] == null ? undefined : json['primaryConceptId'],
48
48
  'initialStrength': json['initialStrength'] == null ? undefined : json['initialStrength'],
49
+ 'taxonomyId': json['taxonomyId'] == null ? undefined : json['taxonomyId'],
49
50
  };
50
51
  }
51
52
  function CreateChatRequestToJSON(json) {
@@ -62,5 +63,6 @@ function CreateChatRequestToJSONTyped(value, ignoreDiscriminator = false) {
62
63
  'visibility': value['visibility'],
63
64
  'primaryConceptId': value['primaryConceptId'],
64
65
  'initialStrength': value['initialStrength'],
66
+ 'taxonomyId': value['taxonomyId'],
65
67
  };
66
68
  }
@@ -0,0 +1,58 @@
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 CreatePracticeQuizRequest
16
+ */
17
+ export interface CreatePracticeQuizRequest {
18
+ /**
19
+ * Canvas global course id. Together with canvasObjectId + mode it identifies the per-exam slot for this learner.
20
+ * @type {string}
21
+ * @memberof CreatePracticeQuizRequest
22
+ */
23
+ globalCourseId: string;
24
+ /**
25
+ * Canvas object identifier formatted '{type}:{local_id}' — e.g. 'assignment:67890' or 'quiz:99999'. The type prefix is required because Canvas namespaces local ids by type.
26
+ * @type {string}
27
+ * @memberof CreatePracticeQuizRequest
28
+ */
29
+ canvasObjectId: string;
30
+ /**
31
+ * Quiz mode: 'quiz' for a graded practice quiz, 'flashcards' for a flashcard set.
32
+ * @type {string}
33
+ * @memberof CreatePracticeQuizRequest
34
+ */
35
+ mode: CreatePracticeQuizRequestModeEnum;
36
+ /**
37
+ * When true, abandon the existing association (if any) and create a new chat. The old chat remains in the learner's history.
38
+ * @type {boolean}
39
+ * @memberof CreatePracticeQuizRequest
40
+ */
41
+ forceNew?: boolean;
42
+ }
43
+ /**
44
+ * @export
45
+ */
46
+ export declare const CreatePracticeQuizRequestModeEnum: {
47
+ readonly Quiz: "quiz";
48
+ readonly Flashcards: "flashcards";
49
+ };
50
+ export type CreatePracticeQuizRequestModeEnum = typeof CreatePracticeQuizRequestModeEnum[keyof typeof CreatePracticeQuizRequestModeEnum];
51
+ /**
52
+ * Check if a given object implements the CreatePracticeQuizRequest interface.
53
+ */
54
+ export declare function instanceOfCreatePracticeQuizRequest(value: object): value is CreatePracticeQuizRequest;
55
+ export declare function CreatePracticeQuizRequestFromJSON(json: any): CreatePracticeQuizRequest;
56
+ export declare function CreatePracticeQuizRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreatePracticeQuizRequest;
57
+ export declare function CreatePracticeQuizRequestToJSON(json: any): CreatePracticeQuizRequest;
58
+ export declare function CreatePracticeQuizRequestToJSONTyped(value?: CreatePracticeQuizRequest | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Athena API
6
+ * REST API for the Athena system
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.CreatePracticeQuizRequestModeEnum = void 0;
17
+ exports.instanceOfCreatePracticeQuizRequest = instanceOfCreatePracticeQuizRequest;
18
+ exports.CreatePracticeQuizRequestFromJSON = CreatePracticeQuizRequestFromJSON;
19
+ exports.CreatePracticeQuizRequestFromJSONTyped = CreatePracticeQuizRequestFromJSONTyped;
20
+ exports.CreatePracticeQuizRequestToJSON = CreatePracticeQuizRequestToJSON;
21
+ exports.CreatePracticeQuizRequestToJSONTyped = CreatePracticeQuizRequestToJSONTyped;
22
+ /**
23
+ * @export
24
+ */
25
+ exports.CreatePracticeQuizRequestModeEnum = {
26
+ Quiz: 'quiz',
27
+ Flashcards: 'flashcards'
28
+ };
29
+ /**
30
+ * Check if a given object implements the CreatePracticeQuizRequest interface.
31
+ */
32
+ function instanceOfCreatePracticeQuizRequest(value) {
33
+ if (!('globalCourseId' in value) || value['globalCourseId'] === undefined)
34
+ return false;
35
+ if (!('canvasObjectId' in value) || value['canvasObjectId'] === undefined)
36
+ return false;
37
+ if (!('mode' in value) || value['mode'] === undefined)
38
+ return false;
39
+ return true;
40
+ }
41
+ function CreatePracticeQuizRequestFromJSON(json) {
42
+ return CreatePracticeQuizRequestFromJSONTyped(json, false);
43
+ }
44
+ function CreatePracticeQuizRequestFromJSONTyped(json, ignoreDiscriminator) {
45
+ if (json == null) {
46
+ return json;
47
+ }
48
+ return {
49
+ 'globalCourseId': json['globalCourseId'],
50
+ 'canvasObjectId': json['canvasObjectId'],
51
+ 'mode': json['mode'],
52
+ 'forceNew': json['forceNew'] == null ? undefined : json['forceNew'],
53
+ };
54
+ }
55
+ function CreatePracticeQuizRequestToJSON(json) {
56
+ return CreatePracticeQuizRequestToJSONTyped(json, false);
57
+ }
58
+ function CreatePracticeQuizRequestToJSONTyped(value, ignoreDiscriminator = false) {
59
+ if (value == null) {
60
+ return value;
61
+ }
62
+ return {
63
+ 'globalCourseId': value['globalCourseId'],
64
+ 'canvasObjectId': value['canvasObjectId'],
65
+ 'mode': value['mode'],
66
+ 'forceNew': value['forceNew'],
67
+ };
68
+ }
@@ -0,0 +1,38 @@
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 PracticeQuiz
16
+ */
17
+ export interface PracticeQuiz {
18
+ /**
19
+ * Chat id associated with the practice-quiz slot.
20
+ * @type {string}
21
+ * @memberof PracticeQuiz
22
+ */
23
+ chatId: string;
24
+ /**
25
+ * True when this call created a new chat for the slot. False when an existing chat was returned (find-or-create idempotent path).
26
+ * @type {boolean}
27
+ * @memberof PracticeQuiz
28
+ */
29
+ isNew: boolean;
30
+ }
31
+ /**
32
+ * Check if a given object implements the PracticeQuiz interface.
33
+ */
34
+ export declare function instanceOfPracticeQuiz(value: object): value is PracticeQuiz;
35
+ export declare function PracticeQuizFromJSON(json: any): PracticeQuiz;
36
+ export declare function PracticeQuizFromJSONTyped(json: any, ignoreDiscriminator: boolean): PracticeQuiz;
37
+ export declare function PracticeQuizToJSON(json: any): PracticeQuiz;
38
+ export declare function PracticeQuizToJSONTyped(value?: PracticeQuiz | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Athena API
6
+ * REST API for the Athena system
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfPracticeQuiz = instanceOfPracticeQuiz;
17
+ exports.PracticeQuizFromJSON = PracticeQuizFromJSON;
18
+ exports.PracticeQuizFromJSONTyped = PracticeQuizFromJSONTyped;
19
+ exports.PracticeQuizToJSON = PracticeQuizToJSON;
20
+ exports.PracticeQuizToJSONTyped = PracticeQuizToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the PracticeQuiz interface.
23
+ */
24
+ function instanceOfPracticeQuiz(value) {
25
+ if (!('chatId' in value) || value['chatId'] === undefined)
26
+ return false;
27
+ if (!('isNew' in value) || value['isNew'] === undefined)
28
+ return false;
29
+ return true;
30
+ }
31
+ function PracticeQuizFromJSON(json) {
32
+ return PracticeQuizFromJSONTyped(json, false);
33
+ }
34
+ function PracticeQuizFromJSONTyped(json, ignoreDiscriminator) {
35
+ if (json == null) {
36
+ return json;
37
+ }
38
+ return {
39
+ 'chatId': json['chatId'],
40
+ 'isNew': json['isNew'],
41
+ };
42
+ }
43
+ function PracticeQuizToJSON(json) {
44
+ return PracticeQuizToJSONTyped(json, false);
45
+ }
46
+ function PracticeQuizToJSONTyped(value, ignoreDiscriminator = false) {
47
+ if (value == null) {
48
+ return value;
49
+ }
50
+ return {
51
+ 'chatId': value['chatId'],
52
+ 'isNew': value['isNew'],
53
+ };
54
+ }
@@ -0,0 +1,67 @@
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 PracticeQuizStatus
16
+ */
17
+ export interface PracticeQuizStatus {
18
+ /**
19
+ * Canvas object id ('{type}:{local_id}') the row refers to.
20
+ * @type {string}
21
+ * @memberof PracticeQuizStatus
22
+ */
23
+ canvasObjectId: string;
24
+ /**
25
+ * Quiz mode for this slot.
26
+ * @type {string}
27
+ * @memberof PracticeQuizStatus
28
+ */
29
+ mode: PracticeQuizStatusModeEnum;
30
+ /**
31
+ * Chat id associated with this practice-quiz slot, or null when no practice quiz exists yet for this (course, object, mode).
32
+ * @type {string}
33
+ * @memberof PracticeQuizStatus
34
+ */
35
+ chatId: string | null;
36
+ /**
37
+ * Latest quiz session status for the associated chat, or null when no chat exists or no session has been started.
38
+ * @type {string}
39
+ * @memberof PracticeQuizStatus
40
+ */
41
+ sessionStatus: PracticeQuizStatusSessionStatusEnum | null;
42
+ }
43
+ /**
44
+ * @export
45
+ */
46
+ export declare const PracticeQuizStatusModeEnum: {
47
+ readonly Quiz: "quiz";
48
+ readonly Flashcards: "flashcards";
49
+ };
50
+ export type PracticeQuizStatusModeEnum = typeof PracticeQuizStatusModeEnum[keyof typeof PracticeQuizStatusModeEnum];
51
+ /**
52
+ * @export
53
+ */
54
+ export declare const PracticeQuizStatusSessionStatusEnum: {
55
+ readonly Active: "active";
56
+ readonly Completed: "completed";
57
+ readonly Abandoned: "abandoned";
58
+ };
59
+ export type PracticeQuizStatusSessionStatusEnum = typeof PracticeQuizStatusSessionStatusEnum[keyof typeof PracticeQuizStatusSessionStatusEnum];
60
+ /**
61
+ * Check if a given object implements the PracticeQuizStatus interface.
62
+ */
63
+ export declare function instanceOfPracticeQuizStatus(value: object): value is PracticeQuizStatus;
64
+ export declare function PracticeQuizStatusFromJSON(json: any): PracticeQuizStatus;
65
+ export declare function PracticeQuizStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): PracticeQuizStatus;
66
+ export declare function PracticeQuizStatusToJSON(json: any): PracticeQuizStatus;
67
+ export declare function PracticeQuizStatusToJSONTyped(value?: PracticeQuizStatus | null, ignoreDiscriminator?: boolean): any;