@studious-lms/server 1.4.7 → 1.5.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 (201) hide show
  1. package/.github/workflows/npm.yml +28 -0
  2. package/dist/lib/config/cors.d.ts.map +1 -1
  3. package/dist/lib/config/cors.js +2 -4
  4. package/dist/lib/config/cors.js.map +1 -1
  5. package/dist/lib/fileUpload.d.ts.map +1 -1
  6. package/dist/lib/fileUpload.js +4 -5
  7. package/dist/lib/fileUpload.js.map +1 -1
  8. package/dist/models/assignment.d.ts +32 -0
  9. package/dist/models/assignment.d.ts.map +1 -1
  10. package/dist/models/assignment.js +111 -2
  11. package/dist/models/assignment.js.map +1 -1
  12. package/dist/models/auth.d.ts +1 -0
  13. package/dist/models/auth.d.ts.map +1 -1
  14. package/dist/models/auth.js +3 -2
  15. package/dist/models/auth.js.map +1 -1
  16. package/dist/models/comment.d.ts +0 -5
  17. package/dist/models/comment.d.ts.map +1 -1
  18. package/dist/models/conversation.d.ts +2 -1
  19. package/dist/models/conversation.d.ts.map +1 -1
  20. package/dist/models/labChat.d.ts +2 -1
  21. package/dist/models/labChat.d.ts.map +1 -1
  22. package/dist/models/message.d.ts +6 -3
  23. package/dist/models/message.d.ts.map +1 -1
  24. package/dist/models/school.d.ts +0 -22
  25. package/dist/models/school.d.ts.map +1 -1
  26. package/dist/models/school.js +2 -14
  27. package/dist/models/school.js.map +1 -1
  28. package/dist/models/worksheet.d.ts +174 -95
  29. package/dist/models/worksheet.d.ts.map +1 -1
  30. package/dist/models/worksheet.js +38 -5
  31. package/dist/models/worksheet.js.map +1 -1
  32. package/dist/pipelines/aiLabChat.js +6 -6
  33. package/dist/pipelines/aiLabChat.js.map +1 -1
  34. package/dist/pipelines/gradeWorksheet.d.ts +5 -3
  35. package/dist/pipelines/gradeWorksheet.d.ts.map +1 -1
  36. package/dist/pipelines/gradeWorksheet.js +60 -24
  37. package/dist/pipelines/gradeWorksheet.js.map +1 -1
  38. package/dist/pipelines/pdfToWorksheet.d.ts +3 -0
  39. package/dist/pipelines/pdfToWorksheet.d.ts.map +1 -1
  40. package/dist/pipelines/pdfToWorksheet.js +65 -24
  41. package/dist/pipelines/pdfToWorksheet.js.map +1 -1
  42. package/dist/routers/_app.d.ts +232 -48
  43. package/dist/routers/_app.d.ts.map +1 -1
  44. package/dist/routers/announcement.d.ts +0 -4
  45. package/dist/routers/announcement.d.ts.map +1 -1
  46. package/dist/routers/assignment.d.ts +35 -8
  47. package/dist/routers/assignment.d.ts.map +1 -1
  48. package/dist/routers/assignment.js +10 -3
  49. package/dist/routers/assignment.js.map +1 -1
  50. package/dist/routers/auth.d.ts +1 -0
  51. package/dist/routers/auth.d.ts.map +1 -1
  52. package/dist/routers/class.d.ts +19 -0
  53. package/dist/routers/class.d.ts.map +1 -1
  54. package/dist/routers/comment.d.ts +0 -3
  55. package/dist/routers/comment.d.ts.map +1 -1
  56. package/dist/routers/conversation.d.ts +2 -1
  57. package/dist/routers/conversation.d.ts.map +1 -1
  58. package/dist/routers/labChat.d.ts +2 -1
  59. package/dist/routers/labChat.d.ts.map +1 -1
  60. package/dist/routers/school.d.ts +6 -0
  61. package/dist/routers/school.d.ts.map +1 -1
  62. package/dist/routers/school.js +7 -2
  63. package/dist/routers/school.js.map +1 -1
  64. package/dist/routers/worksheet.d.ts +51 -7
  65. package/dist/routers/worksheet.d.ts.map +1 -1
  66. package/dist/routers/worksheet.js +10 -3
  67. package/dist/routers/worksheet.js.map +1 -1
  68. package/dist/services/assignment.d.ts +30 -0
  69. package/dist/services/assignment.d.ts.map +1 -1
  70. package/dist/services/assignment.js +37 -3
  71. package/dist/services/assignment.js.map +1 -1
  72. package/dist/services/auth.d.ts +1 -0
  73. package/dist/services/auth.d.ts.map +1 -1
  74. package/dist/services/class.d.ts +19 -0
  75. package/dist/services/class.d.ts.map +1 -1
  76. package/dist/services/class.js +37 -19
  77. package/dist/services/class.js.map +1 -1
  78. package/dist/services/comment.d.ts +0 -3
  79. package/dist/services/comment.d.ts.map +1 -1
  80. package/dist/services/conversation.d.ts +2 -1
  81. package/dist/services/conversation.d.ts.map +1 -1
  82. package/dist/services/labChat.d.ts +2 -1
  83. package/dist/services/labChat.d.ts.map +1 -1
  84. package/dist/services/labChat.js +6 -6
  85. package/dist/services/labChat.js.map +1 -1
  86. package/dist/services/message.d.ts.map +1 -1
  87. package/dist/services/message.js +14 -2
  88. package/dist/services/message.js.map +1 -1
  89. package/dist/services/school.d.ts +6 -0
  90. package/dist/services/school.d.ts.map +1 -1
  91. package/dist/services/school.js +71 -6
  92. package/dist/services/school.js.map +1 -1
  93. package/dist/services/worksheet.d.ts +46 -7
  94. package/dist/services/worksheet.d.ts.map +1 -1
  95. package/dist/services/worksheet.js +52 -20
  96. package/dist/services/worksheet.js.map +1 -1
  97. package/dist/utils/generateUsername.d.ts +8 -0
  98. package/dist/utils/generateUsername.d.ts.map +1 -0
  99. package/dist/utils/generateUsername.js +103 -0
  100. package/dist/utils/generateUsername.js.map +1 -0
  101. package/dist/workers/connection.d.ts +3 -0
  102. package/dist/workers/connection.d.ts.map +1 -0
  103. package/dist/workers/connection.js +33 -0
  104. package/dist/workers/connection.js.map +1 -0
  105. package/dist/workers/index.d.ts +10 -0
  106. package/dist/workers/index.d.ts.map +1 -0
  107. package/dist/workers/index.js +53 -0
  108. package/dist/workers/index.js.map +1 -0
  109. package/dist/workers/processors/pdfToWorksheet.d.ts +9 -0
  110. package/dist/workers/processors/pdfToWorksheet.d.ts.map +1 -0
  111. package/dist/workers/processors/pdfToWorksheet.js +100 -0
  112. package/dist/workers/processors/pdfToWorksheet.js.map +1 -0
  113. package/dist/workers/queues.d.ts +69 -0
  114. package/dist/workers/queues.d.ts.map +1 -0
  115. package/dist/workers/queues.js +119 -0
  116. package/dist/workers/queues.js.map +1 -0
  117. package/package.json +4 -1
  118. package/prisma/migrations/20260504071500_school_memberships/migration.sql +1 -1
  119. package/prisma/migrations/20260506162500_consolidate_run_job_and_unify_job_status/migration.sql +166 -0
  120. package/prisma/schema.prisma +465 -387
  121. package/src/lib/config/cors.ts +0 -2
  122. package/src/lib/fileUpload.ts +2 -4
  123. package/src/models/assignment.ts +132 -0
  124. package/src/models/auth.ts +1 -0
  125. package/src/models/school.ts +0 -14
  126. package/src/models/worksheet.ts +56 -2
  127. package/src/pipelines/aiLabChat.ts +4 -4
  128. package/src/pipelines/gradeWorksheet.ts +63 -25
  129. package/src/pipelines/pdfToWorksheet.ts +68 -22
  130. package/src/routers/assignment.ts +19 -0
  131. package/src/routers/school.ts +5 -0
  132. package/src/routers/worksheet.ts +18 -0
  133. package/src/services/assignment.ts +47 -1
  134. package/src/services/class.ts +41 -17
  135. package/src/services/labChat.ts +4 -4
  136. package/src/services/message.ts +13 -0
  137. package/src/services/school.ts +89 -6
  138. package/src/services/worksheet.ts +62 -18
  139. package/src/utils/generateUsername.ts +108 -0
  140. package/src/workers/connection.ts +37 -0
  141. package/src/workers/index.ts +61 -0
  142. package/src/workers/processors/pdfToWorksheet.ts +119 -0
  143. package/src/workers/queues.ts +159 -0
  144. package/tests/{globalSetup.ts → integration/globalSetup.ts} +4 -4
  145. package/tests/{helpers.ts → integration/helpers.ts} +2 -2
  146. package/tests/{pipelines → integration/pipelines}/pdfToWorksheet.test.ts +55 -43
  147. package/tests/{routers → integration/routers}/attendance.test.ts +1 -1
  148. package/tests/{routers → integration/routers}/auth.test.ts +3 -3
  149. package/tests/{routers → integration/routers}/class.test.ts +3 -17
  150. package/tests/{routers → integration/routers}/conversation.test.ts +1 -1
  151. package/tests/{routers → integration/routers}/event.test.ts +1 -1
  152. package/tests/{routers → integration/routers}/message.test.ts +1 -1
  153. package/tests/{routers → integration/routers}/newtonChat.test.ts +1 -1
  154. package/tests/{routers → integration/routers}/studentProgress.test.ts +1 -1
  155. package/tests/{user.test.ts → integration/routers/user.test.ts} +2 -2
  156. package/tests/integration/routers/worksheet.test.ts +448 -0
  157. package/tests/{setup.ts → integration/setup.ts} +4 -4
  158. package/tests/{lib → unit/lib}/cors.test.ts +1 -1
  159. package/tests/{middleware → unit/middleware}/security.test.ts +1 -1
  160. package/tests/{pipelines → unit/pipelines}/aiLabChat.test.ts +1 -1
  161. package/tests/{lib → unit/pipelines}/aiLabChatContract.test.ts +1 -1
  162. package/tests/{utils/aiLabChatPrompt.test.ts → unit/pipelines/labChatPrompt.test.ts} +2 -2
  163. package/tests/{utils → unit/services}/studentProgress.test.ts +5 -5
  164. package/tests/{utils → unit/utils}/aiUser.test.ts +1 -1
  165. package/tests/{utils → unit/utils}/generateInviteCode.test.ts +1 -1
  166. package/tests/{utils → unit/utils}/inference.test.ts +6 -6
  167. package/tests/{utils → unit/utils}/logger.test.ts +1 -1
  168. package/tests/{utils → unit/utils}/prismaErrorHandler.test.ts +1 -1
  169. package/tests/{utils → unit/utils}/prismaWrapper.test.ts +1 -1
  170. package/vitest.config.ts +11 -3
  171. package/vitest.unit.config.ts +10 -10
  172. package/dist/lib/notificationHandler.d.ts +0 -25
  173. package/dist/lib/notificationHandler.d.ts.map +0 -1
  174. package/dist/lib/notificationHandler.js +0 -32
  175. package/dist/lib/notificationHandler.js.map +0 -1
  176. package/dist/server/pipelines/aiLabChat.d.ts +0 -21
  177. package/dist/server/pipelines/aiLabChat.d.ts.map +0 -1
  178. package/dist/server/pipelines/aiLabChat.js +0 -456
  179. package/dist/server/pipelines/aiLabChat.js.map +0 -1
  180. package/dist/server/pipelines/aiNewtonChat.d.ts +0 -30
  181. package/dist/server/pipelines/aiNewtonChat.d.ts.map +0 -1
  182. package/dist/server/pipelines/aiNewtonChat.js +0 -285
  183. package/dist/server/pipelines/aiNewtonChat.js.map +0 -1
  184. package/dist/server/pipelines/gradeWorksheet.d.ts +0 -30
  185. package/dist/server/pipelines/gradeWorksheet.d.ts.map +0 -1
  186. package/dist/server/pipelines/gradeWorksheet.js +0 -248
  187. package/dist/server/pipelines/gradeWorksheet.js.map +0 -1
  188. package/tests/routers/worksheet.test.ts +0 -194
  189. package/tests/startup.test.ts +0 -5
  190. package/tests/worksheet.test.ts +0 -181
  191. /package/tests/{routers → integration/routers}/agenda.test.ts +0 -0
  192. /package/tests/{routers → integration/routers}/announcement.test.ts +0 -0
  193. /package/tests/{routers → integration/routers}/assignment.test.ts +0 -0
  194. /package/tests/{routers → integration/routers}/comment.test.ts +0 -0
  195. /package/tests/{routers → integration/routers}/folder.test.ts +0 -0
  196. /package/tests/{routers → integration/routers}/labChat.test.ts +0 -0
  197. /package/tests/{routers → integration/routers}/marketing.test.ts +0 -0
  198. /package/tests/{routers → integration/routers}/notification.test.ts +0 -0
  199. /package/tests/{routers → integration/routers}/search.test.ts +0 -0
  200. /package/tests/{routers → integration/routers}/section.test.ts +0 -0
  201. /package/tests/{server → unit/middleware}/rateLimit.test.ts +0 -0
@@ -1,6 +1,10 @@
1
- import type { WorksheetQuestionType, GenerationStatus } from "@prisma/client";
1
+ /**
2
+ * Worksheet model – worksheets, questions, submissions, student progress, grading.
3
+ */
4
+ import type { Prisma } from "@prisma/client";
5
+ import type { WorksheetQuestionType, JobStatus } from "@prisma/client";
2
6
  /** @returns Worksheet with questions and class. */
3
- export declare function findWorksheetById(id: string): import(".prisma/client").Prisma.Prisma__WorksheetClient<({
7
+ export declare function findWorksheetById(id: string): Prisma.Prisma__WorksheetClient<({
4
8
  class: {
5
9
  name: string;
6
10
  id: string;
@@ -12,23 +16,26 @@ export declare function findWorksheetById(id: string): import(".prisma/client").
12
16
  } | null;
13
17
  questions: {
14
18
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
15
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
19
+ options: Prisma.JsonValue | null;
16
20
  id: string;
17
21
  createdAt: Date;
18
22
  updatedAt: Date;
19
23
  order: number | null;
20
24
  points: number;
21
25
  worksheetId: string;
22
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
26
+ markScheme: Prisma.JsonValue | null;
23
27
  question: string;
24
28
  answer: string;
25
29
  }[];
26
30
  } & {
31
+ status: import(".prisma/client").$Enums.JobStatus | null;
27
32
  name: string;
28
33
  id: string;
29
34
  createdAt: Date;
30
35
  updatedAt: Date;
31
36
  classId: string;
37
+ runJobId: string | null;
38
+ sourceUrl: string | null;
32
39
  }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
33
40
  datasources: {
34
41
  db: {
@@ -37,12 +44,15 @@ export declare function findWorksheetById(id: string): import(".prisma/client").
37
44
  };
38
45
  }>;
39
46
  /** @returns Worksheet by ID (minimal). */
40
- export declare function findWorksheetByIdMinimal(id: string): import(".prisma/client").Prisma.Prisma__WorksheetClient<{
47
+ export declare function findWorksheetByIdMinimal(id: string): Prisma.Prisma__WorksheetClient<{
48
+ status: import(".prisma/client").$Enums.JobStatus | null;
41
49
  name: string;
42
50
  id: string;
43
51
  createdAt: Date;
44
52
  updatedAt: Date;
45
53
  classId: string;
54
+ runJobId: string | null;
55
+ sourceUrl: string | null;
46
56
  } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
47
57
  datasources: {
48
58
  db: {
@@ -51,7 +61,7 @@ export declare function findWorksheetByIdMinimal(id: string): import(".prisma/cl
51
61
  };
52
62
  }>;
53
63
  /** @returns Worksheet by ID for an authorized class member. */
54
- export declare function findWorksheetByIdForClassMember(id: string, userId: string): import(".prisma/client").Prisma.Prisma__WorksheetClient<({
64
+ export declare function findWorksheetByIdForClassMember(id: string, userId: string): Prisma.Prisma__WorksheetClient<({
55
65
  class: {
56
66
  name: string;
57
67
  id: string;
@@ -63,23 +73,26 @@ export declare function findWorksheetByIdForClassMember(id: string, userId: stri
63
73
  } | null;
64
74
  questions: {
65
75
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
66
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
76
+ options: Prisma.JsonValue | null;
67
77
  id: string;
68
78
  createdAt: Date;
69
79
  updatedAt: Date;
70
80
  order: number | null;
71
81
  points: number;
72
82
  worksheetId: string;
73
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
83
+ markScheme: Prisma.JsonValue | null;
74
84
  question: string;
75
85
  answer: string;
76
86
  }[];
77
87
  } & {
88
+ status: import(".prisma/client").$Enums.JobStatus | null;
78
89
  name: string;
79
90
  id: string;
80
91
  createdAt: Date;
81
92
  updatedAt: Date;
82
93
  classId: string;
94
+ runJobId: string | null;
95
+ sourceUrl: string | null;
83
96
  }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
84
97
  datasources: {
85
98
  db: {
@@ -88,7 +101,7 @@ export declare function findWorksheetByIdForClassMember(id: string, userId: stri
88
101
  };
89
102
  }>;
90
103
  /** @returns Worksheet by ID for an authorized teacher. */
91
- export declare function findWorksheetByIdForTeacher(id: string, userId: string): import(".prisma/client").Prisma.Prisma__WorksheetClient<({
104
+ export declare function findWorksheetByIdForTeacher(id: string, userId: string): Prisma.Prisma__WorksheetClient<({
92
105
  class: {
93
106
  name: string;
94
107
  id: string;
@@ -100,23 +113,26 @@ export declare function findWorksheetByIdForTeacher(id: string, userId: string):
100
113
  } | null;
101
114
  questions: {
102
115
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
103
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
116
+ options: Prisma.JsonValue | null;
104
117
  id: string;
105
118
  createdAt: Date;
106
119
  updatedAt: Date;
107
120
  order: number | null;
108
121
  points: number;
109
122
  worksheetId: string;
110
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
123
+ markScheme: Prisma.JsonValue | null;
111
124
  question: string;
112
125
  answer: string;
113
126
  }[];
114
127
  } & {
128
+ status: import(".prisma/client").$Enums.JobStatus | null;
115
129
  name: string;
116
130
  id: string;
117
131
  createdAt: Date;
118
132
  updatedAt: Date;
119
133
  classId: string;
134
+ runJobId: string | null;
135
+ sourceUrl: string | null;
120
136
  }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
121
137
  datasources: {
122
138
  db: {
@@ -125,28 +141,31 @@ export declare function findWorksheetByIdForTeacher(id: string, userId: string):
125
141
  };
126
142
  }>;
127
143
  /** @returns Worksheets for a class. */
128
- export declare function findWorksheetsByClassId(classId: string): import(".prisma/client").Prisma.PrismaPromise<({
144
+ export declare function findWorksheetsByClassId(classId: string): Prisma.PrismaPromise<({
129
145
  questions: {
130
146
  id: string;
131
147
  }[];
132
148
  } & {
149
+ status: import(".prisma/client").$Enums.JobStatus | null;
133
150
  name: string;
134
151
  id: string;
135
152
  createdAt: Date;
136
153
  updatedAt: Date;
137
154
  classId: string;
155
+ runJobId: string | null;
156
+ sourceUrl: string | null;
138
157
  })[]>;
139
158
  /** @returns Worksheet question by ID for an authorized teacher. */
140
- export declare function findWorksheetQuestionByIdForTeacher(id: string, userId: string): import(".prisma/client").Prisma.Prisma__WorksheetQuestionClient<{
159
+ export declare function findWorksheetQuestionByIdForTeacher(id: string, userId: string): Prisma.Prisma__WorksheetQuestionClient<{
141
160
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
142
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
161
+ options: Prisma.JsonValue | null;
143
162
  id: string;
144
163
  createdAt: Date;
145
164
  updatedAt: Date;
146
165
  order: number | null;
147
166
  points: number;
148
167
  worksheetId: string;
149
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
168
+ markScheme: Prisma.JsonValue | null;
150
169
  question: string;
151
170
  answer: string;
152
171
  } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
@@ -157,16 +176,16 @@ export declare function findWorksheetQuestionByIdForTeacher(id: string, userId:
157
176
  };
158
177
  }>;
159
178
  /** @returns Worksheet question scoped to a worksheet. */
160
- export declare function findWorksheetQuestionByIdInWorksheet(id: string, worksheetId: string): import(".prisma/client").Prisma.Prisma__WorksheetQuestionClient<{
179
+ export declare function findWorksheetQuestionByIdInWorksheet(id: string, worksheetId: string): Prisma.Prisma__WorksheetQuestionClient<{
161
180
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
162
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
181
+ options: Prisma.JsonValue | null;
163
182
  id: string;
164
183
  createdAt: Date;
165
184
  updatedAt: Date;
166
185
  order: number | null;
167
186
  points: number;
168
187
  worksheetId: string;
169
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
188
+ markScheme: Prisma.JsonValue | null;
170
189
  question: string;
171
190
  answer: string;
172
191
  } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
@@ -180,12 +199,15 @@ export declare function findWorksheetQuestionByIdInWorksheet(id: string, workshe
180
199
  export declare function createWorksheet(data: {
181
200
  classId: string;
182
201
  name: string;
183
- }): import(".prisma/client").Prisma.Prisma__WorksheetClient<{
202
+ }): Prisma.Prisma__WorksheetClient<{
203
+ status: import(".prisma/client").$Enums.JobStatus | null;
184
204
  name: string;
185
205
  id: string;
186
206
  createdAt: Date;
187
207
  updatedAt: Date;
188
208
  classId: string;
209
+ runJobId: string | null;
210
+ sourceUrl: string | null;
189
211
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
190
212
  datasources: {
191
213
  db: {
@@ -196,12 +218,15 @@ export declare function createWorksheet(data: {
196
218
  /** Update worksheet name. */
197
219
  export declare function updateWorksheet(id: string, data: {
198
220
  name?: string;
199
- }): import(".prisma/client").Prisma.Prisma__WorksheetClient<{
221
+ }): Prisma.Prisma__WorksheetClient<{
222
+ status: import(".prisma/client").$Enums.JobStatus | null;
200
223
  name: string;
201
224
  id: string;
202
225
  createdAt: Date;
203
226
  updatedAt: Date;
204
227
  classId: string;
228
+ runJobId: string | null;
229
+ sourceUrl: string | null;
205
230
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
206
231
  datasources: {
207
232
  db: {
@@ -210,12 +235,15 @@ export declare function updateWorksheet(id: string, data: {
210
235
  };
211
236
  }>;
212
237
  /** Delete a worksheet. */
213
- export declare function deleteWorksheet(id: string): import(".prisma/client").Prisma.Prisma__WorksheetClient<{
238
+ export declare function deleteWorksheet(id: string): Prisma.Prisma__WorksheetClient<{
239
+ status: import(".prisma/client").$Enums.JobStatus | null;
214
240
  name: string;
215
241
  id: string;
216
242
  createdAt: Date;
217
243
  updatedAt: Date;
218
244
  classId: string;
245
+ runJobId: string | null;
246
+ sourceUrl: string | null;
219
247
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
220
248
  datasources: {
221
249
  db: {
@@ -223,17 +251,41 @@ export declare function deleteWorksheet(id: string): import(".prisma/client").Pr
223
251
  };
224
252
  };
225
253
  }>;
254
+ /**
255
+ * Clone a worksheet and its questions into another class with a new name.
256
+ * Does not copy student responses or assignment links.
257
+ */
258
+ export declare function duplicateWorksheetWithClient(tx: Prisma.TransactionClient, sourceWorksheetId: string, targetClassId: string, name: string): Promise<{
259
+ status: import(".prisma/client").$Enums.JobStatus | null;
260
+ name: string;
261
+ id: string;
262
+ createdAt: Date;
263
+ updatedAt: Date;
264
+ classId: string;
265
+ runJobId: string | null;
266
+ sourceUrl: string | null;
267
+ } | null>;
268
+ export declare function duplicateWorksheet(sourceWorksheetId: string, targetClassId: string, name: string): Promise<{
269
+ status: import(".prisma/client").$Enums.JobStatus | null;
270
+ name: string;
271
+ id: string;
272
+ createdAt: Date;
273
+ updatedAt: Date;
274
+ classId: string;
275
+ runJobId: string | null;
276
+ sourceUrl: string | null;
277
+ } | null>;
226
278
  /** @returns Questions for a worksheet. */
227
- export declare function findQuestionsByWorksheetId(worksheetId: string): import(".prisma/client").Prisma.PrismaPromise<{
279
+ export declare function findQuestionsByWorksheetId(worksheetId: string): Prisma.PrismaPromise<{
228
280
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
229
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
281
+ options: Prisma.JsonValue | null;
230
282
  id: string;
231
283
  createdAt: Date;
232
284
  updatedAt: Date;
233
285
  order: number | null;
234
286
  points: number;
235
287
  worksheetId: string;
236
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
288
+ markScheme: Prisma.JsonValue | null;
237
289
  question: string;
238
290
  answer: string;
239
291
  }[]>;
@@ -247,16 +299,16 @@ export declare function createWorksheetQuestion(data: {
247
299
  options?: object;
248
300
  markScheme?: object;
249
301
  order?: number;
250
- }): import(".prisma/client").Prisma.Prisma__WorksheetQuestionClient<{
302
+ }): Prisma.Prisma__WorksheetQuestionClient<{
251
303
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
252
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
304
+ options: Prisma.JsonValue | null;
253
305
  id: string;
254
306
  createdAt: Date;
255
307
  updatedAt: Date;
256
308
  order: number | null;
257
309
  points: number;
258
310
  worksheetId: string;
259
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
311
+ markScheme: Prisma.JsonValue | null;
260
312
  question: string;
261
313
  answer: string;
262
314
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
@@ -267,16 +319,16 @@ export declare function createWorksheetQuestion(data: {
267
319
  };
268
320
  }>;
269
321
  /** Update question order. */
270
- export declare function updateWorksheetQuestionOrder(id: string, order: number): import(".prisma/client").Prisma.Prisma__WorksheetQuestionClient<{
322
+ export declare function updateWorksheetQuestionOrder(id: string, order: number): Prisma.Prisma__WorksheetQuestionClient<{
271
323
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
272
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
324
+ options: Prisma.JsonValue | null;
273
325
  id: string;
274
326
  createdAt: Date;
275
327
  updatedAt: Date;
276
328
  order: number | null;
277
329
  points: number;
278
330
  worksheetId: string;
279
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
331
+ markScheme: Prisma.JsonValue | null;
280
332
  question: string;
281
333
  answer: string;
282
334
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
@@ -294,16 +346,16 @@ export declare function updateWorksheetQuestion(id: string, data: {
294
346
  options?: object;
295
347
  markScheme?: object;
296
348
  type?: WorksheetQuestionType;
297
- }): import(".prisma/client").Prisma.Prisma__WorksheetQuestionClient<{
349
+ }): Prisma.Prisma__WorksheetQuestionClient<{
298
350
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
299
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
351
+ options: Prisma.JsonValue | null;
300
352
  id: string;
301
353
  createdAt: Date;
302
354
  updatedAt: Date;
303
355
  order: number | null;
304
356
  points: number;
305
357
  worksheetId: string;
306
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
358
+ markScheme: Prisma.JsonValue | null;
307
359
  question: string;
308
360
  answer: string;
309
361
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
@@ -314,16 +366,16 @@ export declare function updateWorksheetQuestion(id: string, data: {
314
366
  };
315
367
  }>;
316
368
  /** Delete a worksheet question. */
317
- export declare function deleteWorksheetQuestion(id: string): import(".prisma/client").Prisma.Prisma__WorksheetQuestionClient<{
369
+ export declare function deleteWorksheetQuestion(id: string): Prisma.Prisma__WorksheetQuestionClient<{
318
370
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
319
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
371
+ options: Prisma.JsonValue | null;
320
372
  id: string;
321
373
  createdAt: Date;
322
374
  updatedAt: Date;
323
375
  order: number | null;
324
376
  points: number;
325
377
  worksheetId: string;
326
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
378
+ markScheme: Prisma.JsonValue | null;
327
379
  question: string;
328
380
  answer: string;
329
381
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
@@ -334,7 +386,7 @@ export declare function deleteWorksheetQuestion(id: string): import(".prisma/cli
334
386
  };
335
387
  }>;
336
388
  /** @returns Submission by ID. */
337
- export declare function findSubmissionById(id: string): import(".prisma/client").Prisma.Prisma__SubmissionClient<{
389
+ export declare function findSubmissionById(id: string): Prisma.Prisma__SubmissionClient<{
338
390
  id: string;
339
391
  createdAt: Date;
340
392
  assignmentId: string;
@@ -358,7 +410,7 @@ export declare function findSubmissionById(id: string): import(".prisma/client")
358
410
  };
359
411
  }>;
360
412
  /** @returns Submission if requester is the owning student or a class teacher for the worksheet. */
361
- export declare function findSubmissionByIdForWorksheetAccess(id: string, worksheetId: string, worksheetClassId: string, userId: string): import(".prisma/client").Prisma.Prisma__SubmissionClient<{
413
+ export declare function findSubmissionByIdForWorksheetAccess(id: string, worksheetId: string, worksheetClassId: string, userId: string): Prisma.Prisma__SubmissionClient<{
362
414
  id: string;
363
415
  studentId: string;
364
416
  } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
@@ -369,13 +421,13 @@ export declare function findSubmissionByIdForWorksheetAccess(id: string, workshe
369
421
  };
370
422
  }>;
371
423
  /** @returns Worksheet response for submission and worksheet. */
372
- export declare function findWorksheetResponseBySubmissionAndWorksheet(submissionId: string, worksheetId: string): import(".prisma/client").Prisma.Prisma__StudentWorksheetResponseClient<({
424
+ export declare function findWorksheetResponseBySubmissionAndWorksheet(submissionId: string, worksheetId: string): Prisma.Prisma__StudentWorksheetResponseClient<({
373
425
  responses: ({
374
426
  comments: {
375
427
  id: string;
376
428
  }[];
377
429
  } & {
378
- status: import(".prisma/client").$Enums.GenerationStatus | null;
430
+ status: import(".prisma/client").$Enums.JobStatus | null;
379
431
  id: string;
380
432
  createdAt: Date;
381
433
  updatedAt: Date | null;
@@ -383,10 +435,11 @@ export declare function findWorksheetResponseBySubmissionAndWorksheet(submission
383
435
  questionId: string;
384
436
  response: string;
385
437
  isCorrect: boolean;
386
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
438
+ markschemeState: Prisma.JsonValue | null;
387
439
  points: number;
388
440
  feedback: string | null;
389
441
  studentWorksheetResponseId: string | null;
442
+ runJobId: string | null;
390
443
  })[];
391
444
  } & {
392
445
  id: string;
@@ -411,7 +464,7 @@ export declare function findOrCreateWorksheetResponse(submissionId: string, work
411
464
  id: string;
412
465
  }[];
413
466
  } & {
414
- status: import(".prisma/client").$Enums.GenerationStatus | null;
467
+ status: import(".prisma/client").$Enums.JobStatus | null;
415
468
  id: string;
416
469
  createdAt: Date;
417
470
  updatedAt: Date | null;
@@ -419,10 +472,11 @@ export declare function findOrCreateWorksheetResponse(submissionId: string, work
419
472
  questionId: string;
420
473
  response: string;
421
474
  isCorrect: boolean;
422
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
475
+ markschemeState: Prisma.JsonValue | null;
423
476
  points: number;
424
477
  feedback: string | null;
425
478
  studentWorksheetResponseId: string | null;
479
+ runJobId: string | null;
426
480
  })[];
427
481
  } & {
428
482
  id: string;
@@ -439,13 +493,13 @@ export declare function createWorksheetResponse(data: {
439
493
  worksheetId: string;
440
494
  submissionId: string;
441
495
  studentId: string;
442
- }): import(".prisma/client").Prisma.Prisma__StudentWorksheetResponseClient<{
496
+ }): Prisma.Prisma__StudentWorksheetResponseClient<{
443
497
  responses: ({
444
498
  comments: {
445
499
  id: string;
446
500
  }[];
447
501
  } & {
448
- status: import(".prisma/client").$Enums.GenerationStatus | null;
502
+ status: import(".prisma/client").$Enums.JobStatus | null;
449
503
  id: string;
450
504
  createdAt: Date;
451
505
  updatedAt: Date | null;
@@ -453,10 +507,11 @@ export declare function createWorksheetResponse(data: {
453
507
  questionId: string;
454
508
  response: string;
455
509
  isCorrect: boolean;
456
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
510
+ markschemeState: Prisma.JsonValue | null;
457
511
  points: number;
458
512
  feedback: string | null;
459
513
  studentWorksheetResponseId: string | null;
514
+ runJobId: string | null;
460
515
  })[];
461
516
  } & {
462
517
  id: string;
@@ -475,9 +530,9 @@ export declare function createWorksheetResponse(data: {
475
530
  };
476
531
  }>;
477
532
  /** @returns Worksheet response by ID. */
478
- export declare function findWorksheetResponseById(id: string): import(".prisma/client").Prisma.Prisma__StudentWorksheetResponseClient<({
533
+ export declare function findWorksheetResponseById(id: string): Prisma.Prisma__StudentWorksheetResponseClient<({
479
534
  responses: {
480
- status: import(".prisma/client").$Enums.GenerationStatus | null;
535
+ status: import(".prisma/client").$Enums.JobStatus | null;
481
536
  id: string;
482
537
  createdAt: Date;
483
538
  updatedAt: Date | null;
@@ -485,10 +540,11 @@ export declare function findWorksheetResponseById(id: string): import(".prisma/c
485
540
  questionId: string;
486
541
  response: string;
487
542
  isCorrect: boolean;
488
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
543
+ markschemeState: Prisma.JsonValue | null;
489
544
  points: number;
490
545
  feedback: string | null;
491
546
  studentWorksheetResponseId: string | null;
547
+ runJobId: string | null;
492
548
  }[];
493
549
  } & {
494
550
  id: string;
@@ -507,16 +563,19 @@ export declare function findWorksheetResponseById(id: string): import(".prisma/c
507
563
  };
508
564
  }>;
509
565
  /** @returns Worksheet response if requester is the owning student. */
510
- export declare function findWorksheetResponseByIdForStudent(id: string, userId: string): import(".prisma/client").Prisma.Prisma__StudentWorksheetResponseClient<({
566
+ export declare function findWorksheetResponseByIdForStudent(id: string, userId: string): Prisma.Prisma__StudentWorksheetResponseClient<({
511
567
  worksheet: {
568
+ status: import(".prisma/client").$Enums.JobStatus | null;
512
569
  name: string;
513
570
  id: string;
514
571
  createdAt: Date;
515
572
  updatedAt: Date;
516
573
  classId: string;
574
+ runJobId: string | null;
575
+ sourceUrl: string | null;
517
576
  };
518
577
  responses: {
519
- status: import(".prisma/client").$Enums.GenerationStatus | null;
578
+ status: import(".prisma/client").$Enums.JobStatus | null;
520
579
  id: string;
521
580
  createdAt: Date;
522
581
  updatedAt: Date | null;
@@ -524,10 +583,11 @@ export declare function findWorksheetResponseByIdForStudent(id: string, userId:
524
583
  questionId: string;
525
584
  response: string;
526
585
  isCorrect: boolean;
527
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
586
+ markschemeState: Prisma.JsonValue | null;
528
587
  points: number;
529
588
  feedback: string | null;
530
589
  studentWorksheetResponseId: string | null;
590
+ runJobId: string | null;
531
591
  }[];
532
592
  } & {
533
593
  id: string;
@@ -546,16 +606,19 @@ export declare function findWorksheetResponseByIdForStudent(id: string, userId:
546
606
  };
547
607
  }>;
548
608
  /** @returns Worksheet response if requester is a class teacher. */
549
- export declare function findWorksheetResponseByIdForTeacher(id: string, userId: string): import(".prisma/client").Prisma.Prisma__StudentWorksheetResponseClient<({
609
+ export declare function findWorksheetResponseByIdForTeacher(id: string, userId: string): Prisma.Prisma__StudentWorksheetResponseClient<({
550
610
  worksheet: {
611
+ status: import(".prisma/client").$Enums.JobStatus | null;
551
612
  name: string;
552
613
  id: string;
553
614
  createdAt: Date;
554
615
  updatedAt: Date;
555
616
  classId: string;
617
+ runJobId: string | null;
618
+ sourceUrl: string | null;
556
619
  };
557
620
  responses: {
558
- status: import(".prisma/client").$Enums.GenerationStatus | null;
621
+ status: import(".prisma/client").$Enums.JobStatus | null;
559
622
  id: string;
560
623
  createdAt: Date;
561
624
  updatedAt: Date | null;
@@ -563,10 +626,11 @@ export declare function findWorksheetResponseByIdForTeacher(id: string, userId:
563
626
  questionId: string;
564
627
  response: string;
565
628
  isCorrect: boolean;
566
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
629
+ markschemeState: Prisma.JsonValue | null;
567
630
  points: number;
568
631
  feedback: string | null;
569
632
  studentWorksheetResponseId: string | null;
633
+ runJobId: string | null;
570
634
  }[];
571
635
  } & {
572
636
  id: string;
@@ -585,9 +649,9 @@ export declare function findWorksheetResponseByIdForTeacher(id: string, userId:
585
649
  };
586
650
  }>;
587
651
  /** @returns Worksheet response with question responses. */
588
- export declare function findWorksheetResponseWithResponses(id: string, questionId?: string): import(".prisma/client").Prisma.Prisma__StudentWorksheetResponseClient<({
652
+ export declare function findWorksheetResponseWithResponses(id: string, questionId?: string): Prisma.Prisma__StudentWorksheetResponseClient<({
589
653
  responses: {
590
- status: import(".prisma/client").$Enums.GenerationStatus | null;
654
+ status: import(".prisma/client").$Enums.JobStatus | null;
591
655
  id: string;
592
656
  createdAt: Date;
593
657
  updatedAt: Date | null;
@@ -595,10 +659,11 @@ export declare function findWorksheetResponseWithResponses(id: string, questionI
595
659
  questionId: string;
596
660
  response: string;
597
661
  isCorrect: boolean;
598
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
662
+ markschemeState: Prisma.JsonValue | null;
599
663
  points: number;
600
664
  feedback: string | null;
601
665
  studentWorksheetResponseId: string | null;
666
+ runJobId: string | null;
602
667
  }[];
603
668
  } & {
604
669
  id: string;
@@ -617,16 +682,19 @@ export declare function findWorksheetResponseWithResponses(id: string, questionI
617
682
  };
618
683
  }>;
619
684
  /** @returns Worksheet response with scoped responses if requester is the owning student. */
620
- export declare function findWorksheetResponseWithResponsesForStudent(id: string, userId: string, questionId?: string): import(".prisma/client").Prisma.Prisma__StudentWorksheetResponseClient<({
685
+ export declare function findWorksheetResponseWithResponsesForStudent(id: string, userId: string, questionId?: string): Prisma.Prisma__StudentWorksheetResponseClient<({
621
686
  worksheet: {
687
+ status: import(".prisma/client").$Enums.JobStatus | null;
622
688
  name: string;
623
689
  id: string;
624
690
  createdAt: Date;
625
691
  updatedAt: Date;
626
692
  classId: string;
693
+ runJobId: string | null;
694
+ sourceUrl: string | null;
627
695
  };
628
696
  responses: {
629
- status: import(".prisma/client").$Enums.GenerationStatus | null;
697
+ status: import(".prisma/client").$Enums.JobStatus | null;
630
698
  id: string;
631
699
  createdAt: Date;
632
700
  updatedAt: Date | null;
@@ -634,10 +702,11 @@ export declare function findWorksheetResponseWithResponsesForStudent(id: string,
634
702
  questionId: string;
635
703
  response: string;
636
704
  isCorrect: boolean;
637
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
705
+ markschemeState: Prisma.JsonValue | null;
638
706
  points: number;
639
707
  feedback: string | null;
640
708
  studentWorksheetResponseId: string | null;
709
+ runJobId: string | null;
641
710
  }[];
642
711
  } & {
643
712
  id: string;
@@ -656,16 +725,19 @@ export declare function findWorksheetResponseWithResponsesForStudent(id: string,
656
725
  };
657
726
  }>;
658
727
  /** @returns Worksheet response with scoped responses if requester is a class teacher. */
659
- export declare function findWorksheetResponseWithResponsesForTeacher(id: string, userId: string, questionId?: string): import(".prisma/client").Prisma.Prisma__StudentWorksheetResponseClient<({
728
+ export declare function findWorksheetResponseWithResponsesForTeacher(id: string, userId: string, questionId?: string): Prisma.Prisma__StudentWorksheetResponseClient<({
660
729
  worksheet: {
730
+ status: import(".prisma/client").$Enums.JobStatus | null;
661
731
  name: string;
662
732
  id: string;
663
733
  createdAt: Date;
664
734
  updatedAt: Date;
665
735
  classId: string;
736
+ runJobId: string | null;
737
+ sourceUrl: string | null;
666
738
  };
667
739
  responses: {
668
- status: import(".prisma/client").$Enums.GenerationStatus | null;
740
+ status: import(".prisma/client").$Enums.JobStatus | null;
669
741
  id: string;
670
742
  createdAt: Date;
671
743
  updatedAt: Date | null;
@@ -673,10 +745,11 @@ export declare function findWorksheetResponseWithResponsesForTeacher(id: string,
673
745
  questionId: string;
674
746
  response: string;
675
747
  isCorrect: boolean;
676
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
748
+ markschemeState: Prisma.JsonValue | null;
677
749
  points: number;
678
750
  feedback: string | null;
679
751
  studentWorksheetResponseId: string | null;
752
+ runJobId: string | null;
680
753
  }[];
681
754
  } & {
682
755
  id: string;
@@ -695,16 +768,16 @@ export declare function findWorksheetResponseWithResponsesForTeacher(id: string,
695
768
  };
696
769
  }>;
697
770
  /** @returns Worksheet question by ID. */
698
- export declare function findWorksheetQuestionById(id: string): import(".prisma/client").Prisma.Prisma__WorksheetQuestionClient<{
771
+ export declare function findWorksheetQuestionById(id: string): Prisma.Prisma__WorksheetQuestionClient<{
699
772
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
700
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
773
+ options: Prisma.JsonValue | null;
701
774
  id: string;
702
775
  createdAt: Date;
703
776
  updatedAt: Date;
704
777
  order: number | null;
705
778
  points: number;
706
779
  worksheetId: string;
707
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
780
+ markScheme: Prisma.JsonValue | null;
708
781
  question: string;
709
782
  answer: string;
710
783
  } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
@@ -715,7 +788,7 @@ export declare function findWorksheetQuestionById(id: string): import(".prisma/c
715
788
  };
716
789
  }>;
717
790
  /** @returns Student question progress if requester is a class teacher. */
718
- export declare function findStudentQuestionProgressByIdForTeacher(id: string, userId: string): import(".prisma/client").Prisma.Prisma__StudentQuestionProgressClient<({
791
+ export declare function findStudentQuestionProgressByIdForTeacher(id: string, userId: string): Prisma.Prisma__StudentQuestionProgressClient<({
719
792
  studentWorksheetResponse: {
720
793
  id: string;
721
794
  createdAt: Date;
@@ -728,19 +801,19 @@ export declare function findStudentQuestionProgressByIdForTeacher(id: string, us
728
801
  } | null;
729
802
  question: {
730
803
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
731
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
804
+ options: Prisma.JsonValue | null;
732
805
  id: string;
733
806
  createdAt: Date;
734
807
  updatedAt: Date;
735
808
  order: number | null;
736
809
  points: number;
737
810
  worksheetId: string;
738
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
811
+ markScheme: Prisma.JsonValue | null;
739
812
  question: string;
740
813
  answer: string;
741
814
  };
742
815
  } & {
743
- status: import(".prisma/client").$Enums.GenerationStatus | null;
816
+ status: import(".prisma/client").$Enums.JobStatus | null;
744
817
  id: string;
745
818
  createdAt: Date;
746
819
  updatedAt: Date | null;
@@ -748,10 +821,11 @@ export declare function findStudentQuestionProgressByIdForTeacher(id: string, us
748
821
  questionId: string;
749
822
  response: string;
750
823
  isCorrect: boolean;
751
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
824
+ markschemeState: Prisma.JsonValue | null;
752
825
  points: number;
753
826
  feedback: string | null;
754
827
  studentWorksheetResponseId: string | null;
828
+ runJobId: string | null;
755
829
  }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
756
830
  datasources: {
757
831
  db: {
@@ -760,7 +834,7 @@ export declare function findStudentQuestionProgressByIdForTeacher(id: string, us
760
834
  };
761
835
  }>;
762
836
  /** @returns Student question progress by id and worksheet response if requester is a class teacher. */
763
- export declare function findStudentQuestionProgressByIdForTeacherAndResponse(id: string, studentWorksheetResponseId: string, userId: string): import(".prisma/client").Prisma.Prisma__StudentQuestionProgressClient<({
837
+ export declare function findStudentQuestionProgressByIdForTeacherAndResponse(id: string, studentWorksheetResponseId: string, userId: string): Prisma.Prisma__StudentQuestionProgressClient<({
764
838
  studentWorksheetResponse: {
765
839
  id: string;
766
840
  createdAt: Date;
@@ -773,19 +847,19 @@ export declare function findStudentQuestionProgressByIdForTeacherAndResponse(id:
773
847
  } | null;
774
848
  question: {
775
849
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
776
- options: import("@prisma/client/runtime/library.js").JsonValue | null;
850
+ options: Prisma.JsonValue | null;
777
851
  id: string;
778
852
  createdAt: Date;
779
853
  updatedAt: Date;
780
854
  order: number | null;
781
855
  points: number;
782
856
  worksheetId: string;
783
- markScheme: import("@prisma/client/runtime/library.js").JsonValue | null;
857
+ markScheme: Prisma.JsonValue | null;
784
858
  question: string;
785
859
  answer: string;
786
860
  };
787
861
  } & {
788
- status: import(".prisma/client").$Enums.GenerationStatus | null;
862
+ status: import(".prisma/client").$Enums.JobStatus | null;
789
863
  id: string;
790
864
  createdAt: Date;
791
865
  updatedAt: Date | null;
@@ -793,10 +867,11 @@ export declare function findStudentQuestionProgressByIdForTeacherAndResponse(id:
793
867
  questionId: string;
794
868
  response: string;
795
869
  isCorrect: boolean;
796
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
870
+ markschemeState: Prisma.JsonValue | null;
797
871
  points: number;
798
872
  feedback: string | null;
799
873
  studentWorksheetResponseId: string | null;
874
+ runJobId: string | null;
800
875
  }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
801
876
  datasources: {
802
877
  db: {
@@ -809,9 +884,9 @@ export declare function updateStudentQuestionProgress(id: string, data: {
809
884
  response?: string;
810
885
  isCorrect?: boolean;
811
886
  points?: number;
812
- status?: GenerationStatus;
813
- }): import(".prisma/client").Prisma.Prisma__StudentQuestionProgressClient<{
814
- status: import(".prisma/client").$Enums.GenerationStatus | null;
887
+ status?: JobStatus;
888
+ }): Prisma.Prisma__StudentQuestionProgressClient<{
889
+ status: import(".prisma/client").$Enums.JobStatus | null;
815
890
  id: string;
816
891
  createdAt: Date;
817
892
  updatedAt: Date | null;
@@ -819,10 +894,11 @@ export declare function updateStudentQuestionProgress(id: string, data: {
819
894
  questionId: string;
820
895
  response: string;
821
896
  isCorrect: boolean;
822
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
897
+ markschemeState: Prisma.JsonValue | null;
823
898
  points: number;
824
899
  feedback: string | null;
825
900
  studentWorksheetResponseId: string | null;
901
+ runJobId: string | null;
826
902
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
827
903
  datasources: {
828
904
  db: {
@@ -838,8 +914,8 @@ export declare function createStudentQuestionProgress(data: {
838
914
  response: string;
839
915
  isCorrect?: boolean;
840
916
  points?: number;
841
- }): import(".prisma/client").Prisma.Prisma__StudentQuestionProgressClient<{
842
- status: import(".prisma/client").$Enums.GenerationStatus | null;
917
+ }): Prisma.Prisma__StudentQuestionProgressClient<{
918
+ status: import(".prisma/client").$Enums.JobStatus | null;
843
919
  id: string;
844
920
  createdAt: Date;
845
921
  updatedAt: Date | null;
@@ -847,10 +923,11 @@ export declare function createStudentQuestionProgress(data: {
847
923
  questionId: string;
848
924
  response: string;
849
925
  isCorrect: boolean;
850
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
926
+ markschemeState: Prisma.JsonValue | null;
851
927
  points: number;
852
928
  feedback: string | null;
853
929
  studentWorksheetResponseId: string | null;
930
+ runJobId: string | null;
854
931
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
855
932
  datasources: {
856
933
  db: {
@@ -859,8 +936,8 @@ export declare function createStudentQuestionProgress(data: {
859
936
  };
860
937
  }>;
861
938
  /** @returns Student's progress for a question. */
862
- export declare function findStudentQuestionProgress(studentId: string, questionId: string, studentWorksheetResponseId: string): import(".prisma/client").Prisma.Prisma__StudentQuestionProgressClient<{
863
- status: import(".prisma/client").$Enums.GenerationStatus | null;
939
+ export declare function findStudentQuestionProgress(studentId: string, questionId: string, studentWorksheetResponseId: string): Prisma.Prisma__StudentQuestionProgressClient<{
940
+ status: import(".prisma/client").$Enums.JobStatus | null;
864
941
  id: string;
865
942
  createdAt: Date;
866
943
  updatedAt: Date | null;
@@ -868,10 +945,11 @@ export declare function findStudentQuestionProgress(studentId: string, questionI
868
945
  questionId: string;
869
946
  response: string;
870
947
  isCorrect: boolean;
871
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
948
+ markschemeState: Prisma.JsonValue | null;
872
949
  points: number;
873
950
  feedback: string | null;
874
951
  studentWorksheetResponseId: string | null;
952
+ runJobId: string | null;
875
953
  } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
876
954
  datasources: {
877
955
  db: {
@@ -886,8 +964,8 @@ export declare function updateStudentQuestionProgressForGrading(id: string, data
886
964
  markschemeState?: object;
887
965
  points?: number;
888
966
  response?: string;
889
- }): import(".prisma/client").Prisma.Prisma__StudentQuestionProgressClient<{
890
- status: import(".prisma/client").$Enums.GenerationStatus | null;
967
+ }): Prisma.Prisma__StudentQuestionProgressClient<{
968
+ status: import(".prisma/client").$Enums.JobStatus | null;
891
969
  id: string;
892
970
  createdAt: Date;
893
971
  updatedAt: Date | null;
@@ -895,10 +973,11 @@ export declare function updateStudentQuestionProgressForGrading(id: string, data
895
973
  questionId: string;
896
974
  response: string;
897
975
  isCorrect: boolean;
898
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
976
+ markschemeState: Prisma.JsonValue | null;
899
977
  points: number;
900
978
  feedback: string | null;
901
979
  studentWorksheetResponseId: string | null;
980
+ runJobId: string | null;
902
981
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
903
982
  datasources: {
904
983
  db: {
@@ -916,8 +995,8 @@ export declare function createStudentQuestionProgressForGrading(data: {
916
995
  feedback?: string;
917
996
  markschemeState?: object;
918
997
  points?: number;
919
- }): import(".prisma/client").Prisma.Prisma__StudentQuestionProgressClient<{
920
- status: import(".prisma/client").$Enums.GenerationStatus | null;
998
+ }): Prisma.Prisma__StudentQuestionProgressClient<{
999
+ status: import(".prisma/client").$Enums.JobStatus | null;
921
1000
  id: string;
922
1001
  createdAt: Date;
923
1002
  updatedAt: Date | null;
@@ -925,10 +1004,11 @@ export declare function createStudentQuestionProgressForGrading(data: {
925
1004
  questionId: string;
926
1005
  response: string;
927
1006
  isCorrect: boolean;
928
- markschemeState: import("@prisma/client/runtime/library.js").JsonValue | null;
1007
+ markschemeState: Prisma.JsonValue | null;
929
1008
  points: number;
930
1009
  feedback: string | null;
931
1010
  studentWorksheetResponseId: string | null;
1011
+ runJobId: string | null;
932
1012
  }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
933
1013
  datasources: {
934
1014
  db: {
@@ -941,8 +1021,7 @@ export declare function createComment(data: {
941
1021
  studentQuestionProgressId: string;
942
1022
  content: string;
943
1023
  authorId: string;
944
- }): import(".prisma/client").Prisma.Prisma__CommentClient<{
945
- status: import(".prisma/client").$Enums.GenerationStatus | null;
1024
+ }): Prisma.Prisma__CommentClient<{
946
1025
  id: string;
947
1026
  createdAt: Date;
948
1027
  assignmentId: string | null;