@studious-lms/server 1.12.0 → 1.14.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 (338) hide show
  1. package/.dockerignore +28 -0
  2. package/.env.example +5 -0
  3. package/.github/workflows/deploy.yml +123 -0
  4. package/Dockerfile +54 -0
  5. package/dist/index.js +5 -2
  6. package/dist/index.js.map +1 -1
  7. package/dist/lib/config/cors.d.ts.map +1 -1
  8. package/dist/lib/config/cors.js +31 -11
  9. package/dist/lib/config/cors.js.map +1 -1
  10. package/dist/lib/config/env.d.ts +17 -0
  11. package/dist/lib/config/env.d.ts.map +1 -1
  12. package/dist/lib/config/env.js +8 -2
  13. package/dist/lib/config/env.js.map +1 -1
  14. package/dist/lib/googleCloudStorage.d.ts +10 -0
  15. package/dist/lib/googleCloudStorage.d.ts.map +1 -1
  16. package/dist/lib/googleCloudStorage.js +22 -2
  17. package/dist/lib/googleCloudStorage.js.map +1 -1
  18. package/dist/lib/prisma.d.ts +104 -5
  19. package/dist/lib/prisma.d.ts.map +1 -1
  20. package/dist/lib/prisma.js +33 -2
  21. package/dist/lib/prisma.js.map +1 -1
  22. package/dist/models/agenda.d.ts +20 -20
  23. package/dist/models/announcement.d.ts +177 -69
  24. package/dist/models/announcement.d.ts.map +1 -1
  25. package/dist/models/assignment.d.ts +551 -353
  26. package/dist/models/assignment.d.ts.map +1 -1
  27. package/dist/models/attendance.d.ts +197 -71
  28. package/dist/models/attendance.d.ts.map +1 -1
  29. package/dist/models/auth.d.ts +348 -114
  30. package/dist/models/auth.d.ts.map +1 -1
  31. package/dist/models/class.d.ts +324 -188
  32. package/dist/models/class.d.ts.map +1 -1
  33. package/dist/models/class.js +9 -3
  34. package/dist/models/class.js.map +1 -1
  35. package/dist/models/cloudStorage.d.ts +146 -56
  36. package/dist/models/cloudStorage.d.ts.map +1 -1
  37. package/dist/models/comment.d.ts +269 -110
  38. package/dist/models/comment.d.ts.map +1 -1
  39. package/dist/models/comment.js +3 -2
  40. package/dist/models/comment.js.map +1 -1
  41. package/dist/models/conversation.d.ts +206 -63
  42. package/dist/models/conversation.d.ts.map +1 -1
  43. package/dist/models/conversation.js +13 -2
  44. package/dist/models/conversation.js.map +1 -1
  45. package/dist/models/department.d.ts +196 -70
  46. package/dist/models/department.d.ts.map +1 -1
  47. package/dist/models/event.d.ts +287 -125
  48. package/dist/models/event.d.ts.map +1 -1
  49. package/dist/models/file.d.ts +389 -263
  50. package/dist/models/file.d.ts.map +1 -1
  51. package/dist/models/folder.d.ts +433 -181
  52. package/dist/models/folder.d.ts.map +1 -1
  53. package/dist/models/labChat.d.ts +209 -83
  54. package/dist/models/labChat.d.ts.map +1 -1
  55. package/dist/models/marketing.d.ts +80 -26
  56. package/dist/models/marketing.d.ts.map +1 -1
  57. package/dist/models/message.d.ts +95 -41
  58. package/dist/models/message.d.ts.map +1 -1
  59. package/dist/models/newtonChat.d.ts +83 -29
  60. package/dist/models/newtonChat.d.ts.map +1 -1
  61. package/dist/models/notification.d.ts +61 -25
  62. package/dist/models/notification.d.ts.map +1 -1
  63. package/dist/models/school.d.ts +349 -133
  64. package/dist/models/school.d.ts.map +1 -1
  65. package/dist/models/section.d.ts +216 -72
  66. package/dist/models/section.d.ts.map +1 -1
  67. package/dist/models/tag.d.ts +156 -48
  68. package/dist/models/tag.d.ts.map +1 -1
  69. package/dist/models/user.d.ts +82 -28
  70. package/dist/models/user.d.ts.map +1 -1
  71. package/dist/models/worksheet.d.ts +1023 -410
  72. package/dist/models/worksheet.d.ts.map +1 -1
  73. package/dist/models/worksheet.js +19 -7
  74. package/dist/models/worksheet.js.map +1 -1
  75. package/dist/pipelines/aiLabChat.d.ts +0 -8
  76. package/dist/pipelines/aiLabChat.d.ts.map +1 -1
  77. package/dist/pipelines/aiLabChat.js +50 -67
  78. package/dist/pipelines/aiLabChat.js.map +1 -1
  79. package/dist/pipelines/aiLabChatContract.d.ts +393 -388
  80. package/dist/pipelines/aiLabChatContract.d.ts.map +1 -1
  81. package/dist/pipelines/aiLabChatContract.js +63 -69
  82. package/dist/pipelines/aiLabChatContract.js.map +1 -1
  83. package/dist/pipelines/aiNewtonChat.d.ts.map +1 -1
  84. package/dist/pipelines/aiNewtonChat.js +41 -41
  85. package/dist/pipelines/aiNewtonChat.js.map +1 -1
  86. package/dist/pipelines/gradeWorksheet.d.ts +8 -8
  87. package/dist/pipelines/gradeWorksheet.d.ts.map +1 -1
  88. package/dist/pipelines/gradeWorksheet.js +59 -14
  89. package/dist/pipelines/gradeWorksheet.js.map +1 -1
  90. package/dist/pipelines/labChatPrompt.d.ts +10 -8
  91. package/dist/pipelines/labChatPrompt.d.ts.map +1 -1
  92. package/dist/pipelines/labChatPrompt.js +47 -67
  93. package/dist/pipelines/labChatPrompt.js.map +1 -1
  94. package/dist/pipelines/pdfToWorksheet.d.ts +2 -2
  95. package/dist/routers/_app.d.ts +2268 -1898
  96. package/dist/routers/_app.d.ts.map +1 -1
  97. package/dist/routers/_app.js +4 -2
  98. package/dist/routers/_app.js.map +1 -1
  99. package/dist/routers/admin.d.ts +13 -13
  100. package/dist/routers/agenda.d.ts +18 -18
  101. package/dist/routers/announcement.d.ts +32 -28
  102. package/dist/routers/announcement.d.ts.map +1 -1
  103. package/dist/routers/announcement.js +6 -5
  104. package/dist/routers/announcement.js.map +1 -1
  105. package/dist/routers/assignment.d.ts +335 -327
  106. package/dist/routers/assignment.d.ts.map +1 -1
  107. package/dist/routers/assignment.js +4 -4
  108. package/dist/routers/assignment.js.map +1 -1
  109. package/dist/routers/attendance.d.ts +10 -10
  110. package/dist/routers/auth.d.ts +2 -2
  111. package/dist/routers/class.d.ts +170 -147
  112. package/dist/routers/class.d.ts.map +1 -1
  113. package/dist/routers/comment.d.ts +40 -16
  114. package/dist/routers/comment.d.ts.map +1 -1
  115. package/dist/routers/comment.js +6 -3
  116. package/dist/routers/comment.js.map +1 -1
  117. package/dist/routers/conversation.d.ts +17 -17
  118. package/dist/routers/department.d.ts +34 -34
  119. package/dist/routers/discussion.d.ts +65 -53
  120. package/dist/routers/discussion.d.ts.map +1 -1
  121. package/dist/routers/discussion.js +6 -2
  122. package/dist/routers/discussion.js.map +1 -1
  123. package/dist/routers/embedding.d.ts +69 -0
  124. package/dist/routers/embedding.d.ts.map +1 -0
  125. package/dist/routers/embedding.js +143 -0
  126. package/dist/routers/embedding.js.map +1 -0
  127. package/dist/routers/event.d.ts +39 -39
  128. package/dist/routers/file.d.ts +12 -12
  129. package/dist/routers/folder.d.ts +38 -38
  130. package/dist/routers/labChat.d.ts +19 -19
  131. package/dist/routers/marketing.d.ts +2 -2
  132. package/dist/routers/message.d.ts +13 -13
  133. package/dist/routers/newtonChat.d.ts +4 -4
  134. package/dist/routers/notifications.d.ts +9 -9
  135. package/dist/routers/permissions.d.ts +14 -14
  136. package/dist/routers/school.d.ts +55 -55
  137. package/dist/routers/search.d.ts +22 -1
  138. package/dist/routers/search.d.ts.map +1 -1
  139. package/dist/routers/search.js +9 -3
  140. package/dist/routers/search.js.map +1 -1
  141. package/dist/routers/section.d.ts +4 -4
  142. package/dist/routers/studentProgress.d.ts +1 -1
  143. package/dist/routers/tag.d.ts +7 -7
  144. package/dist/routers/user.d.ts +10 -10
  145. package/dist/routers/worksheet.d.ts +97 -56
  146. package/dist/routers/worksheet.d.ts.map +1 -1
  147. package/dist/routers/worksheet.js +28 -2
  148. package/dist/routers/worksheet.js.map +1 -1
  149. package/dist/routes/aiStream.d.ts +2 -0
  150. package/dist/routes/aiStream.d.ts.map +1 -0
  151. package/dist/routes/aiStream.js +696 -0
  152. package/dist/routes/aiStream.js.map +1 -0
  153. package/dist/seedDatabase.d.ts +2 -2
  154. package/dist/seedDatabase.js +6 -6
  155. package/dist/seedDatabase.js.map +1 -1
  156. package/dist/services/adminInstitution.d.ts +8 -8
  157. package/dist/services/adminRunJob.d.ts +4 -4
  158. package/dist/services/agenda.d.ts +18 -18
  159. package/dist/services/aiChatStream.d.ts +68 -0
  160. package/dist/services/aiChatStream.d.ts.map +1 -0
  161. package/dist/services/aiChatStream.js +157 -0
  162. package/dist/services/aiChatStream.js.map +1 -0
  163. package/dist/services/aiModifierTools.d.ts +32 -0
  164. package/dist/services/aiModifierTools.d.ts.map +1 -0
  165. package/dist/services/aiModifierTools.js +165 -0
  166. package/dist/services/aiModifierTools.js.map +1 -0
  167. package/dist/services/aiProposalTools.d.ts +32 -0
  168. package/dist/services/aiProposalTools.d.ts.map +1 -0
  169. package/dist/services/aiProposalTools.js +207 -0
  170. package/dist/services/aiProposalTools.js.map +1 -0
  171. package/dist/services/aiStream.d.ts +22 -0
  172. package/dist/services/aiStream.d.ts.map +1 -0
  173. package/dist/services/aiStream.js +142 -0
  174. package/dist/services/aiStream.js.map +1 -0
  175. package/dist/services/aiTools.d.ts +16 -0
  176. package/dist/services/aiTools.d.ts.map +1 -0
  177. package/dist/services/aiTools.js +271 -0
  178. package/dist/services/aiTools.js.map +1 -0
  179. package/dist/services/announcement.d.ts +12 -12
  180. package/dist/services/announcement.d.ts.map +1 -1
  181. package/dist/services/announcement.js +7 -2
  182. package/dist/services/announcement.js.map +1 -1
  183. package/dist/services/assignment.d.ts +293 -293
  184. package/dist/services/assignment.d.ts.map +1 -1
  185. package/dist/services/assignment.js +36 -15
  186. package/dist/services/assignment.js.map +1 -1
  187. package/dist/services/attendance.d.ts +10 -10
  188. package/dist/services/auth.d.ts +2 -2
  189. package/dist/services/class.d.ts +161 -138
  190. package/dist/services/class.d.ts.map +1 -1
  191. package/dist/services/class.js +25 -4
  192. package/dist/services/class.js.map +1 -1
  193. package/dist/services/comment.d.ts +34 -16
  194. package/dist/services/comment.d.ts.map +1 -1
  195. package/dist/services/comment.js +23 -2
  196. package/dist/services/comment.js.map +1 -1
  197. package/dist/services/conversation.d.ts +17 -17
  198. package/dist/services/conversation.d.ts.map +1 -1
  199. package/dist/services/conversation.js +9 -7
  200. package/dist/services/conversation.js.map +1 -1
  201. package/dist/services/department.d.ts +33 -33
  202. package/dist/services/discussion.d.ts +58 -58
  203. package/dist/services/discussion.d.ts.map +1 -1
  204. package/dist/services/discussion.js +8 -8
  205. package/dist/services/discussion.js.map +1 -1
  206. package/dist/services/discussionSummary.d.ts +21 -0
  207. package/dist/services/discussionSummary.d.ts.map +1 -0
  208. package/dist/services/discussionSummary.js +179 -0
  209. package/dist/services/discussionSummary.js.map +1 -0
  210. package/dist/services/embedding.d.ts +67 -0
  211. package/dist/services/embedding.d.ts.map +1 -0
  212. package/dist/services/embedding.js +226 -0
  213. package/dist/services/embedding.js.map +1 -0
  214. package/dist/services/event.d.ts +37 -37
  215. package/dist/services/file.d.ts +24 -24
  216. package/dist/services/folder.d.ts +36 -36
  217. package/dist/services/labChat.d.ts +19 -19
  218. package/dist/services/marketing.d.ts +2 -2
  219. package/dist/services/message.d.ts +11 -11
  220. package/dist/services/message.d.ts.map +1 -1
  221. package/dist/services/message.js +2 -2
  222. package/dist/services/message.js.map +1 -1
  223. package/dist/services/newtonChat.d.ts +4 -4
  224. package/dist/services/notification.d.ts +9 -9
  225. package/dist/services/notification.d.ts.map +1 -1
  226. package/dist/services/permissions.d.ts +14 -14
  227. package/dist/services/school.d.ts +50 -50
  228. package/dist/services/search.d.ts +12 -0
  229. package/dist/services/search.d.ts.map +1 -1
  230. package/dist/services/search.js +120 -2
  231. package/dist/services/search.js.map +1 -1
  232. package/dist/services/section.d.ts +3 -3
  233. package/dist/services/tag.d.ts +4 -4
  234. package/dist/services/user.d.ts +4 -4
  235. package/dist/services/user.d.ts.map +1 -1
  236. package/dist/services/user.js +10 -15
  237. package/dist/services/user.js.map +1 -1
  238. package/dist/services/worksheet.d.ts +62 -47
  239. package/dist/services/worksheet.d.ts.map +1 -1
  240. package/dist/services/worksheet.js +11 -4
  241. package/dist/services/worksheet.js.map +1 -1
  242. package/dist/utils/streamBroadcast.d.ts +11 -0
  243. package/dist/utils/streamBroadcast.d.ts.map +1 -0
  244. package/dist/utils/streamBroadcast.js +32 -0
  245. package/dist/utils/streamBroadcast.js.map +1 -0
  246. package/dist/workers/connection.d.ts +15 -0
  247. package/dist/workers/connection.d.ts.map +1 -1
  248. package/dist/workers/connection.js +20 -2
  249. package/dist/workers/connection.js.map +1 -1
  250. package/dist/workers/index.js +4 -2
  251. package/dist/workers/index.js.map +1 -1
  252. package/dist/workers/processors/createRunJobWorker.d.ts.map +1 -1
  253. package/dist/workers/processors/createRunJobWorker.js +31 -8
  254. package/dist/workers/processors/createRunJobWorker.js.map +1 -1
  255. package/dist/workers/processors/embedContent.d.ts +8 -0
  256. package/dist/workers/processors/embedContent.d.ts.map +1 -0
  257. package/dist/workers/processors/embedContent.js +76 -0
  258. package/dist/workers/processors/embedContent.js.map +1 -0
  259. package/dist/workers/queues.d.ts +6 -0
  260. package/dist/workers/queues.d.ts.map +1 -1
  261. package/dist/workers/queues.js +5 -3
  262. package/dist/workers/queues.js.map +1 -1
  263. package/package.json +5 -1
  264. package/prisma/migrations/20260609215135_init/migration.sql +1412 -0
  265. package/prisma/migrations/20260610130000_add_worksheet_tags/migration.sql +13 -0
  266. package/prisma/schema.prisma +39 -7
  267. package/src/index.ts +4 -0
  268. package/src/lib/config/cors.ts +32 -9
  269. package/src/lib/config/env.ts +6 -0
  270. package/src/lib/googleCloudStorage.ts +21 -0
  271. package/src/lib/prisma.ts +40 -1
  272. package/src/models/class.ts +10 -3
  273. package/src/models/comment.ts +1 -0
  274. package/src/models/conversation.ts +12 -0
  275. package/src/models/worksheet.ts +16 -7
  276. package/src/pipelines/aiLabChat.ts +54 -79
  277. package/src/pipelines/aiLabChatContract.ts +69 -69
  278. package/src/pipelines/aiNewtonChat.ts +46 -43
  279. package/src/pipelines/gradeWorksheet.ts +66 -15
  280. package/src/pipelines/labChatPrompt.ts +63 -88
  281. package/src/routers/_app.ts +2 -0
  282. package/src/routers/announcement.ts +4 -3
  283. package/src/routers/assignment.ts +2 -2
  284. package/src/routers/comment.ts +5 -0
  285. package/src/routers/discussion.ts +7 -0
  286. package/src/routers/embedding.ts +159 -0
  287. package/src/routers/search.ts +10 -1
  288. package/src/routers/worksheet.ts +29 -0
  289. package/src/routes/aiStream.ts +789 -0
  290. package/src/seedDatabase.ts +4 -4
  291. package/src/services/aiChatStream.ts +219 -0
  292. package/src/services/aiModifierTools.ts +188 -0
  293. package/src/services/aiProposalTools.ts +272 -0
  294. package/src/services/aiStream.ts +175 -0
  295. package/src/services/aiTools.ts +290 -0
  296. package/src/services/announcement.ts +7 -0
  297. package/src/services/assignment.ts +36 -14
  298. package/src/services/class.ts +30 -2
  299. package/src/services/comment.ts +22 -0
  300. package/src/services/conversation.ts +9 -4
  301. package/src/services/discussion.ts +9 -8
  302. package/src/services/discussionSummary.ts +226 -0
  303. package/src/services/embedding.ts +285 -0
  304. package/src/services/message.ts +2 -2
  305. package/src/services/search.ts +138 -0
  306. package/src/services/user.ts +9 -17
  307. package/src/services/worksheet.ts +10 -2
  308. package/src/utils/streamBroadcast.ts +48 -0
  309. package/src/workers/connection.ts +19 -0
  310. package/src/workers/index.ts +2 -0
  311. package/src/workers/processors/createRunJobWorker.ts +32 -6
  312. package/src/workers/processors/embedContent.ts +90 -0
  313. package/src/workers/queues.ts +5 -1
  314. package/tests/integration/routers/conversation.test.ts +9 -7
  315. package/tests/unit/pipelines/aiLabChatContract.test.ts +38 -21
  316. package/tests/unit/pipelines/labChatPrompt.test.ts +23 -36
  317. package/prisma/migrations/20250807062924_init/migration.sql +0 -436
  318. package/prisma/migrations/20250919063704_init2/migration.sql +0 -24
  319. package/prisma/migrations/20250920143543_add_profile_fields/migration.sql +0 -15
  320. package/prisma/migrations/20250922165147_add_chat_models/migration.sql +0 -68
  321. package/prisma/migrations/20250922165314_add_chat_roles/migration.sql +0 -5
  322. package/prisma/migrations/20250922171242_refactor_notification_system/migration.sql +0 -20
  323. package/prisma/migrations/20250922172208_add_mentions_system/migration.sql +0 -21
  324. package/prisma/migrations/20250925072732_add_lab_chat_system/migration.sql +0 -25
  325. package/prisma/migrations/20251020151505_add_upload_tracking_fields/migration.sql +0 -57
  326. package/prisma/migrations/20251109122857_annuoncements_comments/migration.sql +0 -30
  327. package/prisma/migrations/20251109135555_reactions_announcements_comments/migration.sql +0 -35
  328. package/prisma/migrations/20260410124000_add_submission_recommendation_state/migration.sql +0 -14
  329. package/prisma/migrations/20260415103500_add_session_type/migration.sql +0 -33
  330. package/prisma/migrations/20260415133000_add_ai_usage_logs/migration.sql +0 -19
  331. package/prisma/migrations/20260417083000_add_conversation_member_hidden_at/migration.sql +0 -2
  332. package/prisma/migrations/20260502230500_assignment_submission_comments/migration.sql +0 -60
  333. package/prisma/migrations/20260504071500_school_memberships/migration.sql +0 -81
  334. package/prisma/migrations/20260506162500_consolidate_run_job_and_unify_job_status/migration.sql +0 -166
  335. package/prisma/migrations/20260509220000_institution_overhaul/migration.sql +0 -184
  336. package/prisma/migrations/20260510170000_add_folder_permissions/migration.sql +0 -93
  337. package/prisma/migrations/20260510183000_add_discussions/migration.sql +0 -151
  338. /package/.github/workflows/{npm.yml → npm-publish.yml} +0 -0
@@ -1,49 +1,109 @@
1
1
  /** @returns Class if user is a teacher or school admin. */
2
- export declare function findClassWithTeacher(classId: string, teacherId: string): import(".prisma/client").Prisma.Prisma__ClassClient<{
3
- name: string;
2
+ export declare function findClassWithTeacher(classId: string, teacherId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
3
+ result: {
4
+ userProfile: {
5
+ profilePicture: () => {
6
+ needs: {
7
+ profilePicture: true;
8
+ };
9
+ compute(profile: {
10
+ profilePicture: string | null;
11
+ }): string | null;
12
+ };
13
+ profilePictureThumbnail: () => {
14
+ needs: {
15
+ profilePictureThumbnail: true;
16
+ };
17
+ compute(profile: {
18
+ profilePictureThumbnail: string | null;
19
+ }): string | null;
20
+ };
21
+ };
22
+ };
23
+ model: {};
24
+ query: {};
25
+ client: {};
26
+ }, {}>, "Class", "findFirst", null> & import("@prisma/client/runtime/library.js").PrismaPromise<{
27
+ section: string;
4
28
  id: string;
29
+ name: string;
5
30
  schoolId: string | null;
6
- subject: string;
7
31
  color: string | null;
8
- section: string;
32
+ subject: string;
9
33
  syllabus: string | null;
10
34
  departmentId: string | null;
11
35
  discussionsEnabled: boolean;
12
36
  studentsCanCreateDiscussions: boolean;
13
37
  studentsCanReply: boolean;
14
- } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
15
- datasources: {
16
- db: {
17
- url: string;
38
+ } | null>;
39
+ /** @returns Folder by ID. */
40
+ export declare function findFolderById(folderId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
41
+ result: {
42
+ userProfile: {
43
+ profilePicture: () => {
44
+ needs: {
45
+ profilePicture: true;
46
+ };
47
+ compute(profile: {
48
+ profilePicture: string | null;
49
+ }): string | null;
50
+ };
51
+ profilePictureThumbnail: () => {
52
+ needs: {
53
+ profilePictureThumbnail: true;
54
+ };
55
+ compute(profile: {
56
+ profilePictureThumbnail: string | null;
57
+ }): string | null;
58
+ };
18
59
  };
19
60
  };
20
- }>;
21
- /** @returns Folder by ID. */
22
- export declare function findFolderById(folderId: string): import(".prisma/client").Prisma.Prisma__FolderClient<{
23
- name: string;
61
+ model: {};
62
+ query: {};
63
+ client: {};
64
+ }, {}>, "Folder", "findFirst", null> & import("@prisma/client/runtime/library.js").PrismaPromise<{
24
65
  id: string;
66
+ name: string;
67
+ scope: import(".prisma/client").$Enums.FolderScope;
68
+ parentFolderId: string | null;
25
69
  color: string | null;
26
70
  classId: string | null;
27
71
  schoolStorageId: string | null;
28
72
  personalOwnerId: string | null;
29
- scope: import(".prisma/client").$Enums.FolderScope;
30
- parentFolderId: string | null;
31
- } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
32
- datasources: {
33
- db: {
34
- url: string;
73
+ } | null>;
74
+ /** @returns Folder with class. */
75
+ export declare function findFolderByIdWithClass(folderId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
76
+ result: {
77
+ userProfile: {
78
+ profilePicture: () => {
79
+ needs: {
80
+ profilePicture: true;
81
+ };
82
+ compute(profile: {
83
+ profilePicture: string | null;
84
+ }): string | null;
85
+ };
86
+ profilePictureThumbnail: () => {
87
+ needs: {
88
+ profilePictureThumbnail: true;
89
+ };
90
+ compute(profile: {
91
+ profilePictureThumbnail: string | null;
92
+ }): string | null;
93
+ };
35
94
  };
36
95
  };
37
- }>;
38
- /** @returns Folder with class. */
39
- export declare function findFolderByIdWithClass(folderId: string): import(".prisma/client").Prisma.Prisma__FolderClient<({
96
+ model: {};
97
+ query: {};
98
+ client: {};
99
+ }, {}>, "Folder", "findUnique", null> & import("@prisma/client/runtime/library.js").PrismaPromise<({
40
100
  class: {
41
- name: string;
101
+ section: string;
42
102
  id: string;
103
+ name: string;
43
104
  schoolId: string | null;
44
- subject: string;
45
105
  color: string | null;
46
- section: string;
106
+ subject: string;
47
107
  syllabus: string | null;
48
108
  departmentId: string | null;
49
109
  discussionsEnabled: boolean;
@@ -51,48 +111,60 @@ export declare function findFolderByIdWithClass(folderId: string): import(".pris
51
111
  studentsCanReply: boolean;
52
112
  } | null;
53
113
  } & {
54
- name: string;
55
114
  id: string;
115
+ name: string;
116
+ scope: import(".prisma/client").$Enums.FolderScope;
117
+ parentFolderId: string | null;
56
118
  color: string | null;
57
119
  classId: string | null;
58
120
  schoolStorageId: string | null;
59
121
  personalOwnerId: string | null;
60
- scope: import(".prisma/client").$Enums.FolderScope;
61
- parentFolderId: string | null;
62
- }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
63
- datasources: {
64
- db: {
65
- url: string;
122
+ }) | null>;
123
+ /** @returns Root folder for a class. */
124
+ export declare function findRootFolderByClassId(classId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
125
+ result: {
126
+ userProfile: {
127
+ profilePicture: () => {
128
+ needs: {
129
+ profilePicture: true;
130
+ };
131
+ compute(profile: {
132
+ profilePicture: string | null;
133
+ }): string | null;
134
+ };
135
+ profilePictureThumbnail: () => {
136
+ needs: {
137
+ profilePictureThumbnail: true;
138
+ };
139
+ compute(profile: {
140
+ profilePictureThumbnail: string | null;
141
+ }): string | null;
142
+ };
66
143
  };
67
144
  };
68
- }>;
69
- /** @returns Root folder for a class. */
70
- export declare function findRootFolderByClassId(classId: string): import(".prisma/client").Prisma.Prisma__FolderClient<{
71
- name: string;
145
+ model: {};
146
+ query: {};
147
+ client: {};
148
+ }, {}>, "Folder", "findFirst", null> & import("@prisma/client/runtime/library.js").PrismaPromise<{
72
149
  id: string;
150
+ name: string;
151
+ scope: import(".prisma/client").$Enums.FolderScope;
152
+ parentFolderId: string | null;
73
153
  color: string | null;
74
154
  classId: string | null;
75
155
  schoolStorageId: string | null;
76
156
  personalOwnerId: string | null;
77
- scope: import(".prisma/client").$Enums.FolderScope;
78
- parentFolderId: string | null;
79
- } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
80
- datasources: {
81
- db: {
82
- url: string;
83
- };
84
- };
85
- }>;
157
+ } | null>;
86
158
  /** Get or create root folder for a class. */
87
159
  export declare function findOrCreateRootFolder(classId: string): Promise<{
88
- name: string;
89
160
  id: string;
161
+ name: string;
162
+ scope: import(".prisma/client").$Enums.FolderScope;
163
+ parentFolderId: string | null;
90
164
  color: string | null;
91
165
  classId: string | null;
92
166
  schoolStorageId: string | null;
93
167
  personalOwnerId: string | null;
94
- scope: import(".prisma/client").$Enums.FolderScope;
95
- parentFolderId: string | null;
96
168
  }>;
97
169
  /** Create a folder. */
98
170
  export declare function createFolder(data: {
@@ -100,333 +172,513 @@ export declare function createFolder(data: {
100
172
  parentFolderId?: string | null;
101
173
  classId?: string;
102
174
  color?: string;
103
- }): import(".prisma/client").Prisma.Prisma__FolderClient<{
175
+ }): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
176
+ result: {
177
+ userProfile: {
178
+ profilePicture: () => {
179
+ needs: {
180
+ profilePicture: true;
181
+ };
182
+ compute(profile: {
183
+ profilePicture: string | null;
184
+ }): string | null;
185
+ };
186
+ profilePictureThumbnail: () => {
187
+ needs: {
188
+ profilePictureThumbnail: true;
189
+ };
190
+ compute(profile: {
191
+ profilePictureThumbnail: string | null;
192
+ }): string | null;
193
+ };
194
+ };
195
+ };
196
+ model: {};
197
+ query: {};
198
+ client: {};
199
+ }, {}>, "Folder", "create", never> & import("@prisma/client/runtime/library.js").PrismaPromise<{
104
200
  files: {
105
201
  type: string;
106
- name: string;
107
- id: string;
108
202
  user: {
109
203
  id: string;
110
204
  username: string;
111
205
  } | null;
206
+ id: string;
207
+ name: string;
112
208
  size: number | null;
113
209
  uploadedAt: Date | null;
114
210
  }[];
115
211
  childFolders: {
116
- name: string;
117
212
  id: string;
118
- color: string | null;
213
+ name: string;
119
214
  _count: {
120
215
  files: number;
121
216
  childFolders: number;
122
217
  };
218
+ color: string | null;
123
219
  }[];
124
220
  } & {
125
- name: string;
126
221
  id: string;
222
+ name: string;
223
+ scope: import(".prisma/client").$Enums.FolderScope;
224
+ parentFolderId: string | null;
127
225
  color: string | null;
128
226
  classId: string | null;
129
227
  schoolStorageId: string | null;
130
228
  personalOwnerId: string | null;
131
- scope: import(".prisma/client").$Enums.FolderScope;
132
- parentFolderId: string | null;
133
- }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
134
- datasources: {
135
- db: {
136
- url: string;
137
- };
138
- };
139
229
  }>;
140
230
  /** @returns Folder with files and child folders. */
141
- export declare function findFolderWithContents(folderId: string): import(".prisma/client").Prisma.Prisma__FolderClient<({
231
+ export declare function findFolderWithContents(folderId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
232
+ result: {
233
+ userProfile: {
234
+ profilePicture: () => {
235
+ needs: {
236
+ profilePicture: true;
237
+ };
238
+ compute(profile: {
239
+ profilePicture: string | null;
240
+ }): string | null;
241
+ };
242
+ profilePictureThumbnail: () => {
243
+ needs: {
244
+ profilePictureThumbnail: true;
245
+ };
246
+ compute(profile: {
247
+ profilePictureThumbnail: string | null;
248
+ }): string | null;
249
+ };
250
+ };
251
+ };
252
+ model: {};
253
+ query: {};
254
+ client: {};
255
+ }, {}>, "Folder", "findFirst", null> & import("@prisma/client/runtime/library.js").PrismaPromise<({
142
256
  files: {
143
257
  type: string;
144
- name: string;
145
- id: string;
146
258
  user: {
147
259
  id: string;
148
260
  username: string;
149
261
  } | null;
262
+ id: string;
263
+ name: string;
150
264
  size: number | null;
151
265
  uploadedAt: Date | null;
152
266
  }[];
153
267
  childFolders: {
154
- name: string;
155
268
  id: string;
156
- color: string | null;
269
+ name: string;
157
270
  _count: {
158
271
  files: number;
159
272
  childFolders: number;
160
273
  };
274
+ color: string | null;
161
275
  }[];
162
276
  parentFolder: {
163
- name: string;
164
277
  id: string;
278
+ name: string;
165
279
  } | null;
166
280
  } & {
167
- name: string;
168
281
  id: string;
282
+ name: string;
283
+ scope: import(".prisma/client").$Enums.FolderScope;
284
+ parentFolderId: string | null;
169
285
  color: string | null;
170
286
  classId: string | null;
171
287
  schoolStorageId: string | null;
172
288
  personalOwnerId: string | null;
173
- scope: import(".prisma/client").$Enums.FolderScope;
174
- parentFolderId: string | null;
175
- }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
176
- datasources: {
177
- db: {
178
- url: string;
179
- };
180
- };
181
- }>;
289
+ }) | null>;
182
290
  /** @returns Direct child folders. */
183
- export declare function findChildFolders(parentFolderId: string): import(".prisma/client").Prisma.PrismaPromise<({
291
+ export declare function findChildFolders(parentFolderId: string): import("@prisma/client/runtime/library.js").PrismaPromise<({
184
292
  files: {
185
293
  type: string;
186
- name: string;
187
- id: string;
188
294
  user: {
189
295
  id: string;
190
296
  username: string;
191
297
  } | null;
298
+ id: string;
299
+ name: string;
192
300
  size: number | null;
193
301
  uploadedAt: Date | null;
194
302
  }[];
195
303
  childFolders: {
196
- name: string;
197
304
  id: string;
198
- color: string | null;
305
+ name: string;
199
306
  _count: {
200
307
  files: number;
201
308
  childFolders: number;
202
309
  };
310
+ color: string | null;
203
311
  }[];
204
312
  } & {
205
- name: string;
206
313
  id: string;
314
+ name: string;
315
+ scope: import(".prisma/client").$Enums.FolderScope;
316
+ parentFolderId: string | null;
207
317
  color: string | null;
208
318
  classId: string | null;
209
319
  schoolStorageId: string | null;
210
320
  personalOwnerId: string | null;
211
- scope: import(".prisma/client").$Enums.FolderScope;
212
- parentFolderId: string | null;
213
321
  })[]>;
214
322
  /** @returns Root folder with contents for a class. */
215
- export declare function findRootFolderWithContents(classId: string): import(".prisma/client").Prisma.Prisma__FolderClient<({
323
+ export declare function findRootFolderWithContents(classId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
324
+ result: {
325
+ userProfile: {
326
+ profilePicture: () => {
327
+ needs: {
328
+ profilePicture: true;
329
+ };
330
+ compute(profile: {
331
+ profilePicture: string | null;
332
+ }): string | null;
333
+ };
334
+ profilePictureThumbnail: () => {
335
+ needs: {
336
+ profilePictureThumbnail: true;
337
+ };
338
+ compute(profile: {
339
+ profilePictureThumbnail: string | null;
340
+ }): string | null;
341
+ };
342
+ };
343
+ };
344
+ model: {};
345
+ query: {};
346
+ client: {};
347
+ }, {}>, "Folder", "findFirst", null> & import("@prisma/client/runtime/library.js").PrismaPromise<({
216
348
  files: {
217
349
  type: string;
218
- name: string;
219
- id: string;
220
350
  user: {
221
351
  id: string;
222
352
  username: string;
223
353
  } | null;
354
+ id: string;
355
+ name: string;
224
356
  size: number | null;
225
357
  uploadedAt: Date | null;
226
358
  }[];
227
359
  childFolders: {
228
- name: string;
229
360
  id: string;
230
- color: string | null;
361
+ name: string;
362
+ files: {
363
+ id: string;
364
+ }[];
231
365
  _count: {
232
366
  files: number;
233
367
  childFolders: number;
234
368
  };
235
- files: {
236
- id: string;
237
- }[];
369
+ color: string | null;
238
370
  childFolders: {
239
371
  id: string;
240
372
  }[];
241
373
  }[];
242
374
  } & {
243
- name: string;
244
375
  id: string;
376
+ name: string;
377
+ scope: import(".prisma/client").$Enums.FolderScope;
378
+ parentFolderId: string | null;
245
379
  color: string | null;
246
380
  classId: string | null;
247
381
  schoolStorageId: string | null;
248
382
  personalOwnerId: string | null;
249
- scope: import(".prisma/client").$Enums.FolderScope;
250
- parentFolderId: string | null;
251
- }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
252
- datasources: {
253
- db: {
254
- url: string;
383
+ }) | null>;
384
+ /** @returns Folder with file/folder counts. */
385
+ export declare function findFolderWithCount(folderId: string, classId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
386
+ result: {
387
+ userProfile: {
388
+ profilePicture: () => {
389
+ needs: {
390
+ profilePicture: true;
391
+ };
392
+ compute(profile: {
393
+ profilePicture: string | null;
394
+ }): string | null;
395
+ };
396
+ profilePictureThumbnail: () => {
397
+ needs: {
398
+ profilePictureThumbnail: true;
399
+ };
400
+ compute(profile: {
401
+ profilePictureThumbnail: string | null;
402
+ }): string | null;
403
+ };
255
404
  };
256
405
  };
257
- }>;
258
- /** @returns Folder with file/folder counts. */
259
- export declare function findFolderWithCount(folderId: string, classId: string): import(".prisma/client").Prisma.Prisma__FolderClient<({
406
+ model: {};
407
+ query: {};
408
+ client: {};
409
+ }, {}>, "Folder", "findFirst", null> & import("@prisma/client/runtime/library.js").PrismaPromise<({
260
410
  _count: {
261
411
  files: number;
262
412
  childFolders: number;
263
413
  };
264
414
  } & {
265
- name: string;
266
415
  id: string;
416
+ name: string;
417
+ scope: import(".prisma/client").$Enums.FolderScope;
418
+ parentFolderId: string | null;
267
419
  color: string | null;
268
420
  classId: string | null;
269
421
  schoolStorageId: string | null;
270
422
  personalOwnerId: string | null;
271
- scope: import(".prisma/client").$Enums.FolderScope;
272
- parentFolderId: string | null;
273
- }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
274
- datasources: {
275
- db: {
276
- url: string;
423
+ }) | null>;
424
+ /** @returns Folder with file/folder counts. */
425
+ export declare function findFolderByIdWithCount(folderId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
426
+ result: {
427
+ userProfile: {
428
+ profilePicture: () => {
429
+ needs: {
430
+ profilePicture: true;
431
+ };
432
+ compute(profile: {
433
+ profilePicture: string | null;
434
+ }): string | null;
435
+ };
436
+ profilePictureThumbnail: () => {
437
+ needs: {
438
+ profilePictureThumbnail: true;
439
+ };
440
+ compute(profile: {
441
+ profilePictureThumbnail: string | null;
442
+ }): string | null;
443
+ };
277
444
  };
278
445
  };
279
- }>;
280
- /** @returns Folder with file/folder counts. */
281
- export declare function findFolderByIdWithCount(folderId: string): import(".prisma/client").Prisma.Prisma__FolderClient<({
446
+ model: {};
447
+ query: {};
448
+ client: {};
449
+ }, {}>, "Folder", "findFirst", null> & import("@prisma/client/runtime/library.js").PrismaPromise<({
282
450
  _count: {
283
451
  files: number;
284
452
  childFolders: number;
285
453
  };
286
454
  } & {
287
- name: string;
288
455
  id: string;
456
+ name: string;
457
+ scope: import(".prisma/client").$Enums.FolderScope;
458
+ parentFolderId: string | null;
289
459
  color: string | null;
290
460
  classId: string | null;
291
461
  schoolStorageId: string | null;
292
462
  personalOwnerId: string | null;
293
- scope: import(".prisma/client").$Enums.FolderScope;
294
- parentFolderId: string | null;
295
- }) | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
296
- datasources: {
297
- db: {
298
- url: string;
463
+ }) | null>;
464
+ /** Delete a folder. */
465
+ export declare function deleteFolderById(folderId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
466
+ result: {
467
+ userProfile: {
468
+ profilePicture: () => {
469
+ needs: {
470
+ profilePicture: true;
471
+ };
472
+ compute(profile: {
473
+ profilePicture: string | null;
474
+ }): string | null;
475
+ };
476
+ profilePictureThumbnail: () => {
477
+ needs: {
478
+ profilePictureThumbnail: true;
479
+ };
480
+ compute(profile: {
481
+ profilePictureThumbnail: string | null;
482
+ }): string | null;
483
+ };
299
484
  };
300
485
  };
301
- }>;
302
- /** Delete a folder. */
303
- export declare function deleteFolderById(folderId: string): import(".prisma/client").Prisma.Prisma__FolderClient<{
304
- name: string;
486
+ model: {};
487
+ query: {};
488
+ client: {};
489
+ }, {}>, "Folder", "delete", never> & import("@prisma/client/runtime/library.js").PrismaPromise<{
305
490
  id: string;
491
+ name: string;
492
+ scope: import(".prisma/client").$Enums.FolderScope;
493
+ parentFolderId: string | null;
306
494
  color: string | null;
307
495
  classId: string | null;
308
496
  schoolStorageId: string | null;
309
497
  personalOwnerId: string | null;
310
- scope: import(".prisma/client").$Enums.FolderScope;
311
- parentFolderId: string | null;
312
- }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
313
- datasources: {
314
- db: {
315
- url: string;
316
- };
317
- };
318
498
  }>;
319
499
  /** Move folder to new parent. */
320
- export declare function updateFolderParent(folderId: string, parentFolderId: string): import(".prisma/client").Prisma.Prisma__FolderClient<{
500
+ export declare function updateFolderParent(folderId: string, parentFolderId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
501
+ result: {
502
+ userProfile: {
503
+ profilePicture: () => {
504
+ needs: {
505
+ profilePicture: true;
506
+ };
507
+ compute(profile: {
508
+ profilePicture: string | null;
509
+ }): string | null;
510
+ };
511
+ profilePictureThumbnail: () => {
512
+ needs: {
513
+ profilePictureThumbnail: true;
514
+ };
515
+ compute(profile: {
516
+ profilePictureThumbnail: string | null;
517
+ }): string | null;
518
+ };
519
+ };
520
+ };
521
+ model: {};
522
+ query: {};
523
+ client: {};
524
+ }, {}>, "Folder", "update", never> & import("@prisma/client/runtime/library.js").PrismaPromise<{
321
525
  files: {
322
526
  type: string;
323
- name: string;
324
- id: string;
325
527
  user: {
326
528
  id: string;
327
529
  username: string;
328
530
  } | null;
531
+ id: string;
532
+ name: string;
329
533
  size: number | null;
330
534
  uploadedAt: Date | null;
331
535
  }[];
332
536
  childFolders: {
333
- name: string;
334
537
  id: string;
335
- color: string | null;
538
+ name: string;
336
539
  _count: {
337
540
  files: number;
338
541
  childFolders: number;
339
542
  };
543
+ color: string | null;
340
544
  }[];
341
545
  } & {
342
- name: string;
343
546
  id: string;
547
+ name: string;
548
+ scope: import(".prisma/client").$Enums.FolderScope;
549
+ parentFolderId: string | null;
344
550
  color: string | null;
345
551
  classId: string | null;
346
552
  schoolStorageId: string | null;
347
553
  personalOwnerId: string | null;
348
- scope: import(".prisma/client").$Enums.FolderScope;
349
- parentFolderId: string | null;
350
- }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
351
- datasources: {
352
- db: {
353
- url: string;
354
- };
355
- };
356
554
  }>;
357
555
  /** Update folder name and color. */
358
556
  export declare function updateFolder(folderId: string, data: {
359
557
  name?: string;
360
558
  color?: string;
361
- }): import(".prisma/client").Prisma.Prisma__FolderClient<{
559
+ }): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
560
+ result: {
561
+ userProfile: {
562
+ profilePicture: () => {
563
+ needs: {
564
+ profilePicture: true;
565
+ };
566
+ compute(profile: {
567
+ profilePicture: string | null;
568
+ }): string | null;
569
+ };
570
+ profilePictureThumbnail: () => {
571
+ needs: {
572
+ profilePictureThumbnail: true;
573
+ };
574
+ compute(profile: {
575
+ profilePictureThumbnail: string | null;
576
+ }): string | null;
577
+ };
578
+ };
579
+ };
580
+ model: {};
581
+ query: {};
582
+ client: {};
583
+ }, {}>, "Folder", "update", never> & import("@prisma/client/runtime/library.js").PrismaPromise<{
362
584
  files: {
363
585
  type: string;
364
- name: string;
365
- id: string;
366
586
  user: {
367
587
  id: string;
368
588
  username: string;
369
589
  } | null;
590
+ id: string;
591
+ name: string;
370
592
  size: number | null;
371
593
  uploadedAt: Date | null;
372
594
  }[];
373
595
  childFolders: {
374
- name: string;
375
596
  id: string;
376
- color: string | null;
597
+ name: string;
377
598
  _count: {
378
599
  files: number;
379
600
  childFolders: number;
380
601
  };
602
+ color: string | null;
381
603
  }[];
382
604
  } & {
383
- name: string;
384
605
  id: string;
606
+ name: string;
607
+ scope: import(".prisma/client").$Enums.FolderScope;
608
+ parentFolderId: string | null;
385
609
  color: string | null;
386
610
  classId: string | null;
387
611
  schoolStorageId: string | null;
388
612
  personalOwnerId: string | null;
389
- scope: import(".prisma/client").$Enums.FolderScope;
390
- parentFolderId: string | null;
391
- }, never, import("@prisma/client/runtime/library.js").DefaultArgs, {
392
- datasources: {
393
- db: {
394
- url: string;
395
- };
396
- };
397
613
  }>;
398
614
  /** @returns Folder for path traversal. */
399
- export declare function findFolderByIdForTraversal(id: string): import(".prisma/client").Prisma.Prisma__FolderClient<{
400
- name: string;
615
+ export declare function findFolderByIdForTraversal(id: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
616
+ result: {
617
+ userProfile: {
618
+ profilePicture: () => {
619
+ needs: {
620
+ profilePicture: true;
621
+ };
622
+ compute(profile: {
623
+ profilePicture: string | null;
624
+ }): string | null;
625
+ };
626
+ profilePictureThumbnail: () => {
627
+ needs: {
628
+ profilePictureThumbnail: true;
629
+ };
630
+ compute(profile: {
631
+ profilePictureThumbnail: string | null;
632
+ }): string | null;
633
+ };
634
+ };
635
+ };
636
+ model: {};
637
+ query: {};
638
+ client: {};
639
+ }, {}>, "Folder", "findUnique", null> & import("@prisma/client/runtime/library.js").PrismaPromise<{
401
640
  id: string;
641
+ name: string;
642
+ scope: import(".prisma/client").$Enums.FolderScope;
643
+ parentFolderId: string | null;
402
644
  color: string | null;
403
645
  classId: string | null;
404
646
  schoolStorageId: string | null;
405
647
  personalOwnerId: string | null;
406
- scope: import(".prisma/client").$Enums.FolderScope;
407
- parentFolderId: string | null;
408
- } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
409
- datasources: {
410
- db: {
411
- url: string;
648
+ } | null>;
649
+ /** @returns Folder by ID. */
650
+ export declare function findFolderParents(folderId: string): import("@prisma/client/runtime/library.js").DynamicModelExtensionFluentApi<import(".prisma/client").Prisma.TypeMap<import("@prisma/client/runtime/library.js").InternalArgs & {
651
+ result: {
652
+ userProfile: {
653
+ profilePicture: () => {
654
+ needs: {
655
+ profilePicture: true;
656
+ };
657
+ compute(profile: {
658
+ profilePicture: string | null;
659
+ }): string | null;
660
+ };
661
+ profilePictureThumbnail: () => {
662
+ needs: {
663
+ profilePictureThumbnail: true;
664
+ };
665
+ compute(profile: {
666
+ profilePictureThumbnail: string | null;
667
+ }): string | null;
668
+ };
412
669
  };
413
670
  };
414
- }>;
415
- /** @returns Folder by ID. */
416
- export declare function findFolderParents(folderId: string): import(".prisma/client").Prisma.Prisma__FolderClient<{
417
- name: string;
671
+ model: {};
672
+ query: {};
673
+ client: {};
674
+ }, {}>, "Folder", "findFirst", null> & import("@prisma/client/runtime/library.js").PrismaPromise<{
418
675
  id: string;
676
+ name: string;
677
+ scope: import(".prisma/client").$Enums.FolderScope;
678
+ parentFolderId: string | null;
419
679
  color: string | null;
420
680
  classId: string | null;
421
681
  schoolStorageId: string | null;
422
682
  personalOwnerId: string | null;
423
- scope: import(".prisma/client").$Enums.FolderScope;
424
- parentFolderId: string | null;
425
- } | null, null, import("@prisma/client/runtime/library.js").DefaultArgs, {
426
- datasources: {
427
- db: {
428
- url: string;
429
- };
430
- };
431
- }>;
683
+ } | null>;
432
684
  //# sourceMappingURL=folder.d.ts.map