@instructure/athena-api-client 3.39.3 → 3.41.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 (142) hide show
  1. package/README.md +28 -0
  2. package/dist/apis/AdminApi.d.ts +17 -1
  3. package/dist/apis/AdminApi.js +47 -0
  4. package/dist/apis/QuizzesApi.d.ts +30 -1
  5. package/dist/apis/QuizzesApi.js +87 -0
  6. package/dist/apis/ResourcesApi.d.ts +11 -2
  7. package/dist/apis/ResourcesApi.js +13 -3
  8. package/dist/apis/SharedQuizzesApi.d.ts +46 -0
  9. package/dist/apis/SharedQuizzesApi.js +115 -0
  10. package/dist/apis/StudyObjectivesApi.d.ts +2 -2
  11. package/dist/apis/StudyObjectivesApi.js +2 -2
  12. package/dist/apis/StudySpaceTemplatesApi.d.ts +61 -0
  13. package/dist/apis/StudySpaceTemplatesApi.js +162 -0
  14. package/dist/apis/index.d.ts +2 -0
  15. package/dist/apis/index.js +2 -0
  16. package/dist/esm/apis/AdminApi.d.ts +17 -1
  17. package/dist/esm/apis/AdminApi.js +48 -1
  18. package/dist/esm/apis/QuizzesApi.d.ts +30 -1
  19. package/dist/esm/apis/QuizzesApi.js +88 -1
  20. package/dist/esm/apis/ResourcesApi.d.ts +11 -2
  21. package/dist/esm/apis/ResourcesApi.js +12 -2
  22. package/dist/esm/apis/SharedQuizzesApi.d.ts +46 -0
  23. package/dist/esm/apis/SharedQuizzesApi.js +111 -0
  24. package/dist/esm/apis/StudyObjectivesApi.d.ts +2 -2
  25. package/dist/esm/apis/StudyObjectivesApi.js +2 -2
  26. package/dist/esm/apis/StudySpaceTemplatesApi.d.ts +61 -0
  27. package/dist/esm/apis/StudySpaceTemplatesApi.js +158 -0
  28. package/dist/esm/apis/index.d.ts +2 -0
  29. package/dist/esm/apis/index.js +2 -0
  30. package/dist/esm/models/AdminPaginatedQuizParticipantSessions.d.ts +39 -0
  31. package/dist/esm/models/AdminPaginatedQuizParticipantSessions.js +48 -0
  32. package/dist/esm/models/AdminQuizParticipantSessionListItem.d.ts +84 -0
  33. package/dist/esm/models/AdminQuizParticipantSessionListItem.js +80 -0
  34. package/dist/esm/models/AdminQuizParticipantSessionScore.d.ts +44 -0
  35. package/dist/esm/models/AdminQuizParticipantSessionScore.js +51 -0
  36. package/dist/esm/models/AdminStudyObjectiveListItem.d.ts +2 -1
  37. package/dist/esm/models/AdminStudyObjectiveListItem.js +2 -1
  38. package/dist/esm/models/CreateStudySpaceFromTemplateDto.d.ts +38 -0
  39. package/dist/esm/models/CreateStudySpaceFromTemplateDto.js +45 -0
  40. package/dist/esm/models/QuizSharing.d.ts +50 -0
  41. package/dist/esm/models/QuizSharing.js +55 -0
  42. package/dist/esm/models/ResourceListItem.d.ts +16 -3
  43. package/dist/esm/models/ResourceListItem.js +9 -0
  44. package/dist/esm/models/ResourceSharing.d.ts +44 -0
  45. package/dist/esm/models/ResourceSharing.js +51 -0
  46. package/dist/esm/models/ScheduleStudySpaceTemplateDto.d.ts +32 -0
  47. package/dist/esm/models/ScheduleStudySpaceTemplateDto.js +43 -0
  48. package/dist/esm/models/SharedQuiz.d.ts +97 -0
  49. package/dist/esm/models/SharedQuiz.js +90 -0
  50. package/dist/esm/models/StudyObjective.d.ts +8 -1
  51. package/dist/esm/models/StudyObjective.js +6 -1
  52. package/dist/esm/models/StudySpace.d.ts +12 -0
  53. package/dist/esm/models/StudySpace.js +8 -0
  54. package/dist/esm/models/StudySpaceFromTemplate.d.ts +40 -0
  55. package/dist/esm/models/StudySpaceFromTemplate.js +49 -0
  56. package/dist/esm/models/StudySpaceTemplate.d.ts +117 -0
  57. package/dist/esm/models/StudySpaceTemplate.js +102 -0
  58. package/dist/esm/models/StudySpaceTemplateAnchor.d.ts +44 -0
  59. package/dist/esm/models/StudySpaceTemplateAnchor.js +51 -0
  60. package/dist/esm/models/StudySpaceTemplateConfirm.d.ts +33 -0
  61. package/dist/esm/models/StudySpaceTemplateConfirm.js +44 -0
  62. package/dist/esm/models/StudySpaceTemplateLegal.d.ts +32 -0
  63. package/dist/esm/models/StudySpaceTemplateLegal.js +43 -0
  64. package/dist/esm/models/StudySpaceTemplateLink.d.ts +38 -0
  65. package/dist/esm/models/StudySpaceTemplateLink.js +47 -0
  66. package/dist/esm/models/StudySpaceTemplateNotice.d.ts +38 -0
  67. package/dist/esm/models/StudySpaceTemplateNotice.js +47 -0
  68. package/dist/esm/models/StudySpaceTemplateObjective.d.ts +52 -0
  69. package/dist/esm/models/StudySpaceTemplateObjective.js +58 -0
  70. package/dist/esm/models/StudySpaceTemplateProvenance.d.ts +32 -0
  71. package/dist/esm/models/StudySpaceTemplateProvenance.js +43 -0
  72. package/dist/esm/models/StudySpaceTemplateSchedule.d.ts +51 -0
  73. package/dist/esm/models/StudySpaceTemplateSchedule.js +57 -0
  74. package/dist/esm/models/StudySpaceTemplateScheduleItem.d.ts +50 -0
  75. package/dist/esm/models/StudySpaceTemplateScheduleItem.js +55 -0
  76. package/dist/esm/models/SyllabusAnalysisObjective.d.ts +1 -0
  77. package/dist/esm/models/SyllabusAnalysisObjective.js +2 -1
  78. package/dist/esm/models/TriggerStudyObjectiveConceptExtractionItemStatus.d.ts +2 -1
  79. package/dist/esm/models/TriggerStudyObjectiveConceptExtractionItemStatus.js +1 -0
  80. package/dist/esm/models/UpcomingStudyObjective.d.ts +8 -1
  81. package/dist/esm/models/UpcomingStudyObjective.js +6 -1
  82. package/dist/esm/models/UpdateQuizSharingRequest.d.ts +32 -0
  83. package/dist/esm/models/UpdateQuizSharingRequest.js +43 -0
  84. package/dist/esm/models/index.d.ts +20 -0
  85. package/dist/esm/models/index.js +20 -0
  86. package/dist/models/AdminPaginatedQuizParticipantSessions.d.ts +39 -0
  87. package/dist/models/AdminPaginatedQuizParticipantSessions.js +55 -0
  88. package/dist/models/AdminQuizParticipantSessionListItem.d.ts +84 -0
  89. package/dist/models/AdminQuizParticipantSessionListItem.js +88 -0
  90. package/dist/models/AdminQuizParticipantSessionScore.d.ts +44 -0
  91. package/dist/models/AdminQuizParticipantSessionScore.js +58 -0
  92. package/dist/models/AdminStudyObjectiveListItem.d.ts +2 -1
  93. package/dist/models/AdminStudyObjectiveListItem.js +2 -1
  94. package/dist/models/CreateStudySpaceFromTemplateDto.d.ts +38 -0
  95. package/dist/models/CreateStudySpaceFromTemplateDto.js +52 -0
  96. package/dist/models/QuizSharing.d.ts +50 -0
  97. package/dist/models/QuizSharing.js +62 -0
  98. package/dist/models/ResourceListItem.d.ts +16 -3
  99. package/dist/models/ResourceListItem.js +9 -0
  100. package/dist/models/ResourceSharing.d.ts +44 -0
  101. package/dist/models/ResourceSharing.js +58 -0
  102. package/dist/models/ScheduleStudySpaceTemplateDto.d.ts +32 -0
  103. package/dist/models/ScheduleStudySpaceTemplateDto.js +50 -0
  104. package/dist/models/SharedQuiz.d.ts +97 -0
  105. package/dist/models/SharedQuiz.js +98 -0
  106. package/dist/models/StudyObjective.d.ts +8 -1
  107. package/dist/models/StudyObjective.js +6 -1
  108. package/dist/models/StudySpace.d.ts +12 -0
  109. package/dist/models/StudySpace.js +8 -0
  110. package/dist/models/StudySpaceFromTemplate.d.ts +40 -0
  111. package/dist/models/StudySpaceFromTemplate.js +56 -0
  112. package/dist/models/StudySpaceTemplate.d.ts +117 -0
  113. package/dist/models/StudySpaceTemplate.js +109 -0
  114. package/dist/models/StudySpaceTemplateAnchor.d.ts +44 -0
  115. package/dist/models/StudySpaceTemplateAnchor.js +58 -0
  116. package/dist/models/StudySpaceTemplateConfirm.d.ts +33 -0
  117. package/dist/models/StudySpaceTemplateConfirm.js +51 -0
  118. package/dist/models/StudySpaceTemplateLegal.d.ts +32 -0
  119. package/dist/models/StudySpaceTemplateLegal.js +50 -0
  120. package/dist/models/StudySpaceTemplateLink.d.ts +38 -0
  121. package/dist/models/StudySpaceTemplateLink.js +54 -0
  122. package/dist/models/StudySpaceTemplateNotice.d.ts +38 -0
  123. package/dist/models/StudySpaceTemplateNotice.js +54 -0
  124. package/dist/models/StudySpaceTemplateObjective.d.ts +52 -0
  125. package/dist/models/StudySpaceTemplateObjective.js +66 -0
  126. package/dist/models/StudySpaceTemplateProvenance.d.ts +32 -0
  127. package/dist/models/StudySpaceTemplateProvenance.js +50 -0
  128. package/dist/models/StudySpaceTemplateSchedule.d.ts +51 -0
  129. package/dist/models/StudySpaceTemplateSchedule.js +65 -0
  130. package/dist/models/StudySpaceTemplateScheduleItem.d.ts +50 -0
  131. package/dist/models/StudySpaceTemplateScheduleItem.js +62 -0
  132. package/dist/models/SyllabusAnalysisObjective.d.ts +1 -0
  133. package/dist/models/SyllabusAnalysisObjective.js +2 -1
  134. package/dist/models/TriggerStudyObjectiveConceptExtractionItemStatus.d.ts +2 -1
  135. package/dist/models/TriggerStudyObjectiveConceptExtractionItemStatus.js +1 -0
  136. package/dist/models/UpcomingStudyObjective.d.ts +8 -1
  137. package/dist/models/UpcomingStudyObjective.js +6 -1
  138. package/dist/models/UpdateQuizSharingRequest.d.ts +32 -0
  139. package/dist/models/UpdateQuizSharingRequest.js +50 -0
  140. package/dist/models/index.d.ts +20 -0
  141. package/dist/models/index.js +20 -0
  142. package/package.json +1 -1
@@ -27,7 +27,7 @@ import { PaginatedResourcesFromJSON, } from '../models/index';
27
27
  */
28
28
  export class ResourcesApi extends runtime.BaseAPI {
29
29
  /**
30
- * Returns the authenticated user\'s quizzes and flashcard sets, newest first, each with its question rollup, originating chat, course attribution, study objective, and session activity. Intended for a library view, so every row carries enough to render a card without a follow-up request.
30
+ * Returns the authenticated user\'s quizzes and flashcard sets, newest first, each with its question rollup, originating chat, course attribution, study objective, and session activity. Intended for a library view, so every row carries enough to render a card without a follow-up request. By default lists what the user generated; `ownership=shared` lists other learners\' resources the user has opened through a share link, with the owner\'s chat, objective, space, and course withheld.
31
31
  * List the user\'s generated study resources
32
32
  */
33
33
  listResourcesRaw(requestParameters, initOverrides) {
@@ -45,6 +45,9 @@ export class ResourcesApi extends runtime.BaseAPI {
45
45
  if (requestParameters['type'] != null) {
46
46
  queryParameters['type'] = requestParameters['type'];
47
47
  }
48
+ if (requestParameters['ownership'] != null) {
49
+ queryParameters['ownership'] = requestParameters['ownership'];
50
+ }
48
51
  if (requestParameters['courseId'] != null) {
49
52
  queryParameters['courseId'] = requestParameters['courseId'];
50
53
  }
@@ -75,7 +78,7 @@ export class ResourcesApi extends runtime.BaseAPI {
75
78
  });
76
79
  }
77
80
  /**
78
- * Returns the authenticated user\'s quizzes and flashcard sets, newest first, each with its question rollup, originating chat, course attribution, study objective, and session activity. Intended for a library view, so every row carries enough to render a card without a follow-up request.
81
+ * Returns the authenticated user\'s quizzes and flashcard sets, newest first, each with its question rollup, originating chat, course attribution, study objective, and session activity. Intended for a library view, so every row carries enough to render a card without a follow-up request. By default lists what the user generated; `ownership=shared` lists other learners\' resources the user has opened through a share link, with the owner\'s chat, objective, space, and course withheld.
79
82
  * List the user\'s generated study resources
80
83
  */
81
84
  listResources(requestParameters, initOverrides) {
@@ -92,6 +95,13 @@ export const ListResourcesTypeEnum = {
92
95
  Quiz: 'quiz',
93
96
  Flashcards: 'flashcards'
94
97
  };
98
+ /**
99
+ * @export
100
+ */
101
+ export const ListResourcesOwnershipEnum = {
102
+ Owned: 'owned',
103
+ Shared: 'shared'
104
+ };
95
105
  /**
96
106
  * @export
97
107
  */
@@ -0,0 +1,46 @@
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 * as runtime from '../runtime';
13
+ import type { QuizSession, SharedQuiz } from '../models/index';
14
+ export interface GetSharedQuizRequest {
15
+ token: string;
16
+ xUserId: string;
17
+ }
18
+ export interface StartSharedQuizSessionRequest {
19
+ token: string;
20
+ xUserId: string;
21
+ }
22
+ /**
23
+ *
24
+ */
25
+ export declare class SharedQuizzesApi extends runtime.BaseAPI {
26
+ /**
27
+ * Returns the quiz behind a share link: enough to render a landing card and start a session, without identifying the owner.
28
+ * Resolve a quiz share link
29
+ */
30
+ getSharedQuizRaw(requestParameters: GetSharedQuizRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SharedQuiz>>;
31
+ /**
32
+ * Returns the quiz behind a share link: enough to render a landing card and start a session, without identifying the owner.
33
+ * Resolve a quiz share link
34
+ */
35
+ getSharedQuiz(requestParameters: GetSharedQuizRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SharedQuiz>;
36
+ /**
37
+ * Returns the caller\'s active session on the quiz behind the link, creating one if none is active. The session belongs to the caller; its answers never touch the owner\'s progress. Returns 201 whether the session was created or resumed.
38
+ * Start or resume the caller\'s session on a shared quiz
39
+ */
40
+ startSharedQuizSessionRaw(requestParameters: StartSharedQuizSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QuizSession>>;
41
+ /**
42
+ * Returns the caller\'s active session on the quiz behind the link, creating one if none is active. The session belongs to the caller; its answers never touch the owner\'s progress. Returns 201 whether the session was created or resumed.
43
+ * Start or resume the caller\'s session on a shared quiz
44
+ */
45
+ startSharedQuizSession(requestParameters: StartSharedQuizSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QuizSession>;
46
+ }
@@ -0,0 +1,111 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ import * as runtime from '../runtime';
24
+ import { QuizSessionFromJSON, SharedQuizFromJSON, } from '../models/index';
25
+ /**
26
+ *
27
+ */
28
+ export class SharedQuizzesApi extends runtime.BaseAPI {
29
+ /**
30
+ * Returns the quiz behind a share link: enough to render a landing card and start a session, without identifying the owner.
31
+ * Resolve a quiz share link
32
+ */
33
+ getSharedQuizRaw(requestParameters, initOverrides) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ if (requestParameters['token'] == null) {
36
+ throw new runtime.RequiredError('token', 'Required parameter "token" was null or undefined when calling getSharedQuiz().');
37
+ }
38
+ if (requestParameters['xUserId'] == null) {
39
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling getSharedQuiz().');
40
+ }
41
+ const queryParameters = {};
42
+ const headerParameters = {};
43
+ if (requestParameters['xUserId'] != null) {
44
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
45
+ }
46
+ if (this.configuration && this.configuration.apiKey) {
47
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
48
+ }
49
+ let urlPath = `/api/v1/shared-quizzes/{token}`;
50
+ urlPath = urlPath.replace(`{${"token"}}`, encodeURIComponent(String(requestParameters['token'])));
51
+ const response = yield this.request({
52
+ path: urlPath,
53
+ method: 'GET',
54
+ headers: headerParameters,
55
+ query: queryParameters,
56
+ }, initOverrides);
57
+ return new runtime.JSONApiResponse(response, (jsonValue) => SharedQuizFromJSON(jsonValue));
58
+ });
59
+ }
60
+ /**
61
+ * Returns the quiz behind a share link: enough to render a landing card and start a session, without identifying the owner.
62
+ * Resolve a quiz share link
63
+ */
64
+ getSharedQuiz(requestParameters, initOverrides) {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ const response = yield this.getSharedQuizRaw(requestParameters, initOverrides);
67
+ return yield response.value();
68
+ });
69
+ }
70
+ /**
71
+ * Returns the caller\'s active session on the quiz behind the link, creating one if none is active. The session belongs to the caller; its answers never touch the owner\'s progress. Returns 201 whether the session was created or resumed.
72
+ * Start or resume the caller\'s session on a shared quiz
73
+ */
74
+ startSharedQuizSessionRaw(requestParameters, initOverrides) {
75
+ return __awaiter(this, void 0, void 0, function* () {
76
+ if (requestParameters['token'] == null) {
77
+ throw new runtime.RequiredError('token', 'Required parameter "token" was null or undefined when calling startSharedQuizSession().');
78
+ }
79
+ if (requestParameters['xUserId'] == null) {
80
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling startSharedQuizSession().');
81
+ }
82
+ const queryParameters = {};
83
+ const headerParameters = {};
84
+ if (requestParameters['xUserId'] != null) {
85
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
86
+ }
87
+ if (this.configuration && this.configuration.apiKey) {
88
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
89
+ }
90
+ let urlPath = `/api/v1/shared-quizzes/{token}/sessions`;
91
+ urlPath = urlPath.replace(`{${"token"}}`, encodeURIComponent(String(requestParameters['token'])));
92
+ const response = yield this.request({
93
+ path: urlPath,
94
+ method: 'POST',
95
+ headers: headerParameters,
96
+ query: queryParameters,
97
+ }, initOverrides);
98
+ return new runtime.JSONApiResponse(response, (jsonValue) => QuizSessionFromJSON(jsonValue));
99
+ });
100
+ }
101
+ /**
102
+ * Returns the caller\'s active session on the quiz behind the link, creating one if none is active. The session belongs to the caller; its answers never touch the owner\'s progress. Returns 201 whether the session was created or resumed.
103
+ * Start or resume the caller\'s session on a shared quiz
104
+ */
105
+ startSharedQuizSession(requestParameters, initOverrides) {
106
+ return __awaiter(this, void 0, void 0, function* () {
107
+ const response = yield this.startSharedQuizSessionRaw(requestParameters, initOverrides);
108
+ return yield response.value();
109
+ });
110
+ }
111
+ }
@@ -144,12 +144,12 @@ export declare class StudyObjectivesApi extends runtime.BaseAPI {
144
144
  */
145
145
  listStudyObjectives(requestParameters: ListStudyObjectivesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PaginatedStudyObjectives>;
146
146
  /**
147
- * Returns the authenticated user\'s active study objectives whose due date falls inside a look-ahead window, soonest due first. This is the only study-objective read scoped to the user rather than to a course or a study space: it spans every study space the learner has, including spaces with no Canvas course (whose objectives carry a null `courseId` and are otherwise reachable only by knowing the space id), so a caller building date-aware outreach does not have to fan out per space and re-sort client-side. A row is included when it has a due date, that date is in the future, and it is no further out than `withinDays`. Overdue objectives are excluded — the window starts at the current time, not at the start of today — as are objectives with no due date and objectives the learner has archived. Both `source` values (`user` and `syllabus`) are returned; nothing here distinguishes an objective the learner typed from one derived from a syllabus. Ordering is by due date ascending, then by id ascending, so objectives sharing a due date come back in a stable order across calls. Each item carries the full study-objective shape plus `studySpaceTitle`, the name of the space it belongs to, for copy that needs to name the course. There is no cursor: the window and `limit` bound the response, and a caller that needs more should widen `withinDays` rather than page.
147
+ * Returns the authenticated user\'s active study objectives whose due date falls inside a look-ahead window, soonest due first. This is the only study-objective read scoped to the user rather than to a course or a study space: it spans every study space the learner has, including spaces with no Canvas course (whose objectives carry a null `courseId` and are otherwise reachable only by knowing the space id), so a caller building date-aware outreach does not have to fan out per space and re-sort client-side. A row is included when it has a due date, that date is in the future, and it is no further out than `withinDays`. Overdue objectives are excluded — the window starts at the current time, not at the start of today — as are objectives with no due date and objectives the learner has archived. Every `source` value (`user`, `syllabus` and `template`) is returned; nothing here distinguishes an objective the learner typed from one derived from a syllabus or created from a template. Ordering is by due date ascending, then by id ascending, so objectives sharing a due date come back in a stable order across calls. Each item carries the full study-objective shape plus `studySpaceTitle`, the name of the space it belongs to, for copy that needs to name the course. There is no cursor: the window and `limit` bound the response, and a caller that needs more should widen `withinDays` rather than page.
148
148
  * List the learner\'s study objectives falling due soon
149
149
  */
150
150
  listUpcomingStudyObjectivesRaw(requestParameters: ListUpcomingStudyObjectivesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UpcomingStudyObjectives>>;
151
151
  /**
152
- * Returns the authenticated user\'s active study objectives whose due date falls inside a look-ahead window, soonest due first. This is the only study-objective read scoped to the user rather than to a course or a study space: it spans every study space the learner has, including spaces with no Canvas course (whose objectives carry a null `courseId` and are otherwise reachable only by knowing the space id), so a caller building date-aware outreach does not have to fan out per space and re-sort client-side. A row is included when it has a due date, that date is in the future, and it is no further out than `withinDays`. Overdue objectives are excluded — the window starts at the current time, not at the start of today — as are objectives with no due date and objectives the learner has archived. Both `source` values (`user` and `syllabus`) are returned; nothing here distinguishes an objective the learner typed from one derived from a syllabus. Ordering is by due date ascending, then by id ascending, so objectives sharing a due date come back in a stable order across calls. Each item carries the full study-objective shape plus `studySpaceTitle`, the name of the space it belongs to, for copy that needs to name the course. There is no cursor: the window and `limit` bound the response, and a caller that needs more should widen `withinDays` rather than page.
152
+ * Returns the authenticated user\'s active study objectives whose due date falls inside a look-ahead window, soonest due first. This is the only study-objective read scoped to the user rather than to a course or a study space: it spans every study space the learner has, including spaces with no Canvas course (whose objectives carry a null `courseId` and are otherwise reachable only by knowing the space id), so a caller building date-aware outreach does not have to fan out per space and re-sort client-side. A row is included when it has a due date, that date is in the future, and it is no further out than `withinDays`. Overdue objectives are excluded — the window starts at the current time, not at the start of today — as are objectives with no due date and objectives the learner has archived. Every `source` value (`user`, `syllabus` and `template`) is returned; nothing here distinguishes an objective the learner typed from one derived from a syllabus or created from a template. Ordering is by due date ascending, then by id ascending, so objectives sharing a due date come back in a stable order across calls. Each item carries the full study-objective shape plus `studySpaceTitle`, the name of the space it belongs to, for copy that needs to name the course. There is no cursor: the window and `limit` bound the response, and a caller that needs more should widen `withinDays` rather than page.
153
153
  * List the learner\'s study objectives falling due soon
154
154
  */
155
155
  listUpcomingStudyObjectives(requestParameters: ListUpcomingStudyObjectivesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UpcomingStudyObjectives>;
@@ -386,7 +386,7 @@ export class StudyObjectivesApi extends runtime.BaseAPI {
386
386
  });
387
387
  }
388
388
  /**
389
- * Returns the authenticated user\'s active study objectives whose due date falls inside a look-ahead window, soonest due first. This is the only study-objective read scoped to the user rather than to a course or a study space: it spans every study space the learner has, including spaces with no Canvas course (whose objectives carry a null `courseId` and are otherwise reachable only by knowing the space id), so a caller building date-aware outreach does not have to fan out per space and re-sort client-side. A row is included when it has a due date, that date is in the future, and it is no further out than `withinDays`. Overdue objectives are excluded — the window starts at the current time, not at the start of today — as are objectives with no due date and objectives the learner has archived. Both `source` values (`user` and `syllabus`) are returned; nothing here distinguishes an objective the learner typed from one derived from a syllabus. Ordering is by due date ascending, then by id ascending, so objectives sharing a due date come back in a stable order across calls. Each item carries the full study-objective shape plus `studySpaceTitle`, the name of the space it belongs to, for copy that needs to name the course. There is no cursor: the window and `limit` bound the response, and a caller that needs more should widen `withinDays` rather than page.
389
+ * Returns the authenticated user\'s active study objectives whose due date falls inside a look-ahead window, soonest due first. This is the only study-objective read scoped to the user rather than to a course or a study space: it spans every study space the learner has, including spaces with no Canvas course (whose objectives carry a null `courseId` and are otherwise reachable only by knowing the space id), so a caller building date-aware outreach does not have to fan out per space and re-sort client-side. A row is included when it has a due date, that date is in the future, and it is no further out than `withinDays`. Overdue objectives are excluded — the window starts at the current time, not at the start of today — as are objectives with no due date and objectives the learner has archived. Every `source` value (`user`, `syllabus` and `template`) is returned; nothing here distinguishes an objective the learner typed from one derived from a syllabus or created from a template. Ordering is by due date ascending, then by id ascending, so objectives sharing a due date come back in a stable order across calls. Each item carries the full study-objective shape plus `studySpaceTitle`, the name of the space it belongs to, for copy that needs to name the course. There is no cursor: the window and `limit` bound the response, and a caller that needs more should widen `withinDays` rather than page.
390
390
  * List the learner\'s study objectives falling due soon
391
391
  */
392
392
  listUpcomingStudyObjectivesRaw(requestParameters, initOverrides) {
@@ -419,7 +419,7 @@ export class StudyObjectivesApi extends runtime.BaseAPI {
419
419
  });
420
420
  }
421
421
  /**
422
- * Returns the authenticated user\'s active study objectives whose due date falls inside a look-ahead window, soonest due first. This is the only study-objective read scoped to the user rather than to a course or a study space: it spans every study space the learner has, including spaces with no Canvas course (whose objectives carry a null `courseId` and are otherwise reachable only by knowing the space id), so a caller building date-aware outreach does not have to fan out per space and re-sort client-side. A row is included when it has a due date, that date is in the future, and it is no further out than `withinDays`. Overdue objectives are excluded — the window starts at the current time, not at the start of today — as are objectives with no due date and objectives the learner has archived. Both `source` values (`user` and `syllabus`) are returned; nothing here distinguishes an objective the learner typed from one derived from a syllabus. Ordering is by due date ascending, then by id ascending, so objectives sharing a due date come back in a stable order across calls. Each item carries the full study-objective shape plus `studySpaceTitle`, the name of the space it belongs to, for copy that needs to name the course. There is no cursor: the window and `limit` bound the response, and a caller that needs more should widen `withinDays` rather than page.
422
+ * Returns the authenticated user\'s active study objectives whose due date falls inside a look-ahead window, soonest due first. This is the only study-objective read scoped to the user rather than to a course or a study space: it spans every study space the learner has, including spaces with no Canvas course (whose objectives carry a null `courseId` and are otherwise reachable only by knowing the space id), so a caller building date-aware outreach does not have to fan out per space and re-sort client-side. A row is included when it has a due date, that date is in the future, and it is no further out than `withinDays`. Overdue objectives are excluded — the window starts at the current time, not at the start of today — as are objectives with no due date and objectives the learner has archived. Every `source` value (`user`, `syllabus` and `template`) is returned; nothing here distinguishes an objective the learner typed from one derived from a syllabus or created from a template. Ordering is by due date ascending, then by id ascending, so objectives sharing a due date come back in a stable order across calls. Each item carries the full study-objective shape plus `studySpaceTitle`, the name of the space it belongs to, for copy that needs to name the course. There is no cursor: the window and `limit` bound the response, and a caller that needs more should widen `withinDays` rather than page.
423
423
  * List the learner\'s study objectives falling due soon
424
424
  */
425
425
  listUpcomingStudyObjectives(requestParameters, initOverrides) {
@@ -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 * as runtime from '../runtime';
13
+ import type { CreateStudySpaceFromTemplateDto, ScheduleStudySpaceTemplateDto, StudySpaceFromTemplate, StudySpaceTemplate, StudySpaceTemplateScheduleItem } from '../models/index';
14
+ export interface CreateStudySpaceFromTemplateRequest {
15
+ xUserId: string;
16
+ slug: string;
17
+ createStudySpaceFromTemplateDto: CreateStudySpaceFromTemplateDto;
18
+ }
19
+ export interface ListStudySpaceTemplatesRequest {
20
+ xUserId: string;
21
+ }
22
+ export interface PreviewStudySpaceTemplateScheduleRequest {
23
+ xUserId: string;
24
+ slug: string;
25
+ scheduleStudySpaceTemplateDto: ScheduleStudySpaceTemplateDto;
26
+ }
27
+ /**
28
+ *
29
+ */
30
+ export declare class StudySpaceTemplatesApi extends runtime.BaseAPI {
31
+ /**
32
+ * Creates a course-less study space for the authenticated user holding the template\'s objectives, scheduled as the preview describes, each with the template\'s concepts already attached — nothing is extracted. The objectives are the learner\'s own from then on: editable and archivable like any they typed. Everything is written in one transaction. `name` defaults to the template\'s title.
33
+ * Create a study space from a template
34
+ */
35
+ createStudySpaceFromTemplateRaw(requestParameters: CreateStudySpaceFromTemplateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<StudySpaceFromTemplate>>;
36
+ /**
37
+ * Creates a course-less study space for the authenticated user holding the template\'s objectives, scheduled as the preview describes, each with the template\'s concepts already attached — nothing is extracted. The objectives are the learner\'s own from then on: editable and archivable like any they typed. Everything is written in one transaction. `name` defaults to the template\'s title.
38
+ * Create a study space from a template
39
+ */
40
+ createStudySpaceFromTemplate(requestParameters: CreateStudySpaceFromTemplateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<StudySpaceFromTemplate>;
41
+ /**
42
+ * Returns every bundled template with what a client needs to offer it and to ask where the learner is in the course: its units in order, its anchor date, notices to show before confirming, and the caller\'s newest space already created from it (`existingSpaceId`, or null). Creating another is still allowed.
43
+ * List the study space templates a learner can start from
44
+ */
45
+ listStudySpaceTemplatesRaw(requestParameters: ListStudySpaceTemplatesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<StudySpaceTemplate>>>;
46
+ /**
47
+ * Returns every bundled template with what a client needs to offer it and to ask where the learner is in the course: its units in order, its anchor date, notices to show before confirming, and the caller\'s newest space already created from it (`existingSpaceId`, or null). Creating another is still allowed.
48
+ * List the study space templates a learner can start from
49
+ */
50
+ listStudySpaceTemplates(requestParameters: ListStudySpaceTemplatesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<StudySpaceTemplate>>;
51
+ /**
52
+ * Computes, without writing anything, the objectives and due dates `createStudySpaceFromTemplate` would create right now for the learner\'s timezone: units still to learn spread up to the review window, covered units as review, then the anchor. `startIndex` is the index of the first unit the learner hasn\'t covered; null means every unit is covered (review only).
53
+ * Preview the objectives a template would create
54
+ */
55
+ previewStudySpaceTemplateScheduleRaw(requestParameters: PreviewStudySpaceTemplateScheduleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<StudySpaceTemplateScheduleItem>>>;
56
+ /**
57
+ * Computes, without writing anything, the objectives and due dates `createStudySpaceFromTemplate` would create right now for the learner\'s timezone: units still to learn spread up to the review window, covered units as review, then the anchor. `startIndex` is the index of the first unit the learner hasn\'t covered; null means every unit is covered (review only).
58
+ * Preview the objectives a template would create
59
+ */
60
+ previewStudySpaceTemplateSchedule(requestParameters: PreviewStudySpaceTemplateScheduleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<StudySpaceTemplateScheduleItem>>;
61
+ }
@@ -0,0 +1,158 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ import * as runtime from '../runtime';
24
+ import { CreateStudySpaceFromTemplateDtoToJSON, ScheduleStudySpaceTemplateDtoToJSON, StudySpaceFromTemplateFromJSON, StudySpaceTemplateFromJSON, StudySpaceTemplateScheduleItemFromJSON, } from '../models/index';
25
+ /**
26
+ *
27
+ */
28
+ export class StudySpaceTemplatesApi extends runtime.BaseAPI {
29
+ /**
30
+ * Creates a course-less study space for the authenticated user holding the template\'s objectives, scheduled as the preview describes, each with the template\'s concepts already attached — nothing is extracted. The objectives are the learner\'s own from then on: editable and archivable like any they typed. Everything is written in one transaction. `name` defaults to the template\'s title.
31
+ * Create a study space from a template
32
+ */
33
+ createStudySpaceFromTemplateRaw(requestParameters, initOverrides) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ if (requestParameters['xUserId'] == null) {
36
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling createStudySpaceFromTemplate().');
37
+ }
38
+ if (requestParameters['slug'] == null) {
39
+ throw new runtime.RequiredError('slug', 'Required parameter "slug" was null or undefined when calling createStudySpaceFromTemplate().');
40
+ }
41
+ if (requestParameters['createStudySpaceFromTemplateDto'] == null) {
42
+ throw new runtime.RequiredError('createStudySpaceFromTemplateDto', 'Required parameter "createStudySpaceFromTemplateDto" was null or undefined when calling createStudySpaceFromTemplate().');
43
+ }
44
+ const queryParameters = {};
45
+ const headerParameters = {};
46
+ headerParameters['Content-Type'] = 'application/json';
47
+ if (requestParameters['xUserId'] != null) {
48
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
49
+ }
50
+ if (this.configuration && this.configuration.apiKey) {
51
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
52
+ }
53
+ let urlPath = `/api/v1/study-space-templates/{slug}/spaces`;
54
+ urlPath = urlPath.replace(`{${"slug"}}`, encodeURIComponent(String(requestParameters['slug'])));
55
+ const response = yield this.request({
56
+ path: urlPath,
57
+ method: 'POST',
58
+ headers: headerParameters,
59
+ query: queryParameters,
60
+ body: CreateStudySpaceFromTemplateDtoToJSON(requestParameters['createStudySpaceFromTemplateDto']),
61
+ }, initOverrides);
62
+ return new runtime.JSONApiResponse(response, (jsonValue) => StudySpaceFromTemplateFromJSON(jsonValue));
63
+ });
64
+ }
65
+ /**
66
+ * Creates a course-less study space for the authenticated user holding the template\'s objectives, scheduled as the preview describes, each with the template\'s concepts already attached — nothing is extracted. The objectives are the learner\'s own from then on: editable and archivable like any they typed. Everything is written in one transaction. `name` defaults to the template\'s title.
67
+ * Create a study space from a template
68
+ */
69
+ createStudySpaceFromTemplate(requestParameters, initOverrides) {
70
+ return __awaiter(this, void 0, void 0, function* () {
71
+ const response = yield this.createStudySpaceFromTemplateRaw(requestParameters, initOverrides);
72
+ return yield response.value();
73
+ });
74
+ }
75
+ /**
76
+ * Returns every bundled template with what a client needs to offer it and to ask where the learner is in the course: its units in order, its anchor date, notices to show before confirming, and the caller\'s newest space already created from it (`existingSpaceId`, or null). Creating another is still allowed.
77
+ * List the study space templates a learner can start from
78
+ */
79
+ listStudySpaceTemplatesRaw(requestParameters, initOverrides) {
80
+ return __awaiter(this, void 0, void 0, function* () {
81
+ if (requestParameters['xUserId'] == null) {
82
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling listStudySpaceTemplates().');
83
+ }
84
+ const queryParameters = {};
85
+ const headerParameters = {};
86
+ if (requestParameters['xUserId'] != null) {
87
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
88
+ }
89
+ if (this.configuration && this.configuration.apiKey) {
90
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
91
+ }
92
+ let urlPath = `/api/v1/study-space-templates`;
93
+ const response = yield this.request({
94
+ path: urlPath,
95
+ method: 'GET',
96
+ headers: headerParameters,
97
+ query: queryParameters,
98
+ }, initOverrides);
99
+ return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StudySpaceTemplateFromJSON));
100
+ });
101
+ }
102
+ /**
103
+ * Returns every bundled template with what a client needs to offer it and to ask where the learner is in the course: its units in order, its anchor date, notices to show before confirming, and the caller\'s newest space already created from it (`existingSpaceId`, or null). Creating another is still allowed.
104
+ * List the study space templates a learner can start from
105
+ */
106
+ listStudySpaceTemplates(requestParameters, initOverrides) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ const response = yield this.listStudySpaceTemplatesRaw(requestParameters, initOverrides);
109
+ return yield response.value();
110
+ });
111
+ }
112
+ /**
113
+ * Computes, without writing anything, the objectives and due dates `createStudySpaceFromTemplate` would create right now for the learner\'s timezone: units still to learn spread up to the review window, covered units as review, then the anchor. `startIndex` is the index of the first unit the learner hasn\'t covered; null means every unit is covered (review only).
114
+ * Preview the objectives a template would create
115
+ */
116
+ previewStudySpaceTemplateScheduleRaw(requestParameters, initOverrides) {
117
+ return __awaiter(this, void 0, void 0, function* () {
118
+ if (requestParameters['xUserId'] == null) {
119
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling previewStudySpaceTemplateSchedule().');
120
+ }
121
+ if (requestParameters['slug'] == null) {
122
+ throw new runtime.RequiredError('slug', 'Required parameter "slug" was null or undefined when calling previewStudySpaceTemplateSchedule().');
123
+ }
124
+ if (requestParameters['scheduleStudySpaceTemplateDto'] == null) {
125
+ throw new runtime.RequiredError('scheduleStudySpaceTemplateDto', 'Required parameter "scheduleStudySpaceTemplateDto" was null or undefined when calling previewStudySpaceTemplateSchedule().');
126
+ }
127
+ const queryParameters = {};
128
+ const headerParameters = {};
129
+ headerParameters['Content-Type'] = 'application/json';
130
+ if (requestParameters['xUserId'] != null) {
131
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
132
+ }
133
+ if (this.configuration && this.configuration.apiKey) {
134
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
135
+ }
136
+ let urlPath = `/api/v1/study-space-templates/{slug}/schedule-preview`;
137
+ urlPath = urlPath.replace(`{${"slug"}}`, encodeURIComponent(String(requestParameters['slug'])));
138
+ const response = yield this.request({
139
+ path: urlPath,
140
+ method: 'POST',
141
+ headers: headerParameters,
142
+ query: queryParameters,
143
+ body: ScheduleStudySpaceTemplateDtoToJSON(requestParameters['scheduleStudySpaceTemplateDto']),
144
+ }, initOverrides);
145
+ return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StudySpaceTemplateScheduleItemFromJSON));
146
+ });
147
+ }
148
+ /**
149
+ * Computes, without writing anything, the objectives and due dates `createStudySpaceFromTemplate` would create right now for the learner\'s timezone: units still to learn spread up to the review window, covered units as review, then the anchor. `startIndex` is the index of the first unit the learner hasn\'t covered; null means every unit is covered (review only).
150
+ * Preview the objectives a template would create
151
+ */
152
+ previewStudySpaceTemplateSchedule(requestParameters, initOverrides) {
153
+ return __awaiter(this, void 0, void 0, function* () {
154
+ const response = yield this.previewStudySpaceTemplateScheduleRaw(requestParameters, initOverrides);
155
+ return yield response.value();
156
+ });
157
+ }
158
+ }
@@ -20,10 +20,12 @@ export * from './QuizSessionsApi';
20
20
  export * from './QuizzesApi';
21
21
  export * from './ResourcesApi';
22
22
  export * from './ServiceTokensApi';
23
+ export * from './SharedQuizzesApi';
23
24
  export * from './StudyObjectiveConceptsApi';
24
25
  export * from './StudyObjectivesApi';
25
26
  export * from './StudyPlansApi';
26
27
  export * from './StudyPrepApi';
28
+ export * from './StudySpaceTemplatesApi';
27
29
  export * from './StudySpacesApi';
28
30
  export * from './SyllabusAnalysisApi';
29
31
  export * from './TagsApi';
@@ -22,10 +22,12 @@ export * from './QuizSessionsApi';
22
22
  export * from './QuizzesApi';
23
23
  export * from './ResourcesApi';
24
24
  export * from './ServiceTokensApi';
25
+ export * from './SharedQuizzesApi';
25
26
  export * from './StudyObjectiveConceptsApi';
26
27
  export * from './StudyObjectivesApi';
27
28
  export * from './StudyPlansApi';
28
29
  export * from './StudyPrepApi';
30
+ export * from './StudySpaceTemplatesApi';
29
31
  export * from './StudySpacesApi';
30
32
  export * from './SyllabusAnalysisApi';
31
33
  export * from './TagsApi';
@@ -0,0 +1,39 @@
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 { AdminQuizParticipantSessionListItem } from './AdminQuizParticipantSessionListItem';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface AdminPaginatedQuizParticipantSessions
17
+ */
18
+ export interface AdminPaginatedQuizParticipantSessions {
19
+ /**
20
+ *
21
+ * @type {Array<AdminQuizParticipantSessionListItem>}
22
+ * @memberof AdminPaginatedQuizParticipantSessions
23
+ */
24
+ data: Array<AdminQuizParticipantSessionListItem>;
25
+ /**
26
+ * Opaque cursor for fetching the next page. Null when there are no more results.
27
+ * @type {string}
28
+ * @memberof AdminPaginatedQuizParticipantSessions
29
+ */
30
+ nextCursor: string | null;
31
+ }
32
+ /**
33
+ * Check if a given object implements the AdminPaginatedQuizParticipantSessions interface.
34
+ */
35
+ export declare function instanceOfAdminPaginatedQuizParticipantSessions(value: object): value is AdminPaginatedQuizParticipantSessions;
36
+ export declare function AdminPaginatedQuizParticipantSessionsFromJSON(json: any): AdminPaginatedQuizParticipantSessions;
37
+ export declare function AdminPaginatedQuizParticipantSessionsFromJSONTyped(json: any, ignoreDiscriminator: boolean): AdminPaginatedQuizParticipantSessions;
38
+ export declare function AdminPaginatedQuizParticipantSessionsToJSON(json: any): AdminPaginatedQuizParticipantSessions;
39
+ export declare function AdminPaginatedQuizParticipantSessionsToJSONTyped(value?: AdminPaginatedQuizParticipantSessions | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,48 @@
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 { AdminQuizParticipantSessionListItemFromJSON, AdminQuizParticipantSessionListItemToJSON, } from './AdminQuizParticipantSessionListItem';
15
+ /**
16
+ * Check if a given object implements the AdminPaginatedQuizParticipantSessions interface.
17
+ */
18
+ export function instanceOfAdminPaginatedQuizParticipantSessions(value) {
19
+ if (!('data' in value) || value['data'] === undefined)
20
+ return false;
21
+ if (!('nextCursor' in value) || value['nextCursor'] === undefined)
22
+ return false;
23
+ return true;
24
+ }
25
+ export function AdminPaginatedQuizParticipantSessionsFromJSON(json) {
26
+ return AdminPaginatedQuizParticipantSessionsFromJSONTyped(json, false);
27
+ }
28
+ export function AdminPaginatedQuizParticipantSessionsFromJSONTyped(json, ignoreDiscriminator) {
29
+ if (json == null) {
30
+ return json;
31
+ }
32
+ return {
33
+ 'data': (json['data'].map(AdminQuizParticipantSessionListItemFromJSON)),
34
+ 'nextCursor': json['nextCursor'],
35
+ };
36
+ }
37
+ export function AdminPaginatedQuizParticipantSessionsToJSON(json) {
38
+ return AdminPaginatedQuizParticipantSessionsToJSONTyped(json, false);
39
+ }
40
+ export function AdminPaginatedQuizParticipantSessionsToJSONTyped(value, ignoreDiscriminator = false) {
41
+ if (value == null) {
42
+ return value;
43
+ }
44
+ return {
45
+ 'data': (value['data'].map(AdminQuizParticipantSessionListItemToJSON)),
46
+ 'nextCursor': value['nextCursor'],
47
+ };
48
+ }