@faiber/faiber-lms 0.2.1 → 0.2.2

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.
@@ -0,0 +1,2365 @@
1
+ import type { ApiEnvelope, JsonObject, JsonValue, QueryParams } from "@faiber/sdk-core";
2
+ /** Generated route contracts. Dynamic payload members remain JSON-safe and are documented with their Rust source type. */
3
+ /** Backend response type: response without a declared JSON model. */
4
+ export interface RouterOpenapiJsonGetResponse extends ApiEnvelope<JsonValue> {
5
+ }
6
+ /** Backend response type: SessionResponse. */
7
+ export interface SessionGetSelfGetResponseData extends JsonObject {
8
+ "user_id": string;
9
+ "roles": string[];
10
+ "permissions": string[];
11
+ }
12
+ export interface SessionGetSelfGetResponse extends ApiEnvelope<SessionGetSelfGetResponseData> {
13
+ }
14
+ /** Backend query type: PaginationQuery. */
15
+ export interface CertificateIndexCertificateGetQuery extends QueryParams {
16
+ "page[number]"?: number;
17
+ "page[size]"?: number;
18
+ }
19
+ /** Backend response type: crate::models::PagedResult<models::CertificateResponse>. */
20
+ export interface CertificateIndexCertificateGetResponseItem extends JsonObject {
21
+ "id": number;
22
+ "user_id": string;
23
+ "course_id"?: number;
24
+ "classroom_id"?: number;
25
+ "title": string;
26
+ "issued_at": string;
27
+ "media_url"?: string;
28
+ "created_at": string;
29
+ }
30
+ export interface CertificateIndexCertificateGetResponsePageMeta extends JsonObject {
31
+ "page": number;
32
+ "page_size": number;
33
+ "total_items": number;
34
+ "total_pages": number;
35
+ }
36
+ export interface CertificateIndexCertificateGetResponseData extends JsonObject {
37
+ "data": CertificateIndexCertificateGetResponseItem[];
38
+ "meta": CertificateIndexCertificateGetResponsePageMeta;
39
+ }
40
+ export interface CertificateIndexCertificateGetResponse extends ApiEnvelope<CertificateIndexCertificateGetResponseData> {
41
+ }
42
+ /** Backend request type: models::CreateCertificateRequest. */
43
+ export interface CertificateStoreCertificatePostInput extends JsonObject {
44
+ "user_id": string;
45
+ "course_id"?: number;
46
+ "classroom_id"?: number;
47
+ "title": string;
48
+ "issued_at": string;
49
+ "media_url"?: string;
50
+ }
51
+ /** Backend response type: models::CertificateResponse. */
52
+ export interface CertificateStoreCertificatePostResponseData extends JsonObject {
53
+ "id": number;
54
+ "user_id": string;
55
+ "course_id"?: number;
56
+ "classroom_id"?: number;
57
+ "title": string;
58
+ "issued_at": string;
59
+ "media_url"?: string;
60
+ "created_at": string;
61
+ }
62
+ export interface CertificateStoreCertificatePostResponse extends ApiEnvelope<CertificateStoreCertificatePostResponseData> {
63
+ }
64
+ /** Backend response type: models::CertificateResponse. */
65
+ export interface CertificateShowCertificateGetResponseData extends JsonObject {
66
+ "id": number;
67
+ "user_id": string;
68
+ "course_id"?: number;
69
+ "classroom_id"?: number;
70
+ "title": string;
71
+ "issued_at": string;
72
+ "media_url"?: string;
73
+ "created_at": string;
74
+ }
75
+ export interface CertificateShowCertificateGetResponse extends ApiEnvelope<CertificateShowCertificateGetResponseData> {
76
+ }
77
+ /** Backend request type: models::UpdateCertificateRequest. */
78
+ export interface CertificateUpdateCertificatePatchInput extends JsonObject {
79
+ "user_id"?: string;
80
+ "course_id"?: number;
81
+ "classroom_id"?: number;
82
+ "title"?: string;
83
+ "issued_at"?: string;
84
+ "media_url"?: string;
85
+ }
86
+ /** Backend response type: models::CertificateResponse. */
87
+ export interface CertificateUpdateCertificatePatchResponseData extends JsonObject {
88
+ "id": number;
89
+ "user_id": string;
90
+ "course_id"?: number;
91
+ "classroom_id"?: number;
92
+ "title": string;
93
+ "issued_at": string;
94
+ "media_url"?: string;
95
+ "created_at": string;
96
+ }
97
+ export interface CertificateUpdateCertificatePatchResponse extends ApiEnvelope<CertificateUpdateCertificatePatchResponseData> {
98
+ }
99
+ /** Backend query type: PaginationQuery. */
100
+ export interface ClassroomIndexClassroomGetQuery extends QueryParams {
101
+ "page[number]"?: number;
102
+ "page[size]"?: number;
103
+ }
104
+ /** Backend response type: crate::models::PagedResult<models::ClassroomResponse>. */
105
+ export interface ClassroomIndexClassroomGetResponseItem extends JsonObject {
106
+ "id": number;
107
+ "course_id": number;
108
+ "name": string;
109
+ "code"?: string;
110
+ "classroom_type_id"?: number;
111
+ "school_grade_id"?: number;
112
+ "teacher_user_id"?: string;
113
+ "consultant_user_id"?: string;
114
+ "capacity"?: number;
115
+ "starts_at"?: string;
116
+ "ends_at"?: string;
117
+ "status": string;
118
+ "created_at": string;
119
+ "updated_at": string;
120
+ }
121
+ export interface ClassroomIndexClassroomGetResponsePageMeta extends JsonObject {
122
+ "page": number;
123
+ "page_size": number;
124
+ "total_items": number;
125
+ "total_pages": number;
126
+ }
127
+ export interface ClassroomIndexClassroomGetResponseData extends JsonObject {
128
+ "data": ClassroomIndexClassroomGetResponseItem[];
129
+ "meta": ClassroomIndexClassroomGetResponsePageMeta;
130
+ }
131
+ export interface ClassroomIndexClassroomGetResponse extends ApiEnvelope<ClassroomIndexClassroomGetResponseData> {
132
+ }
133
+ /** Backend request type: models::CreateClassroomRequest. */
134
+ export interface ClassroomStoreClassroomPostInput extends JsonObject {
135
+ "course_id": number;
136
+ "name": string;
137
+ "code"?: string;
138
+ "classroom_type_id"?: number;
139
+ "school_grade_id"?: number;
140
+ "teacher_user_id"?: string;
141
+ "consultant_user_id"?: string;
142
+ "capacity"?: number;
143
+ "starts_at"?: string;
144
+ "ends_at"?: string;
145
+ "status": string;
146
+ }
147
+ /** Backend response type: models::ClassroomResponse. */
148
+ export interface ClassroomStoreClassroomPostResponseData extends JsonObject {
149
+ "id": number;
150
+ "course_id": number;
151
+ "name": string;
152
+ "code"?: string;
153
+ "classroom_type_id"?: number;
154
+ "school_grade_id"?: number;
155
+ "teacher_user_id"?: string;
156
+ "consultant_user_id"?: string;
157
+ "capacity"?: number;
158
+ "starts_at"?: string;
159
+ "ends_at"?: string;
160
+ "status": string;
161
+ "created_at": string;
162
+ "updated_at": string;
163
+ }
164
+ export interface ClassroomStoreClassroomPostResponse extends ApiEnvelope<ClassroomStoreClassroomPostResponseData> {
165
+ }
166
+ /** Backend response type: models::ClassroomResponse. */
167
+ export interface ClassroomShowClassroomGetResponseData extends JsonObject {
168
+ "id": number;
169
+ "course_id": number;
170
+ "name": string;
171
+ "code"?: string;
172
+ "classroom_type_id"?: number;
173
+ "school_grade_id"?: number;
174
+ "teacher_user_id"?: string;
175
+ "consultant_user_id"?: string;
176
+ "capacity"?: number;
177
+ "starts_at"?: string;
178
+ "ends_at"?: string;
179
+ "status": string;
180
+ "created_at": string;
181
+ "updated_at": string;
182
+ }
183
+ export interface ClassroomShowClassroomGetResponse extends ApiEnvelope<ClassroomShowClassroomGetResponseData> {
184
+ }
185
+ /** Backend request type: models::UpdateClassroomRequest. */
186
+ export interface ClassroomUpdateClassroomPatchInput extends JsonObject {
187
+ "course_id"?: number;
188
+ "name"?: string;
189
+ "code"?: string;
190
+ "classroom_type_id"?: number;
191
+ "school_grade_id"?: number;
192
+ "teacher_user_id"?: string;
193
+ "consultant_user_id"?: string;
194
+ "capacity"?: number;
195
+ "starts_at"?: string;
196
+ "ends_at"?: string;
197
+ "status"?: string;
198
+ }
199
+ /** Backend response type: models::ClassroomResponse. */
200
+ export interface ClassroomUpdateClassroomPatchResponseData extends JsonObject {
201
+ "id": number;
202
+ "course_id": number;
203
+ "name": string;
204
+ "code"?: string;
205
+ "classroom_type_id"?: number;
206
+ "school_grade_id"?: number;
207
+ "teacher_user_id"?: string;
208
+ "consultant_user_id"?: string;
209
+ "capacity"?: number;
210
+ "starts_at"?: string;
211
+ "ends_at"?: string;
212
+ "status": string;
213
+ "created_at": string;
214
+ "updated_at": string;
215
+ }
216
+ export interface ClassroomUpdateClassroomPatchResponse extends ApiEnvelope<ClassroomUpdateClassroomPatchResponseData> {
217
+ }
218
+ /** Backend query type: PaginationQuery. */
219
+ export interface ClassroomIndexClassroomUsersGetQuery extends QueryParams {
220
+ "page[number]"?: number;
221
+ "page[size]"?: number;
222
+ }
223
+ /** Backend response type: crate::models::PagedResult<models::ClassroomUserResponse>. */
224
+ export interface ClassroomIndexClassroomUsersGetResponseItem extends JsonObject {
225
+ "id": number;
226
+ "classroom_id": number;
227
+ "user_id": string;
228
+ "score"?: number;
229
+ "status": string;
230
+ "created_at": string;
231
+ "updated_at": string;
232
+ }
233
+ export interface ClassroomIndexClassroomUsersGetResponsePageMeta extends JsonObject {
234
+ "page": number;
235
+ "page_size": number;
236
+ "total_items": number;
237
+ "total_pages": number;
238
+ }
239
+ export interface ClassroomIndexClassroomUsersGetResponseData extends JsonObject {
240
+ "data": ClassroomIndexClassroomUsersGetResponseItem[];
241
+ "meta": ClassroomIndexClassroomUsersGetResponsePageMeta;
242
+ }
243
+ export interface ClassroomIndexClassroomUsersGetResponse extends ApiEnvelope<ClassroomIndexClassroomUsersGetResponseData> {
244
+ }
245
+ /** Backend request type: models::EnrollClassroomUserRequest. */
246
+ export interface ClassroomEnrollClassroomUserPostInput extends JsonObject {
247
+ "user_id": string;
248
+ "score"?: number;
249
+ "status"?: string;
250
+ }
251
+ /** Backend response type: models::ClassroomUserResponse. */
252
+ export interface ClassroomEnrollClassroomUserPostResponseData extends JsonObject {
253
+ "id": number;
254
+ "classroom_id": number;
255
+ "user_id": string;
256
+ "score"?: number;
257
+ "status": string;
258
+ "created_at": string;
259
+ "updated_at": string;
260
+ }
261
+ export interface ClassroomEnrollClassroomUserPostResponse extends ApiEnvelope<ClassroomEnrollClassroomUserPostResponseData> {
262
+ }
263
+ /** Backend response type: (). */
264
+ export interface ClassroomRemoveClassroomUserDeleteResponse extends ApiEnvelope<JsonObject> {
265
+ }
266
+ /** Backend request type: models::UpdateClassroomUserRequest. */
267
+ export interface ClassroomUpdateClassroomUserPatchInput extends JsonObject {
268
+ "score"?: number;
269
+ "status"?: string;
270
+ }
271
+ /** Backend response type: models::ClassroomUserResponse. */
272
+ export interface ClassroomUpdateClassroomUserPatchResponseData extends JsonObject {
273
+ "id": number;
274
+ "classroom_id": number;
275
+ "user_id": string;
276
+ "score"?: number;
277
+ "status": string;
278
+ "created_at": string;
279
+ "updated_at": string;
280
+ }
281
+ export interface ClassroomUpdateClassroomUserPatchResponse extends ApiEnvelope<ClassroomUpdateClassroomUserPatchResponseData> {
282
+ }
283
+ /** Backend query type: PaginationQuery. */
284
+ export interface ClassroomIndexSessionGetQuery extends QueryParams {
285
+ "page[number]"?: number;
286
+ "page[size]"?: number;
287
+ }
288
+ /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
289
+ export interface ClassroomIndexSessionGetResponseItem extends JsonObject {
290
+ "id": number;
291
+ "classroom_id": number;
292
+ "course_session_id"?: number;
293
+ "name"?: string;
294
+ "starts_at"?: string;
295
+ "ends_at"?: string;
296
+ "status": string;
297
+ "created_at": string;
298
+ "updated_at": string;
299
+ }
300
+ export interface ClassroomIndexSessionGetResponsePageMeta extends JsonObject {
301
+ "page": number;
302
+ "page_size": number;
303
+ "total_items": number;
304
+ "total_pages": number;
305
+ }
306
+ export interface ClassroomIndexSessionGetResponseData extends JsonObject {
307
+ "data": ClassroomIndexSessionGetResponseItem[];
308
+ "meta": ClassroomIndexSessionGetResponsePageMeta;
309
+ }
310
+ export interface ClassroomIndexSessionGetResponse extends ApiEnvelope<ClassroomIndexSessionGetResponseData> {
311
+ }
312
+ /** Backend request type: models::CreateSessionRequest. */
313
+ export interface ClassroomStoreSessionPostInput extends JsonObject {
314
+ "classroom_id": number;
315
+ "course_session_id"?: number;
316
+ "name"?: string;
317
+ "starts_at"?: string;
318
+ "ends_at"?: string;
319
+ "status": string;
320
+ }
321
+ /** Backend response type: models::SessionResponse. */
322
+ export interface ClassroomStoreSessionPostResponseData extends JsonObject {
323
+ "id": number;
324
+ "classroom_id": number;
325
+ "course_session_id"?: number;
326
+ "name"?: string;
327
+ "starts_at"?: string;
328
+ "ends_at"?: string;
329
+ "status": string;
330
+ "created_at": string;
331
+ "updated_at": string;
332
+ }
333
+ export interface ClassroomStoreSessionPostResponse extends ApiEnvelope<ClassroomStoreSessionPostResponseData> {
334
+ }
335
+ /** Backend response type: models::SessionResponse. */
336
+ export interface ClassroomShowSessionGetResponseData extends JsonObject {
337
+ "id": number;
338
+ "classroom_id": number;
339
+ "course_session_id"?: number;
340
+ "name"?: string;
341
+ "starts_at"?: string;
342
+ "ends_at"?: string;
343
+ "status": string;
344
+ "created_at": string;
345
+ "updated_at": string;
346
+ }
347
+ export interface ClassroomShowSessionGetResponse extends ApiEnvelope<ClassroomShowSessionGetResponseData> {
348
+ }
349
+ /** Backend request type: models::UpdateSessionRequest. */
350
+ export interface ClassroomUpdateSessionPatchInput extends JsonObject {
351
+ "classroom_id"?: number;
352
+ "course_session_id"?: number;
353
+ "name"?: string;
354
+ "starts_at"?: string;
355
+ "ends_at"?: string;
356
+ "status"?: string;
357
+ }
358
+ /** Backend response type: models::SessionResponse. */
359
+ export interface ClassroomUpdateSessionPatchResponseData extends JsonObject {
360
+ "id": number;
361
+ "classroom_id": number;
362
+ "course_session_id"?: number;
363
+ "name"?: string;
364
+ "starts_at"?: string;
365
+ "ends_at"?: string;
366
+ "status": string;
367
+ "created_at": string;
368
+ "updated_at": string;
369
+ }
370
+ export interface ClassroomUpdateSessionPatchResponse extends ApiEnvelope<ClassroomUpdateSessionPatchResponseData> {
371
+ }
372
+ /** Backend query type: PaginationQuery. */
373
+ export interface ClassroomIndexAbsencesGetQuery extends QueryParams {
374
+ "page[number]"?: number;
375
+ "page[size]"?: number;
376
+ }
377
+ /** Backend response type: crate::models::PagedResult<models::AbsenceResponse>. */
378
+ export interface ClassroomIndexAbsencesGetResponseItem extends JsonObject {
379
+ "id": number;
380
+ "classroom_session_id": number;
381
+ "user_id": string;
382
+ "status": string;
383
+ "absence_reason"?: string;
384
+ "created_at": string;
385
+ }
386
+ export interface ClassroomIndexAbsencesGetResponsePageMeta extends JsonObject {
387
+ "page": number;
388
+ "page_size": number;
389
+ "total_items": number;
390
+ "total_pages": number;
391
+ }
392
+ export interface ClassroomIndexAbsencesGetResponseData extends JsonObject {
393
+ "data": ClassroomIndexAbsencesGetResponseItem[];
394
+ "meta": ClassroomIndexAbsencesGetResponsePageMeta;
395
+ }
396
+ export interface ClassroomIndexAbsencesGetResponse extends ApiEnvelope<ClassroomIndexAbsencesGetResponseData> {
397
+ }
398
+ /** Backend query type: PaginationQuery. */
399
+ export interface OpsIndexClubProjectGetQuery extends QueryParams {
400
+ "page[number]"?: number;
401
+ "page[size]"?: number;
402
+ }
403
+ /** Backend response type: crate::models::PagedResult<models::ClubProjectResponse>. */
404
+ export interface OpsIndexClubProjectGetResponseItem extends JsonObject {
405
+ "id": number;
406
+ "name": string;
407
+ "description"?: string;
408
+ "owner_user_id"?: string;
409
+ "status": string;
410
+ "created_at": string;
411
+ }
412
+ export interface OpsIndexClubProjectGetResponsePageMeta extends JsonObject {
413
+ "page": number;
414
+ "page_size": number;
415
+ "total_items": number;
416
+ "total_pages": number;
417
+ }
418
+ export interface OpsIndexClubProjectGetResponseData extends JsonObject {
419
+ "data": OpsIndexClubProjectGetResponseItem[];
420
+ "meta": OpsIndexClubProjectGetResponsePageMeta;
421
+ }
422
+ export interface OpsIndexClubProjectGetResponse extends ApiEnvelope<OpsIndexClubProjectGetResponseData> {
423
+ }
424
+ /** Backend request type: models::CreateClubProjectRequest. */
425
+ export interface OpsStoreClubProjectPostInput extends JsonObject {
426
+ "name": string;
427
+ "description"?: string;
428
+ "owner_user_id"?: string;
429
+ "status": string;
430
+ }
431
+ /** Backend response type: models::ClubProjectResponse. */
432
+ export interface OpsStoreClubProjectPostResponseData extends JsonObject {
433
+ "id": number;
434
+ "name": string;
435
+ "description"?: string;
436
+ "owner_user_id"?: string;
437
+ "status": string;
438
+ "created_at": string;
439
+ }
440
+ export interface OpsStoreClubProjectPostResponse extends ApiEnvelope<OpsStoreClubProjectPostResponseData> {
441
+ }
442
+ /** Backend response type: models::ClubProjectResponse. */
443
+ export interface OpsShowClubProjectGetResponseData extends JsonObject {
444
+ "id": number;
445
+ "name": string;
446
+ "description"?: string;
447
+ "owner_user_id"?: string;
448
+ "status": string;
449
+ "created_at": string;
450
+ }
451
+ export interface OpsShowClubProjectGetResponse extends ApiEnvelope<OpsShowClubProjectGetResponseData> {
452
+ }
453
+ /** Backend request type: models::UpdateClubProjectRequest. */
454
+ export interface OpsUpdateClubProjectPatchInput extends JsonObject {
455
+ "name"?: string;
456
+ "description"?: string;
457
+ "owner_user_id"?: string;
458
+ "status"?: string;
459
+ }
460
+ /** Backend response type: models::ClubProjectResponse. */
461
+ export interface OpsUpdateClubProjectPatchResponseData extends JsonObject {
462
+ "id": number;
463
+ "name": string;
464
+ "description"?: string;
465
+ "owner_user_id"?: string;
466
+ "status": string;
467
+ "created_at": string;
468
+ }
469
+ export interface OpsUpdateClubProjectPatchResponse extends ApiEnvelope<OpsUpdateClubProjectPatchResponseData> {
470
+ }
471
+ /** Backend query type: PaginationQuery. */
472
+ export interface ConfigIndexClassroomTypeGetQuery extends QueryParams {
473
+ "page[number]"?: number;
474
+ "page[size]"?: number;
475
+ }
476
+ /** Backend response type: crate::models::PagedResult<models::ClassroomTypeResponse>. */
477
+ export interface ConfigIndexClassroomTypeGetResponseItem extends JsonObject {
478
+ "id": number;
479
+ "name": string;
480
+ "created_at": string;
481
+ }
482
+ export interface ConfigIndexClassroomTypeGetResponsePageMeta extends JsonObject {
483
+ "page": number;
484
+ "page_size": number;
485
+ "total_items": number;
486
+ "total_pages": number;
487
+ }
488
+ export interface ConfigIndexClassroomTypeGetResponseData extends JsonObject {
489
+ "data": ConfigIndexClassroomTypeGetResponseItem[];
490
+ "meta": ConfigIndexClassroomTypeGetResponsePageMeta;
491
+ }
492
+ export interface ConfigIndexClassroomTypeGetResponse extends ApiEnvelope<ConfigIndexClassroomTypeGetResponseData> {
493
+ }
494
+ /** Backend request type: models::CreateClassroomTypeRequest. */
495
+ export interface ConfigStoreClassroomTypePostInput extends JsonObject {
496
+ "name": string;
497
+ }
498
+ /** Backend response type: models::ClassroomTypeResponse. */
499
+ export interface ConfigStoreClassroomTypePostResponseData extends JsonObject {
500
+ "id": number;
501
+ "name": string;
502
+ "created_at": string;
503
+ }
504
+ export interface ConfigStoreClassroomTypePostResponse extends ApiEnvelope<ConfigStoreClassroomTypePostResponseData> {
505
+ }
506
+ /** Backend response type: models::ClassroomTypeResponse. */
507
+ export interface ConfigShowClassroomTypeGetResponseData extends JsonObject {
508
+ "id": number;
509
+ "name": string;
510
+ "created_at": string;
511
+ }
512
+ export interface ConfigShowClassroomTypeGetResponse extends ApiEnvelope<ConfigShowClassroomTypeGetResponseData> {
513
+ }
514
+ /** Backend request type: models::UpdateClassroomTypeRequest. */
515
+ export interface ConfigUpdateClassroomTypePatchInput extends JsonObject {
516
+ "name"?: string;
517
+ }
518
+ /** Backend response type: models::ClassroomTypeResponse. */
519
+ export interface ConfigUpdateClassroomTypePatchResponseData extends JsonObject {
520
+ "id": number;
521
+ "name": string;
522
+ "created_at": string;
523
+ }
524
+ export interface ConfigUpdateClassroomTypePatchResponse extends ApiEnvelope<ConfigUpdateClassroomTypePatchResponseData> {
525
+ }
526
+ /** Backend query type: PaginationQuery. */
527
+ export interface ConfigIndexEducationDayGetQuery extends QueryParams {
528
+ "page[number]"?: number;
529
+ "page[size]"?: number;
530
+ }
531
+ /** Backend response type: crate::models::PagedResult<models::EducationDayResponse>. */
532
+ export interface ConfigIndexEducationDayGetResponseItem extends JsonObject {
533
+ "id": number;
534
+ "day_date": string;
535
+ "is_holiday": boolean;
536
+ "label"?: string;
537
+ "created_at": string;
538
+ }
539
+ export interface ConfigIndexEducationDayGetResponsePageMeta extends JsonObject {
540
+ "page": number;
541
+ "page_size": number;
542
+ "total_items": number;
543
+ "total_pages": number;
544
+ }
545
+ export interface ConfigIndexEducationDayGetResponseData extends JsonObject {
546
+ "data": ConfigIndexEducationDayGetResponseItem[];
547
+ "meta": ConfigIndexEducationDayGetResponsePageMeta;
548
+ }
549
+ export interface ConfigIndexEducationDayGetResponse extends ApiEnvelope<ConfigIndexEducationDayGetResponseData> {
550
+ }
551
+ /** Backend request type: models::CreateEducationDayRequest. */
552
+ export interface ConfigStoreEducationDayPostInput extends JsonObject {
553
+ "day_date": string;
554
+ "is_holiday": boolean;
555
+ "label"?: string;
556
+ }
557
+ /** Backend response type: models::EducationDayResponse. */
558
+ export interface ConfigStoreEducationDayPostResponseData extends JsonObject {
559
+ "id": number;
560
+ "day_date": string;
561
+ "is_holiday": boolean;
562
+ "label"?: string;
563
+ "created_at": string;
564
+ }
565
+ export interface ConfigStoreEducationDayPostResponse extends ApiEnvelope<ConfigStoreEducationDayPostResponseData> {
566
+ }
567
+ /** Backend response type: models::EducationDayResponse. */
568
+ export interface ConfigShowEducationDayGetResponseData extends JsonObject {
569
+ "id": number;
570
+ "day_date": string;
571
+ "is_holiday": boolean;
572
+ "label"?: string;
573
+ "created_at": string;
574
+ }
575
+ export interface ConfigShowEducationDayGetResponse extends ApiEnvelope<ConfigShowEducationDayGetResponseData> {
576
+ }
577
+ /** Backend request type: models::UpdateEducationDayRequest. */
578
+ export interface ConfigUpdateEducationDayPatchInput extends JsonObject {
579
+ "day_date"?: string;
580
+ "is_holiday"?: boolean;
581
+ "label"?: string;
582
+ }
583
+ /** Backend response type: models::EducationDayResponse. */
584
+ export interface ConfigUpdateEducationDayPatchResponseData extends JsonObject {
585
+ "id": number;
586
+ "day_date": string;
587
+ "is_holiday": boolean;
588
+ "label"?: string;
589
+ "created_at": string;
590
+ }
591
+ export interface ConfigUpdateEducationDayPatchResponse extends ApiEnvelope<ConfigUpdateEducationDayPatchResponseData> {
592
+ }
593
+ /** Backend query type: PaginationQuery. */
594
+ export interface ConfigIndexGradeGetQuery extends QueryParams {
595
+ "page[number]"?: number;
596
+ "page[size]"?: number;
597
+ }
598
+ /** Backend response type: crate::models::PagedResult<models::GradeResponse>. */
599
+ export interface ConfigIndexGradeGetResponseItem extends JsonObject {
600
+ "id": number;
601
+ "name": string;
602
+ "sort_order": number;
603
+ "created_at": string;
604
+ }
605
+ export interface ConfigIndexGradeGetResponsePageMeta extends JsonObject {
606
+ "page": number;
607
+ "page_size": number;
608
+ "total_items": number;
609
+ "total_pages": number;
610
+ }
611
+ export interface ConfigIndexGradeGetResponseData extends JsonObject {
612
+ "data": ConfigIndexGradeGetResponseItem[];
613
+ "meta": ConfigIndexGradeGetResponsePageMeta;
614
+ }
615
+ export interface ConfigIndexGradeGetResponse extends ApiEnvelope<ConfigIndexGradeGetResponseData> {
616
+ }
617
+ /** Backend request type: models::CreateGradeRequest. */
618
+ export interface ConfigStoreGradePostInput extends JsonObject {
619
+ "name": string;
620
+ "sort_order": number;
621
+ }
622
+ /** Backend response type: models::GradeResponse. */
623
+ export interface ConfigStoreGradePostResponseData extends JsonObject {
624
+ "id": number;
625
+ "name": string;
626
+ "sort_order": number;
627
+ "created_at": string;
628
+ }
629
+ export interface ConfigStoreGradePostResponse extends ApiEnvelope<ConfigStoreGradePostResponseData> {
630
+ }
631
+ /** Backend response type: models::GradeResponse. */
632
+ export interface ConfigShowGradeGetResponseData extends JsonObject {
633
+ "id": number;
634
+ "name": string;
635
+ "sort_order": number;
636
+ "created_at": string;
637
+ }
638
+ export interface ConfigShowGradeGetResponse extends ApiEnvelope<ConfigShowGradeGetResponseData> {
639
+ }
640
+ /** Backend request type: models::UpdateGradeRequest. */
641
+ export interface ConfigUpdateGradePatchInput extends JsonObject {
642
+ "name"?: string;
643
+ "sort_order"?: number;
644
+ }
645
+ /** Backend response type: models::GradeResponse. */
646
+ export interface ConfigUpdateGradePatchResponseData extends JsonObject {
647
+ "id": number;
648
+ "name": string;
649
+ "sort_order": number;
650
+ "created_at": string;
651
+ }
652
+ export interface ConfigUpdateGradePatchResponse extends ApiEnvelope<ConfigUpdateGradePatchResponseData> {
653
+ }
654
+ /** Backend query type: PaginationQuery. */
655
+ export interface ConfigIndexTextTemplateGetQuery extends QueryParams {
656
+ "page[number]"?: number;
657
+ "page[size]"?: number;
658
+ }
659
+ /** Backend response type: crate::models::PagedResult<models::TextTemplateResponse>. */
660
+ export interface ConfigIndexTextTemplateGetResponseItem extends JsonObject {
661
+ "id": number;
662
+ "name": string;
663
+ "body": string;
664
+ "template_type": string;
665
+ "created_at": string;
666
+ }
667
+ export interface ConfigIndexTextTemplateGetResponsePageMeta extends JsonObject {
668
+ "page": number;
669
+ "page_size": number;
670
+ "total_items": number;
671
+ "total_pages": number;
672
+ }
673
+ export interface ConfigIndexTextTemplateGetResponseData extends JsonObject {
674
+ "data": ConfigIndexTextTemplateGetResponseItem[];
675
+ "meta": ConfigIndexTextTemplateGetResponsePageMeta;
676
+ }
677
+ export interface ConfigIndexTextTemplateGetResponse extends ApiEnvelope<ConfigIndexTextTemplateGetResponseData> {
678
+ }
679
+ /** Backend request type: models::CreateTextTemplateRequest. */
680
+ export interface ConfigStoreTextTemplatePostInput extends JsonObject {
681
+ "name": string;
682
+ "body": string;
683
+ "template_type": string;
684
+ }
685
+ /** Backend response type: models::TextTemplateResponse. */
686
+ export interface ConfigStoreTextTemplatePostResponseData extends JsonObject {
687
+ "id": number;
688
+ "name": string;
689
+ "body": string;
690
+ "template_type": string;
691
+ "created_at": string;
692
+ }
693
+ export interface ConfigStoreTextTemplatePostResponse extends ApiEnvelope<ConfigStoreTextTemplatePostResponseData> {
694
+ }
695
+ /** Backend response type: models::TextTemplateResponse. */
696
+ export interface ConfigShowTextTemplateGetResponseData extends JsonObject {
697
+ "id": number;
698
+ "name": string;
699
+ "body": string;
700
+ "template_type": string;
701
+ "created_at": string;
702
+ }
703
+ export interface ConfigShowTextTemplateGetResponse extends ApiEnvelope<ConfigShowTextTemplateGetResponseData> {
704
+ }
705
+ /** Backend request type: models::UpdateTextTemplateRequest. */
706
+ export interface ConfigUpdateTextTemplatePatchInput extends JsonObject {
707
+ "name"?: string;
708
+ "body"?: string;
709
+ "template_type"?: string;
710
+ }
711
+ /** Backend response type: models::TextTemplateResponse. */
712
+ export interface ConfigUpdateTextTemplatePatchResponseData extends JsonObject {
713
+ "id": number;
714
+ "name": string;
715
+ "body": string;
716
+ "template_type": string;
717
+ "created_at": string;
718
+ }
719
+ export interface ConfigUpdateTextTemplatePatchResponse extends ApiEnvelope<ConfigUpdateTextTemplatePatchResponseData> {
720
+ }
721
+ /** Backend query type: PaginationQuery. */
722
+ export interface ConfigIndexWeekendGetQuery extends QueryParams {
723
+ "page[number]"?: number;
724
+ "page[size]"?: number;
725
+ }
726
+ /** Backend response type: crate::models::PagedResult<models::WeekendResponse>. */
727
+ export interface ConfigIndexWeekendGetResponseItem extends JsonObject {
728
+ "id": number;
729
+ "day_of_week": number;
730
+ "created_at": string;
731
+ }
732
+ export interface ConfigIndexWeekendGetResponsePageMeta extends JsonObject {
733
+ "page": number;
734
+ "page_size": number;
735
+ "total_items": number;
736
+ "total_pages": number;
737
+ }
738
+ export interface ConfigIndexWeekendGetResponseData extends JsonObject {
739
+ "data": ConfigIndexWeekendGetResponseItem[];
740
+ "meta": ConfigIndexWeekendGetResponsePageMeta;
741
+ }
742
+ export interface ConfigIndexWeekendGetResponse extends ApiEnvelope<ConfigIndexWeekendGetResponseData> {
743
+ }
744
+ /** Backend request type: models::CreateWeekendRequest. */
745
+ export interface ConfigStoreWeekendPostInput extends JsonObject {
746
+ "day_of_week": number;
747
+ }
748
+ /** Backend response type: models::WeekendResponse. */
749
+ export interface ConfigStoreWeekendPostResponseData extends JsonObject {
750
+ "id": number;
751
+ "day_of_week": number;
752
+ "created_at": string;
753
+ }
754
+ export interface ConfigStoreWeekendPostResponse extends ApiEnvelope<ConfigStoreWeekendPostResponseData> {
755
+ }
756
+ /** Backend response type: models::WeekendResponse. */
757
+ export interface ConfigShowWeekendGetResponseData extends JsonObject {
758
+ "id": number;
759
+ "day_of_week": number;
760
+ "created_at": string;
761
+ }
762
+ export interface ConfigShowWeekendGetResponse extends ApiEnvelope<ConfigShowWeekendGetResponseData> {
763
+ }
764
+ /** Backend request type: models::UpdateWeekendRequest. */
765
+ export interface ConfigUpdateWeekendPatchInput extends JsonObject {
766
+ "day_of_week"?: number;
767
+ }
768
+ /** Backend response type: models::WeekendResponse. */
769
+ export interface ConfigUpdateWeekendPatchResponseData extends JsonObject {
770
+ "id": number;
771
+ "day_of_week": number;
772
+ "created_at": string;
773
+ }
774
+ export interface ConfigUpdateWeekendPatchResponse extends ApiEnvelope<ConfigUpdateWeekendPatchResponseData> {
775
+ }
776
+ /** Backend query type: PaginationQuery. */
777
+ export interface CourseIndexCourseGetQuery extends QueryParams {
778
+ "page[number]"?: number;
779
+ "page[size]"?: number;
780
+ }
781
+ /** Backend response type: crate::models::PagedResult<models::CourseResponse>. */
782
+ export interface CourseIndexCourseGetResponseItem extends JsonObject {
783
+ "id": number;
784
+ "category_id"?: number;
785
+ "name": string;
786
+ "title"?: string;
787
+ "description"?: string;
788
+ "duration"?: string;
789
+ "passing_mark"?: number;
790
+ "price"?: string;
791
+ "status": string;
792
+ "created_at": string;
793
+ "updated_at": string;
794
+ }
795
+ export interface CourseIndexCourseGetResponsePageMeta extends JsonObject {
796
+ "page": number;
797
+ "page_size": number;
798
+ "total_items": number;
799
+ "total_pages": number;
800
+ }
801
+ export interface CourseIndexCourseGetResponseData extends JsonObject {
802
+ "data": CourseIndexCourseGetResponseItem[];
803
+ "meta": CourseIndexCourseGetResponsePageMeta;
804
+ }
805
+ export interface CourseIndexCourseGetResponse extends ApiEnvelope<CourseIndexCourseGetResponseData> {
806
+ }
807
+ /** Backend request type: models::CreateCourseRequest. */
808
+ export interface CourseStoreCoursePostInput extends JsonObject {
809
+ "category_id"?: number;
810
+ "name": string;
811
+ "title"?: string;
812
+ "description"?: string;
813
+ "duration"?: string;
814
+ "passing_mark"?: number;
815
+ "price"?: string;
816
+ "status": string;
817
+ }
818
+ /** Backend response type: models::CourseResponse. */
819
+ export interface CourseStoreCoursePostResponseData extends JsonObject {
820
+ "id": number;
821
+ "category_id"?: number;
822
+ "name": string;
823
+ "title"?: string;
824
+ "description"?: string;
825
+ "duration"?: string;
826
+ "passing_mark"?: number;
827
+ "price"?: string;
828
+ "status": string;
829
+ "created_at": string;
830
+ "updated_at": string;
831
+ }
832
+ export interface CourseStoreCoursePostResponse extends ApiEnvelope<CourseStoreCoursePostResponseData> {
833
+ }
834
+ /** Backend query type: PaginationQuery. */
835
+ export interface CourseIndexSessionGetQuery extends QueryParams {
836
+ "page[number]"?: number;
837
+ "page[size]"?: number;
838
+ }
839
+ /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
840
+ export interface CourseIndexSessionGetResponseItem extends JsonObject {
841
+ "id": number;
842
+ "course_id": number;
843
+ "name": string;
844
+ "description"?: string;
845
+ "sort_order": number;
846
+ "session_type": string;
847
+ "duration_minutes"?: number;
848
+ "auto_unlock": boolean;
849
+ "status": string;
850
+ "created_at": string;
851
+ "updated_at": string;
852
+ }
853
+ export interface CourseIndexSessionGetResponsePageMeta extends JsonObject {
854
+ "page": number;
855
+ "page_size": number;
856
+ "total_items": number;
857
+ "total_pages": number;
858
+ }
859
+ export interface CourseIndexSessionGetResponseData extends JsonObject {
860
+ "data": CourseIndexSessionGetResponseItem[];
861
+ "meta": CourseIndexSessionGetResponsePageMeta;
862
+ }
863
+ export interface CourseIndexSessionGetResponse extends ApiEnvelope<CourseIndexSessionGetResponseData> {
864
+ }
865
+ /** Backend request type: models::CreateSessionRequest. */
866
+ export interface CourseStoreSessionPostInput extends JsonObject {
867
+ "course_id": number;
868
+ "name": string;
869
+ "description"?: string;
870
+ "sort_order": number;
871
+ "session_type": string;
872
+ "duration_minutes"?: number;
873
+ "auto_unlock": boolean;
874
+ "status": string;
875
+ }
876
+ /** Backend response type: models::SessionResponse. */
877
+ export interface CourseStoreSessionPostResponseData extends JsonObject {
878
+ "id": number;
879
+ "course_id": number;
880
+ "name": string;
881
+ "description"?: string;
882
+ "sort_order": number;
883
+ "session_type": string;
884
+ "duration_minutes"?: number;
885
+ "auto_unlock": boolean;
886
+ "status": string;
887
+ "created_at": string;
888
+ "updated_at": string;
889
+ }
890
+ export interface CourseStoreSessionPostResponse extends ApiEnvelope<CourseStoreSessionPostResponseData> {
891
+ }
892
+ /** Backend response type: models::SessionResponse. */
893
+ export interface CourseShowSessionGetResponseData extends JsonObject {
894
+ "id": number;
895
+ "course_id": number;
896
+ "name": string;
897
+ "description"?: string;
898
+ "sort_order": number;
899
+ "session_type": string;
900
+ "duration_minutes"?: number;
901
+ "auto_unlock": boolean;
902
+ "status": string;
903
+ "created_at": string;
904
+ "updated_at": string;
905
+ }
906
+ export interface CourseShowSessionGetResponse extends ApiEnvelope<CourseShowSessionGetResponseData> {
907
+ }
908
+ /** Backend request type: models::UpdateSessionRequest. */
909
+ export interface CourseUpdateSessionPatchInput extends JsonObject {
910
+ "name"?: string;
911
+ "description"?: string;
912
+ "sort_order"?: number;
913
+ "session_type"?: string;
914
+ "duration_minutes"?: number;
915
+ "auto_unlock"?: boolean;
916
+ "status"?: string;
917
+ }
918
+ /** Backend response type: models::SessionResponse. */
919
+ export interface CourseUpdateSessionPatchResponseData extends JsonObject {
920
+ "id": number;
921
+ "course_id": number;
922
+ "name": string;
923
+ "description"?: string;
924
+ "sort_order": number;
925
+ "session_type": string;
926
+ "duration_minutes"?: number;
927
+ "auto_unlock": boolean;
928
+ "status": string;
929
+ "created_at": string;
930
+ "updated_at": string;
931
+ }
932
+ export interface CourseUpdateSessionPatchResponse extends ApiEnvelope<CourseUpdateSessionPatchResponseData> {
933
+ }
934
+ /** Backend response type: models::CourseResponse. */
935
+ export interface CourseShowCourseGetResponseData extends JsonObject {
936
+ "id": number;
937
+ "category_id"?: number;
938
+ "name": string;
939
+ "title"?: string;
940
+ "description"?: string;
941
+ "duration"?: string;
942
+ "passing_mark"?: number;
943
+ "price"?: string;
944
+ "status": string;
945
+ "created_at": string;
946
+ "updated_at": string;
947
+ }
948
+ export interface CourseShowCourseGetResponse extends ApiEnvelope<CourseShowCourseGetResponseData> {
949
+ }
950
+ /** Backend request type: models::UpdateCourseRequest. */
951
+ export interface CourseUpdateCoursePatchInput extends JsonObject {
952
+ "category_id"?: number;
953
+ "name"?: string;
954
+ "title"?: string;
955
+ "description"?: string;
956
+ "duration"?: string;
957
+ "passing_mark"?: number;
958
+ "price"?: string;
959
+ "status"?: string;
960
+ }
961
+ /** Backend response type: models::CourseResponse. */
962
+ export interface CourseUpdateCoursePatchResponseData extends JsonObject {
963
+ "id": number;
964
+ "category_id"?: number;
965
+ "name": string;
966
+ "title"?: string;
967
+ "description"?: string;
968
+ "duration"?: string;
969
+ "passing_mark"?: number;
970
+ "price"?: string;
971
+ "status": string;
972
+ "created_at": string;
973
+ "updated_at": string;
974
+ }
975
+ export interface CourseUpdateCoursePatchResponse extends ApiEnvelope<CourseUpdateCoursePatchResponseData> {
976
+ }
977
+ /** Backend query type: PaginationQuery. */
978
+ export interface CourseIndexCategoryGetQuery extends QueryParams {
979
+ "page[number]"?: number;
980
+ "page[size]"?: number;
981
+ }
982
+ /** Backend response type: crate::models::PagedResult<models::CategoryResponse>. */
983
+ export interface CourseIndexCategoryGetResponseItem extends JsonObject {
984
+ "id": number;
985
+ "name": string;
986
+ "description"?: string;
987
+ "sort_order": number;
988
+ "status": string;
989
+ "created_at": string;
990
+ "updated_at": string;
991
+ }
992
+ export interface CourseIndexCategoryGetResponsePageMeta extends JsonObject {
993
+ "page": number;
994
+ "page_size": number;
995
+ "total_items": number;
996
+ "total_pages": number;
997
+ }
998
+ export interface CourseIndexCategoryGetResponseData extends JsonObject {
999
+ "data": CourseIndexCategoryGetResponseItem[];
1000
+ "meta": CourseIndexCategoryGetResponsePageMeta;
1001
+ }
1002
+ export interface CourseIndexCategoryGetResponse extends ApiEnvelope<CourseIndexCategoryGetResponseData> {
1003
+ }
1004
+ /** Backend request type: models::CreateCategoryRequest. */
1005
+ export interface CourseStoreCategoryPostInput extends JsonObject {
1006
+ "name": string;
1007
+ "description"?: string;
1008
+ "sort_order": number;
1009
+ "status": string;
1010
+ }
1011
+ /** Backend response type: models::CategoryResponse. */
1012
+ export interface CourseStoreCategoryPostResponseData extends JsonObject {
1013
+ "id": number;
1014
+ "name": string;
1015
+ "description"?: string;
1016
+ "sort_order": number;
1017
+ "status": string;
1018
+ "created_at": string;
1019
+ "updated_at": string;
1020
+ }
1021
+ export interface CourseStoreCategoryPostResponse extends ApiEnvelope<CourseStoreCategoryPostResponseData> {
1022
+ }
1023
+ /** Backend response type: models::CategoryResponse. */
1024
+ export interface CourseShowCategoryGetResponseData extends JsonObject {
1025
+ "id": number;
1026
+ "name": string;
1027
+ "description"?: string;
1028
+ "sort_order": number;
1029
+ "status": string;
1030
+ "created_at": string;
1031
+ "updated_at": string;
1032
+ }
1033
+ export interface CourseShowCategoryGetResponse extends ApiEnvelope<CourseShowCategoryGetResponseData> {
1034
+ }
1035
+ /** Backend request type: models::UpdateCategoryRequest. */
1036
+ export interface CourseUpdateCategoryPatchInput extends JsonObject {
1037
+ "name"?: string;
1038
+ "description"?: string;
1039
+ "sort_order"?: number;
1040
+ "status"?: string;
1041
+ }
1042
+ /** Backend response type: models::CategoryResponse. */
1043
+ export interface CourseUpdateCategoryPatchResponseData extends JsonObject {
1044
+ "id": number;
1045
+ "name": string;
1046
+ "description"?: string;
1047
+ "sort_order": number;
1048
+ "status": string;
1049
+ "created_at": string;
1050
+ "updated_at": string;
1051
+ }
1052
+ export interface CourseUpdateCategoryPatchResponse extends ApiEnvelope<CourseUpdateCategoryPatchResponseData> {
1053
+ }
1054
+ /** Backend query type: PaginationQuery. */
1055
+ export interface CourseIndexVideoSectionGetQuery extends QueryParams {
1056
+ "page[number]"?: number;
1057
+ "page[size]"?: number;
1058
+ }
1059
+ /** Backend response type: crate::models::PagedResult<models::VideoSectionResponse>. */
1060
+ export interface CourseIndexVideoSectionGetResponseItem extends JsonObject {
1061
+ "id": number;
1062
+ "course_id": number;
1063
+ "name": string;
1064
+ "sort_order": number;
1065
+ "media_url"?: string;
1066
+ "created_at": string;
1067
+ "updated_at": string;
1068
+ }
1069
+ export interface CourseIndexVideoSectionGetResponsePageMeta extends JsonObject {
1070
+ "page": number;
1071
+ "page_size": number;
1072
+ "total_items": number;
1073
+ "total_pages": number;
1074
+ }
1075
+ export interface CourseIndexVideoSectionGetResponseData extends JsonObject {
1076
+ "data": CourseIndexVideoSectionGetResponseItem[];
1077
+ "meta": CourseIndexVideoSectionGetResponsePageMeta;
1078
+ }
1079
+ export interface CourseIndexVideoSectionGetResponse extends ApiEnvelope<CourseIndexVideoSectionGetResponseData> {
1080
+ }
1081
+ /** Backend request type: models::CreateVideoSectionRequest. */
1082
+ export interface CourseStoreVideoSectionPostInput extends JsonObject {
1083
+ "course_id": number;
1084
+ "name": string;
1085
+ "sort_order": number;
1086
+ "media_url"?: string;
1087
+ }
1088
+ /** Backend response type: models::VideoSectionResponse. */
1089
+ export interface CourseStoreVideoSectionPostResponseData extends JsonObject {
1090
+ "id": number;
1091
+ "course_id": number;
1092
+ "name": string;
1093
+ "sort_order": number;
1094
+ "media_url"?: string;
1095
+ "created_at": string;
1096
+ "updated_at": string;
1097
+ }
1098
+ export interface CourseStoreVideoSectionPostResponse extends ApiEnvelope<CourseStoreVideoSectionPostResponseData> {
1099
+ }
1100
+ /** Backend response type: models::VideoSectionResponse. */
1101
+ export interface CourseShowVideoSectionGetResponseData extends JsonObject {
1102
+ "id": number;
1103
+ "course_id": number;
1104
+ "name": string;
1105
+ "sort_order": number;
1106
+ "media_url"?: string;
1107
+ "created_at": string;
1108
+ "updated_at": string;
1109
+ }
1110
+ export interface CourseShowVideoSectionGetResponse extends ApiEnvelope<CourseShowVideoSectionGetResponseData> {
1111
+ }
1112
+ /** Backend request type: models::UpdateVideoSectionRequest. */
1113
+ export interface CourseUpdateVideoSectionPatchInput extends JsonObject {
1114
+ "course_id"?: number;
1115
+ "name"?: string;
1116
+ "sort_order"?: number;
1117
+ "media_url"?: string;
1118
+ }
1119
+ /** Backend response type: models::VideoSectionResponse. */
1120
+ export interface CourseUpdateVideoSectionPatchResponseData extends JsonObject {
1121
+ "id": number;
1122
+ "course_id": number;
1123
+ "name": string;
1124
+ "sort_order": number;
1125
+ "media_url"?: string;
1126
+ "created_at": string;
1127
+ "updated_at": string;
1128
+ }
1129
+ export interface CourseUpdateVideoSectionPatchResponse extends ApiEnvelope<CourseUpdateVideoSectionPatchResponseData> {
1130
+ }
1131
+ /** Backend response type: models::DashboardStats. */
1132
+ export interface DashboardIndexGetResponseData extends JsonObject {
1133
+ "courses": number;
1134
+ "classrooms": number;
1135
+ "students": number;
1136
+ "pending_homework": number;
1137
+ "pending_exams": number;
1138
+ }
1139
+ export interface DashboardIndexGetResponse extends ApiEnvelope<DashboardIndexGetResponseData> {
1140
+ }
1141
+ /** Backend response type: models::IntegrationDocs. */
1142
+ export interface DocsIntegrationGetResponseData extends JsonObject {
1143
+ "service": string;
1144
+ "version": string;
1145
+ "profile_sync_event": string;
1146
+ "profile_sync_routing_key": string;
1147
+ "permissions_prefix": string;
1148
+ "api_base": string;
1149
+ }
1150
+ export interface DocsIntegrationGetResponse extends ApiEnvelope<DocsIntegrationGetResponseData> {
1151
+ }
1152
+ /** Backend query type: PaginationQuery. */
1153
+ export interface EventIndexEventGetQuery extends QueryParams {
1154
+ "page[number]"?: number;
1155
+ "page[size]"?: number;
1156
+ }
1157
+ /** Backend response type: crate::models::PagedResult<models::EventResponse>. */
1158
+ export interface EventIndexEventGetResponseItem extends JsonObject {
1159
+ "id": number;
1160
+ "event_type_id"?: number;
1161
+ "name": string;
1162
+ "description"?: string;
1163
+ "starts_at"?: string;
1164
+ "ends_at"?: string;
1165
+ "status": string;
1166
+ "created_at": string;
1167
+ "updated_at": string;
1168
+ }
1169
+ export interface EventIndexEventGetResponsePageMeta extends JsonObject {
1170
+ "page": number;
1171
+ "page_size": number;
1172
+ "total_items": number;
1173
+ "total_pages": number;
1174
+ }
1175
+ export interface EventIndexEventGetResponseData extends JsonObject {
1176
+ "data": EventIndexEventGetResponseItem[];
1177
+ "meta": EventIndexEventGetResponsePageMeta;
1178
+ }
1179
+ export interface EventIndexEventGetResponse extends ApiEnvelope<EventIndexEventGetResponseData> {
1180
+ }
1181
+ /** Backend request type: models::CreateEventRequest. */
1182
+ export interface EventStoreEventPostInput extends JsonObject {
1183
+ "event_type_id"?: number;
1184
+ "name": string;
1185
+ "description"?: string;
1186
+ "starts_at"?: string;
1187
+ "ends_at"?: string;
1188
+ "status": string;
1189
+ }
1190
+ /** Backend response type: models::EventResponse. */
1191
+ export interface EventStoreEventPostResponseData extends JsonObject {
1192
+ "id": number;
1193
+ "event_type_id"?: number;
1194
+ "name": string;
1195
+ "description"?: string;
1196
+ "starts_at"?: string;
1197
+ "ends_at"?: string;
1198
+ "status": string;
1199
+ "created_at": string;
1200
+ "updated_at": string;
1201
+ }
1202
+ export interface EventStoreEventPostResponse extends ApiEnvelope<EventStoreEventPostResponseData> {
1203
+ }
1204
+ /** Backend query type: PaginationQuery. */
1205
+ export interface EventIndexUserGetQuery extends QueryParams {
1206
+ "page[number]"?: number;
1207
+ "page[size]"?: number;
1208
+ }
1209
+ /** Backend response type: crate::models::PagedResult<models::UserResponse>. */
1210
+ export interface EventIndexUserGetResponseItem extends JsonObject {
1211
+ "id": number;
1212
+ "event_id": number;
1213
+ "user_id": string;
1214
+ "status": string;
1215
+ "created_at": string;
1216
+ }
1217
+ export interface EventIndexUserGetResponsePageMeta extends JsonObject {
1218
+ "page": number;
1219
+ "page_size": number;
1220
+ "total_items": number;
1221
+ "total_pages": number;
1222
+ }
1223
+ export interface EventIndexUserGetResponseData extends JsonObject {
1224
+ "data": EventIndexUserGetResponseItem[];
1225
+ "meta": EventIndexUserGetResponsePageMeta;
1226
+ }
1227
+ export interface EventIndexUserGetResponse extends ApiEnvelope<EventIndexUserGetResponseData> {
1228
+ }
1229
+ /** Backend request type: models::CreateUserRequest. */
1230
+ export interface EventStoreUserPostInput extends JsonObject {
1231
+ "event_id": number;
1232
+ "user_id": string;
1233
+ "status": string;
1234
+ }
1235
+ /** Backend response type: models::UserResponse. */
1236
+ export interface EventStoreUserPostResponseData extends JsonObject {
1237
+ "id": number;
1238
+ "event_id": number;
1239
+ "user_id": string;
1240
+ "status": string;
1241
+ "created_at": string;
1242
+ }
1243
+ export interface EventStoreUserPostResponse extends ApiEnvelope<EventStoreUserPostResponseData> {
1244
+ }
1245
+ /** Backend response type: models::UserResponse. */
1246
+ export interface EventShowUserGetResponseData extends JsonObject {
1247
+ "id": number;
1248
+ "event_id": number;
1249
+ "user_id": string;
1250
+ "status": string;
1251
+ "created_at": string;
1252
+ }
1253
+ export interface EventShowUserGetResponse extends ApiEnvelope<EventShowUserGetResponseData> {
1254
+ }
1255
+ /** Backend request type: models::UpdateUserRequest. */
1256
+ export interface EventUpdateUserPatchInput extends JsonObject {
1257
+ "user_id"?: string;
1258
+ "status"?: string;
1259
+ }
1260
+ /** Backend response type: models::UserResponse. */
1261
+ export interface EventUpdateUserPatchResponseData extends JsonObject {
1262
+ "id": number;
1263
+ "event_id": number;
1264
+ "user_id": string;
1265
+ "status": string;
1266
+ "created_at": string;
1267
+ }
1268
+ export interface EventUpdateUserPatchResponse extends ApiEnvelope<EventUpdateUserPatchResponseData> {
1269
+ }
1270
+ /** Backend response type: models::EventResponse. */
1271
+ export interface EventShowEventGetResponseData extends JsonObject {
1272
+ "id": number;
1273
+ "event_type_id"?: number;
1274
+ "name": string;
1275
+ "description"?: string;
1276
+ "starts_at"?: string;
1277
+ "ends_at"?: string;
1278
+ "status": string;
1279
+ "created_at": string;
1280
+ "updated_at": string;
1281
+ }
1282
+ export interface EventShowEventGetResponse extends ApiEnvelope<EventShowEventGetResponseData> {
1283
+ }
1284
+ /** Backend request type: models::UpdateEventRequest. */
1285
+ export interface EventUpdateEventPatchInput extends JsonObject {
1286
+ "event_type_id"?: number;
1287
+ "name"?: string;
1288
+ "description"?: string;
1289
+ "starts_at"?: string;
1290
+ "ends_at"?: string;
1291
+ "status"?: string;
1292
+ }
1293
+ /** Backend response type: models::EventResponse. */
1294
+ export interface EventUpdateEventPatchResponseData extends JsonObject {
1295
+ "id": number;
1296
+ "event_type_id"?: number;
1297
+ "name": string;
1298
+ "description"?: string;
1299
+ "starts_at"?: string;
1300
+ "ends_at"?: string;
1301
+ "status": string;
1302
+ "created_at": string;
1303
+ "updated_at": string;
1304
+ }
1305
+ export interface EventUpdateEventPatchResponse extends ApiEnvelope<EventUpdateEventPatchResponseData> {
1306
+ }
1307
+ /** Backend query type: PaginationQuery. */
1308
+ export interface EventIndexSessionGetQuery extends QueryParams {
1309
+ "page[number]"?: number;
1310
+ "page[size]"?: number;
1311
+ }
1312
+ /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
1313
+ export interface EventIndexSessionGetResponseItem extends JsonObject {
1314
+ "id": number;
1315
+ "event_id": number;
1316
+ "name"?: string;
1317
+ "starts_at"?: string;
1318
+ "ends_at"?: string;
1319
+ "created_at": string;
1320
+ }
1321
+ export interface EventIndexSessionGetResponsePageMeta extends JsonObject {
1322
+ "page": number;
1323
+ "page_size": number;
1324
+ "total_items": number;
1325
+ "total_pages": number;
1326
+ }
1327
+ export interface EventIndexSessionGetResponseData extends JsonObject {
1328
+ "data": EventIndexSessionGetResponseItem[];
1329
+ "meta": EventIndexSessionGetResponsePageMeta;
1330
+ }
1331
+ export interface EventIndexSessionGetResponse extends ApiEnvelope<EventIndexSessionGetResponseData> {
1332
+ }
1333
+ /** Backend request type: models::CreateSessionRequest. */
1334
+ export interface EventStoreSessionPostInput extends JsonObject {
1335
+ "event_id": number;
1336
+ "name"?: string;
1337
+ "starts_at"?: string;
1338
+ "ends_at"?: string;
1339
+ }
1340
+ /** Backend response type: models::SessionResponse. */
1341
+ export interface EventStoreSessionPostResponseData extends JsonObject {
1342
+ "id": number;
1343
+ "event_id": number;
1344
+ "name"?: string;
1345
+ "starts_at"?: string;
1346
+ "ends_at"?: string;
1347
+ "created_at": string;
1348
+ }
1349
+ export interface EventStoreSessionPostResponse extends ApiEnvelope<EventStoreSessionPostResponseData> {
1350
+ }
1351
+ /** Backend response type: models::SessionResponse. */
1352
+ export interface EventShowSessionGetResponseData extends JsonObject {
1353
+ "id": number;
1354
+ "event_id": number;
1355
+ "name"?: string;
1356
+ "starts_at"?: string;
1357
+ "ends_at"?: string;
1358
+ "created_at": string;
1359
+ }
1360
+ export interface EventShowSessionGetResponse extends ApiEnvelope<EventShowSessionGetResponseData> {
1361
+ }
1362
+ /** Backend request type: models::UpdateSessionRequest. */
1363
+ export interface EventUpdateSessionPatchInput extends JsonObject {
1364
+ "event_id"?: number;
1365
+ "name"?: string;
1366
+ "starts_at"?: string;
1367
+ "ends_at"?: string;
1368
+ }
1369
+ /** Backend response type: models::SessionResponse. */
1370
+ export interface EventUpdateSessionPatchResponseData extends JsonObject {
1371
+ "id": number;
1372
+ "event_id": number;
1373
+ "name"?: string;
1374
+ "starts_at"?: string;
1375
+ "ends_at"?: string;
1376
+ "created_at": string;
1377
+ }
1378
+ export interface EventUpdateSessionPatchResponse extends ApiEnvelope<EventUpdateSessionPatchResponseData> {
1379
+ }
1380
+ /** Backend query type: PaginationQuery. */
1381
+ export interface ExamIndexExamGetQuery extends QueryParams {
1382
+ "page[number]"?: number;
1383
+ "page[size]"?: number;
1384
+ }
1385
+ /** Backend response type: crate::models::PagedResult<models::ExamResponse>. */
1386
+ export interface ExamIndexExamGetResponseItem extends JsonObject {
1387
+ "id": number;
1388
+ "course_id"?: number;
1389
+ "name": string;
1390
+ "description"?: string;
1391
+ "duration_minutes"?: number;
1392
+ "passing_mark"?: number;
1393
+ "status": string;
1394
+ "created_at": string;
1395
+ "updated_at": string;
1396
+ }
1397
+ export interface ExamIndexExamGetResponsePageMeta extends JsonObject {
1398
+ "page": number;
1399
+ "page_size": number;
1400
+ "total_items": number;
1401
+ "total_pages": number;
1402
+ }
1403
+ export interface ExamIndexExamGetResponseData extends JsonObject {
1404
+ "data": ExamIndexExamGetResponseItem[];
1405
+ "meta": ExamIndexExamGetResponsePageMeta;
1406
+ }
1407
+ export interface ExamIndexExamGetResponse extends ApiEnvelope<ExamIndexExamGetResponseData> {
1408
+ }
1409
+ /** Backend request type: models::CreateExamRequest. */
1410
+ export interface ExamStoreExamPostInput extends JsonObject {
1411
+ "course_id"?: number;
1412
+ "name": string;
1413
+ "description"?: string;
1414
+ "duration_minutes"?: number;
1415
+ "passing_mark"?: number;
1416
+ "status": string;
1417
+ }
1418
+ /** Backend response type: models::ExamResponse. */
1419
+ export interface ExamStoreExamPostResponseData extends JsonObject {
1420
+ "id": number;
1421
+ "course_id"?: number;
1422
+ "name": string;
1423
+ "description"?: string;
1424
+ "duration_minutes"?: number;
1425
+ "passing_mark"?: number;
1426
+ "status": string;
1427
+ "created_at": string;
1428
+ "updated_at": string;
1429
+ }
1430
+ export interface ExamStoreExamPostResponse extends ApiEnvelope<ExamStoreExamPostResponseData> {
1431
+ }
1432
+ /** Backend response type: models::ExamResponse. */
1433
+ export interface ExamShowExamGetResponseData extends JsonObject {
1434
+ "id": number;
1435
+ "course_id"?: number;
1436
+ "name": string;
1437
+ "description"?: string;
1438
+ "duration_minutes"?: number;
1439
+ "passing_mark"?: number;
1440
+ "status": string;
1441
+ "created_at": string;
1442
+ "updated_at": string;
1443
+ }
1444
+ export interface ExamShowExamGetResponse extends ApiEnvelope<ExamShowExamGetResponseData> {
1445
+ }
1446
+ /** Backend request type: models::UpdateExamRequest. */
1447
+ export interface ExamUpdateExamPatchInput extends JsonObject {
1448
+ "course_id"?: number;
1449
+ "name"?: string;
1450
+ "description"?: string;
1451
+ "duration_minutes"?: number;
1452
+ "passing_mark"?: number;
1453
+ "status"?: string;
1454
+ }
1455
+ /** Backend response type: models::ExamResponse. */
1456
+ export interface ExamUpdateExamPatchResponseData extends JsonObject {
1457
+ "id": number;
1458
+ "course_id"?: number;
1459
+ "name": string;
1460
+ "description"?: string;
1461
+ "duration_minutes"?: number;
1462
+ "passing_mark"?: number;
1463
+ "status": string;
1464
+ "created_at": string;
1465
+ "updated_at": string;
1466
+ }
1467
+ export interface ExamUpdateExamPatchResponse extends ApiEnvelope<ExamUpdateExamPatchResponseData> {
1468
+ }
1469
+ /** Backend query type: PaginationQuery. */
1470
+ export interface ExamIndexQuestionGetQuery extends QueryParams {
1471
+ "page[number]"?: number;
1472
+ "page[size]"?: number;
1473
+ }
1474
+ /** Backend response type: crate::models::PagedResult<models::QuestionResponse>. */
1475
+ export interface ExamIndexQuestionGetResponseItem extends JsonObject {
1476
+ "id": number;
1477
+ "exam_id"?: number;
1478
+ "question_text": string;
1479
+ "question_type": string;
1480
+ "options"?: JsonValue;
1481
+ "correct_answer"?: string;
1482
+ "sort_order": number;
1483
+ "created_at": string;
1484
+ }
1485
+ export interface ExamIndexQuestionGetResponsePageMeta extends JsonObject {
1486
+ "page": number;
1487
+ "page_size": number;
1488
+ "total_items": number;
1489
+ "total_pages": number;
1490
+ }
1491
+ export interface ExamIndexQuestionGetResponseData extends JsonObject {
1492
+ "data": ExamIndexQuestionGetResponseItem[];
1493
+ "meta": ExamIndexQuestionGetResponsePageMeta;
1494
+ }
1495
+ export interface ExamIndexQuestionGetResponse extends ApiEnvelope<ExamIndexQuestionGetResponseData> {
1496
+ }
1497
+ /** Backend request type: models::CreateQuestionRequest. */
1498
+ export interface ExamStoreQuestionPostInput extends JsonObject {
1499
+ "exam_id"?: number;
1500
+ "question_text": string;
1501
+ "question_type": string;
1502
+ "options"?: JsonValue;
1503
+ "correct_answer"?: string;
1504
+ "sort_order": number;
1505
+ }
1506
+ /** Backend response type: models::QuestionResponse. */
1507
+ export interface ExamStoreQuestionPostResponseData extends JsonObject {
1508
+ "id": number;
1509
+ "exam_id"?: number;
1510
+ "question_text": string;
1511
+ "question_type": string;
1512
+ "options"?: JsonValue;
1513
+ "correct_answer"?: string;
1514
+ "sort_order": number;
1515
+ "created_at": string;
1516
+ }
1517
+ export interface ExamStoreQuestionPostResponse extends ApiEnvelope<ExamStoreQuestionPostResponseData> {
1518
+ }
1519
+ /** Backend response type: models::QuestionResponse. */
1520
+ export interface ExamShowQuestionGetResponseData extends JsonObject {
1521
+ "id": number;
1522
+ "exam_id"?: number;
1523
+ "question_text": string;
1524
+ "question_type": string;
1525
+ "options"?: JsonValue;
1526
+ "correct_answer"?: string;
1527
+ "sort_order": number;
1528
+ "created_at": string;
1529
+ }
1530
+ export interface ExamShowQuestionGetResponse extends ApiEnvelope<ExamShowQuestionGetResponseData> {
1531
+ }
1532
+ /** Backend request type: models::UpdateQuestionRequest. */
1533
+ export interface ExamUpdateQuestionPatchInput extends JsonObject {
1534
+ "exam_id"?: number;
1535
+ "question_text"?: string;
1536
+ "question_type"?: string;
1537
+ "options"?: JsonValue;
1538
+ "correct_answer"?: string;
1539
+ "sort_order"?: number;
1540
+ }
1541
+ /** Backend response type: models::QuestionResponse. */
1542
+ export interface ExamUpdateQuestionPatchResponseData extends JsonObject {
1543
+ "id": number;
1544
+ "exam_id"?: number;
1545
+ "question_text": string;
1546
+ "question_type": string;
1547
+ "options"?: JsonValue;
1548
+ "correct_answer"?: string;
1549
+ "sort_order": number;
1550
+ "created_at": string;
1551
+ }
1552
+ export interface ExamUpdateQuestionPatchResponse extends ApiEnvelope<ExamUpdateQuestionPatchResponseData> {
1553
+ }
1554
+ /** Backend query type: PaginationQuery. */
1555
+ export interface ExamIndexSessionGetQuery extends QueryParams {
1556
+ "page[number]"?: number;
1557
+ "page[size]"?: number;
1558
+ }
1559
+ /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
1560
+ export interface ExamIndexSessionGetResponseItem extends JsonObject {
1561
+ "id": number;
1562
+ "exam_id": number;
1563
+ "classroom_id"?: number;
1564
+ "starts_at"?: string;
1565
+ "ends_at"?: string;
1566
+ "status": string;
1567
+ "created_at": string;
1568
+ }
1569
+ export interface ExamIndexSessionGetResponsePageMeta extends JsonObject {
1570
+ "page": number;
1571
+ "page_size": number;
1572
+ "total_items": number;
1573
+ "total_pages": number;
1574
+ }
1575
+ export interface ExamIndexSessionGetResponseData extends JsonObject {
1576
+ "data": ExamIndexSessionGetResponseItem[];
1577
+ "meta": ExamIndexSessionGetResponsePageMeta;
1578
+ }
1579
+ export interface ExamIndexSessionGetResponse extends ApiEnvelope<ExamIndexSessionGetResponseData> {
1580
+ }
1581
+ /** Backend request type: models::CreateSessionRequest. */
1582
+ export interface ExamStoreSessionPostInput extends JsonObject {
1583
+ "exam_id": number;
1584
+ "classroom_id"?: number;
1585
+ "starts_at"?: string;
1586
+ "ends_at"?: string;
1587
+ "status": string;
1588
+ }
1589
+ /** Backend response type: models::SessionResponse. */
1590
+ export interface ExamStoreSessionPostResponseData extends JsonObject {
1591
+ "id": number;
1592
+ "exam_id": number;
1593
+ "classroom_id"?: number;
1594
+ "starts_at"?: string;
1595
+ "ends_at"?: string;
1596
+ "status": string;
1597
+ "created_at": string;
1598
+ }
1599
+ export interface ExamStoreSessionPostResponse extends ApiEnvelope<ExamStoreSessionPostResponseData> {
1600
+ }
1601
+ /** Backend response type: models::SessionResponse. */
1602
+ export interface ExamShowSessionGetResponseData extends JsonObject {
1603
+ "id": number;
1604
+ "exam_id": number;
1605
+ "classroom_id"?: number;
1606
+ "starts_at"?: string;
1607
+ "ends_at"?: string;
1608
+ "status": string;
1609
+ "created_at": string;
1610
+ }
1611
+ export interface ExamShowSessionGetResponse extends ApiEnvelope<ExamShowSessionGetResponseData> {
1612
+ }
1613
+ /** Backend request type: models::UpdateSessionRequest. */
1614
+ export interface ExamUpdateSessionPatchInput extends JsonObject {
1615
+ "exam_id"?: number;
1616
+ "classroom_id"?: number;
1617
+ "starts_at"?: string;
1618
+ "ends_at"?: string;
1619
+ "status"?: string;
1620
+ }
1621
+ /** Backend response type: models::SessionResponse. */
1622
+ export interface ExamUpdateSessionPatchResponseData extends JsonObject {
1623
+ "id": number;
1624
+ "exam_id": number;
1625
+ "classroom_id"?: number;
1626
+ "starts_at"?: string;
1627
+ "ends_at"?: string;
1628
+ "status": string;
1629
+ "created_at": string;
1630
+ }
1631
+ export interface ExamUpdateSessionPatchResponse extends ApiEnvelope<ExamUpdateSessionPatchResponseData> {
1632
+ }
1633
+ /** Backend query type: PaginationQuery. */
1634
+ export interface HomeworkIndexHomeworkGetQuery extends QueryParams {
1635
+ "page[number]"?: number;
1636
+ "page[size]"?: number;
1637
+ }
1638
+ /** Backend response type: crate::models::PagedResult<models::HomeworkResponse>. */
1639
+ export interface HomeworkIndexHomeworkGetResponseItem extends JsonObject {
1640
+ "id": number;
1641
+ "course_id"?: number;
1642
+ "name": string;
1643
+ "description"?: string;
1644
+ "status": string;
1645
+ "created_at": string;
1646
+ "updated_at": string;
1647
+ }
1648
+ export interface HomeworkIndexHomeworkGetResponsePageMeta extends JsonObject {
1649
+ "page": number;
1650
+ "page_size": number;
1651
+ "total_items": number;
1652
+ "total_pages": number;
1653
+ }
1654
+ export interface HomeworkIndexHomeworkGetResponseData extends JsonObject {
1655
+ "data": HomeworkIndexHomeworkGetResponseItem[];
1656
+ "meta": HomeworkIndexHomeworkGetResponsePageMeta;
1657
+ }
1658
+ export interface HomeworkIndexHomeworkGetResponse extends ApiEnvelope<HomeworkIndexHomeworkGetResponseData> {
1659
+ }
1660
+ /** Backend request type: models::CreateHomeworkRequest. */
1661
+ export interface HomeworkStoreHomeworkPostInput extends JsonObject {
1662
+ "course_id"?: number;
1663
+ "name": string;
1664
+ "description"?: string;
1665
+ "status": string;
1666
+ }
1667
+ /** Backend response type: models::HomeworkResponse. */
1668
+ export interface HomeworkStoreHomeworkPostResponseData extends JsonObject {
1669
+ "id": number;
1670
+ "course_id"?: number;
1671
+ "name": string;
1672
+ "description"?: string;
1673
+ "status": string;
1674
+ "created_at": string;
1675
+ "updated_at": string;
1676
+ }
1677
+ export interface HomeworkStoreHomeworkPostResponse extends ApiEnvelope<HomeworkStoreHomeworkPostResponseData> {
1678
+ }
1679
+ /** Backend response type: models::HomeworkResponse. */
1680
+ export interface HomeworkShowHomeworkGetResponseData extends JsonObject {
1681
+ "id": number;
1682
+ "course_id"?: number;
1683
+ "name": string;
1684
+ "description"?: string;
1685
+ "status": string;
1686
+ "created_at": string;
1687
+ "updated_at": string;
1688
+ }
1689
+ export interface HomeworkShowHomeworkGetResponse extends ApiEnvelope<HomeworkShowHomeworkGetResponseData> {
1690
+ }
1691
+ /** Backend request type: models::UpdateHomeworkRequest. */
1692
+ export interface HomeworkUpdateHomeworkPatchInput extends JsonObject {
1693
+ "course_id"?: number;
1694
+ "name"?: string;
1695
+ "description"?: string;
1696
+ "status"?: string;
1697
+ }
1698
+ /** Backend response type: models::HomeworkResponse. */
1699
+ export interface HomeworkUpdateHomeworkPatchResponseData extends JsonObject {
1700
+ "id": number;
1701
+ "course_id"?: number;
1702
+ "name": string;
1703
+ "description"?: string;
1704
+ "status": string;
1705
+ "created_at": string;
1706
+ "updated_at": string;
1707
+ }
1708
+ export interface HomeworkUpdateHomeworkPatchResponse extends ApiEnvelope<HomeworkUpdateHomeworkPatchResponseData> {
1709
+ }
1710
+ /** Backend query type: PaginationQuery. */
1711
+ export interface HomeworkIndexAssignmentGetQuery extends QueryParams {
1712
+ "page[number]"?: number;
1713
+ "page[size]"?: number;
1714
+ }
1715
+ /** Backend response type: crate::models::PagedResult<models::AssignmentResponse>. */
1716
+ export interface HomeworkIndexAssignmentGetResponseItem extends JsonObject {
1717
+ "id": number;
1718
+ "homework_id": number;
1719
+ "classroom_id"?: number;
1720
+ "user_id"?: string;
1721
+ "due_at"?: string;
1722
+ "status": string;
1723
+ "answer_text"?: string;
1724
+ "score"?: number;
1725
+ "created_at": string;
1726
+ "updated_at": string;
1727
+ }
1728
+ export interface HomeworkIndexAssignmentGetResponsePageMeta extends JsonObject {
1729
+ "page": number;
1730
+ "page_size": number;
1731
+ "total_items": number;
1732
+ "total_pages": number;
1733
+ }
1734
+ export interface HomeworkIndexAssignmentGetResponseData extends JsonObject {
1735
+ "data": HomeworkIndexAssignmentGetResponseItem[];
1736
+ "meta": HomeworkIndexAssignmentGetResponsePageMeta;
1737
+ }
1738
+ export interface HomeworkIndexAssignmentGetResponse extends ApiEnvelope<HomeworkIndexAssignmentGetResponseData> {
1739
+ }
1740
+ /** Backend request type: models::CreateAssignmentRequest. */
1741
+ export interface HomeworkStoreAssignmentPostInput extends JsonObject {
1742
+ "homework_id": number;
1743
+ "classroom_id"?: number;
1744
+ "user_id"?: string;
1745
+ "due_at"?: string;
1746
+ "status": string;
1747
+ "answer_text"?: string;
1748
+ "score"?: number;
1749
+ }
1750
+ /** Backend response type: models::AssignmentResponse. */
1751
+ export interface HomeworkStoreAssignmentPostResponseData extends JsonObject {
1752
+ "id": number;
1753
+ "homework_id": number;
1754
+ "classroom_id"?: number;
1755
+ "user_id"?: string;
1756
+ "due_at"?: string;
1757
+ "status": string;
1758
+ "answer_text"?: string;
1759
+ "score"?: number;
1760
+ "created_at": string;
1761
+ "updated_at": string;
1762
+ }
1763
+ export interface HomeworkStoreAssignmentPostResponse extends ApiEnvelope<HomeworkStoreAssignmentPostResponseData> {
1764
+ }
1765
+ /** Backend response type: models::AssignmentResponse. */
1766
+ export interface HomeworkShowAssignmentGetResponseData extends JsonObject {
1767
+ "id": number;
1768
+ "homework_id": number;
1769
+ "classroom_id"?: number;
1770
+ "user_id"?: string;
1771
+ "due_at"?: string;
1772
+ "status": string;
1773
+ "answer_text"?: string;
1774
+ "score"?: number;
1775
+ "created_at": string;
1776
+ "updated_at": string;
1777
+ }
1778
+ export interface HomeworkShowAssignmentGetResponse extends ApiEnvelope<HomeworkShowAssignmentGetResponseData> {
1779
+ }
1780
+ /** Backend request type: models::UpdateAssignmentRequest. */
1781
+ export interface HomeworkUpdateAssignmentPatchInput extends JsonObject {
1782
+ "homework_id"?: number;
1783
+ "classroom_id"?: number;
1784
+ "user_id"?: string;
1785
+ "due_at"?: string;
1786
+ "status"?: string;
1787
+ "answer_text"?: string;
1788
+ "score"?: number;
1789
+ }
1790
+ /** Backend response type: models::AssignmentResponse. */
1791
+ export interface HomeworkUpdateAssignmentPatchResponseData extends JsonObject {
1792
+ "id": number;
1793
+ "homework_id": number;
1794
+ "classroom_id"?: number;
1795
+ "user_id"?: string;
1796
+ "due_at"?: string;
1797
+ "status": string;
1798
+ "answer_text"?: string;
1799
+ "score"?: number;
1800
+ "created_at": string;
1801
+ "updated_at": string;
1802
+ }
1803
+ export interface HomeworkUpdateAssignmentPatchResponse extends ApiEnvelope<HomeworkUpdateAssignmentPatchResponseData> {
1804
+ }
1805
+ /** Backend query type: PaginationQuery. */
1806
+ export interface HomeworkIndexQuestionGetQuery extends QueryParams {
1807
+ "page[number]"?: number;
1808
+ "page[size]"?: number;
1809
+ }
1810
+ /** Backend response type: crate::models::PagedResult<models::QuestionResponse>. */
1811
+ export interface HomeworkIndexQuestionGetResponseItem extends JsonObject {
1812
+ "id": number;
1813
+ "homework_id": number;
1814
+ "question_text": string;
1815
+ "sort_order": number;
1816
+ "created_at": string;
1817
+ }
1818
+ export interface HomeworkIndexQuestionGetResponsePageMeta extends JsonObject {
1819
+ "page": number;
1820
+ "page_size": number;
1821
+ "total_items": number;
1822
+ "total_pages": number;
1823
+ }
1824
+ export interface HomeworkIndexQuestionGetResponseData extends JsonObject {
1825
+ "data": HomeworkIndexQuestionGetResponseItem[];
1826
+ "meta": HomeworkIndexQuestionGetResponsePageMeta;
1827
+ }
1828
+ export interface HomeworkIndexQuestionGetResponse extends ApiEnvelope<HomeworkIndexQuestionGetResponseData> {
1829
+ }
1830
+ /** Backend request type: models::CreateQuestionRequest. */
1831
+ export interface HomeworkStoreQuestionPostInput extends JsonObject {
1832
+ "homework_id": number;
1833
+ "question_text": string;
1834
+ "sort_order": number;
1835
+ }
1836
+ /** Backend response type: models::QuestionResponse. */
1837
+ export interface HomeworkStoreQuestionPostResponseData extends JsonObject {
1838
+ "id": number;
1839
+ "homework_id": number;
1840
+ "question_text": string;
1841
+ "sort_order": number;
1842
+ "created_at": string;
1843
+ }
1844
+ export interface HomeworkStoreQuestionPostResponse extends ApiEnvelope<HomeworkStoreQuestionPostResponseData> {
1845
+ }
1846
+ /** Backend response type: models::QuestionResponse. */
1847
+ export interface HomeworkShowQuestionGetResponseData extends JsonObject {
1848
+ "id": number;
1849
+ "homework_id": number;
1850
+ "question_text": string;
1851
+ "sort_order": number;
1852
+ "created_at": string;
1853
+ }
1854
+ export interface HomeworkShowQuestionGetResponse extends ApiEnvelope<HomeworkShowQuestionGetResponseData> {
1855
+ }
1856
+ /** Backend request type: models::UpdateQuestionRequest. */
1857
+ export interface HomeworkUpdateQuestionPatchInput extends JsonObject {
1858
+ "homework_id"?: number;
1859
+ "question_text"?: string;
1860
+ "sort_order"?: number;
1861
+ }
1862
+ /** Backend response type: models::QuestionResponse. */
1863
+ export interface HomeworkUpdateQuestionPatchResponseData extends JsonObject {
1864
+ "id": number;
1865
+ "homework_id": number;
1866
+ "question_text": string;
1867
+ "sort_order": number;
1868
+ "created_at": string;
1869
+ }
1870
+ export interface HomeworkUpdateQuestionPatchResponse extends ApiEnvelope<HomeworkUpdateQuestionPatchResponseData> {
1871
+ }
1872
+ /** Backend response type: infera_flow_sdk::FlowIntegrationResponse. */
1873
+ export interface IntegrationFlowIntegrationShowGetResponse extends ApiEnvelope<JsonValue> {
1874
+ }
1875
+ /** Backend query type: PaginationQuery. */
1876
+ export interface InteractiveIndexCategoryGetQuery extends QueryParams {
1877
+ "page[number]"?: number;
1878
+ "page[size]"?: number;
1879
+ }
1880
+ /** Backend response type: crate::models::PagedResult<models::CategoryResponse>. */
1881
+ export interface InteractiveIndexCategoryGetResponseItem extends JsonObject {
1882
+ "id": number;
1883
+ "name": string;
1884
+ "sort_order": number;
1885
+ "created_at": string;
1886
+ }
1887
+ export interface InteractiveIndexCategoryGetResponsePageMeta extends JsonObject {
1888
+ "page": number;
1889
+ "page_size": number;
1890
+ "total_items": number;
1891
+ "total_pages": number;
1892
+ }
1893
+ export interface InteractiveIndexCategoryGetResponseData extends JsonObject {
1894
+ "data": InteractiveIndexCategoryGetResponseItem[];
1895
+ "meta": InteractiveIndexCategoryGetResponsePageMeta;
1896
+ }
1897
+ export interface InteractiveIndexCategoryGetResponse extends ApiEnvelope<InteractiveIndexCategoryGetResponseData> {
1898
+ }
1899
+ /** Backend request type: models::CreateCategoryRequest. */
1900
+ export interface InteractiveStoreCategoryPostInput extends JsonObject {
1901
+ "name": string;
1902
+ "sort_order": number;
1903
+ }
1904
+ /** Backend response type: models::CategoryResponse. */
1905
+ export interface InteractiveStoreCategoryPostResponseData extends JsonObject {
1906
+ "id": number;
1907
+ "name": string;
1908
+ "sort_order": number;
1909
+ "created_at": string;
1910
+ }
1911
+ export interface InteractiveStoreCategoryPostResponse extends ApiEnvelope<InteractiveStoreCategoryPostResponseData> {
1912
+ }
1913
+ /** Backend response type: models::CategoryResponse. */
1914
+ export interface InteractiveShowCategoryGetResponseData extends JsonObject {
1915
+ "id": number;
1916
+ "name": string;
1917
+ "sort_order": number;
1918
+ "created_at": string;
1919
+ }
1920
+ export interface InteractiveShowCategoryGetResponse extends ApiEnvelope<InteractiveShowCategoryGetResponseData> {
1921
+ }
1922
+ /** Backend request type: models::UpdateCategoryRequest. */
1923
+ export interface InteractiveUpdateCategoryPatchInput extends JsonObject {
1924
+ "name"?: string;
1925
+ "sort_order"?: number;
1926
+ }
1927
+ /** Backend response type: models::CategoryResponse. */
1928
+ export interface InteractiveUpdateCategoryPatchResponseData extends JsonObject {
1929
+ "id": number;
1930
+ "name": string;
1931
+ "sort_order": number;
1932
+ "created_at": string;
1933
+ }
1934
+ export interface InteractiveUpdateCategoryPatchResponse extends ApiEnvelope<InteractiveUpdateCategoryPatchResponseData> {
1935
+ }
1936
+ /** Backend query type: PaginationQuery. */
1937
+ export interface InteractiveIndexClassroomSessionGetQuery extends QueryParams {
1938
+ "page[number]"?: number;
1939
+ "page[size]"?: number;
1940
+ }
1941
+ /** Backend response type: crate::models::PagedResult<models::ClassroomSessionResponse>. */
1942
+ export interface InteractiveIndexClassroomSessionGetResponseItem extends JsonObject {
1943
+ "id": number;
1944
+ "classroom_session_id": number;
1945
+ "interactive_content_id": number;
1946
+ "room_code"?: string;
1947
+ "state"?: JsonValue;
1948
+ "created_at": string;
1949
+ }
1950
+ export interface InteractiveIndexClassroomSessionGetResponsePageMeta extends JsonObject {
1951
+ "page": number;
1952
+ "page_size": number;
1953
+ "total_items": number;
1954
+ "total_pages": number;
1955
+ }
1956
+ export interface InteractiveIndexClassroomSessionGetResponseData extends JsonObject {
1957
+ "data": InteractiveIndexClassroomSessionGetResponseItem[];
1958
+ "meta": InteractiveIndexClassroomSessionGetResponsePageMeta;
1959
+ }
1960
+ export interface InteractiveIndexClassroomSessionGetResponse extends ApiEnvelope<InteractiveIndexClassroomSessionGetResponseData> {
1961
+ }
1962
+ /** Backend request type: models::CreateClassroomSessionRequest. */
1963
+ export interface InteractiveStoreClassroomSessionPostInput extends JsonObject {
1964
+ "classroom_session_id": number;
1965
+ "interactive_content_id": number;
1966
+ "room_code"?: string;
1967
+ "state"?: JsonValue;
1968
+ }
1969
+ /** Backend response type: models::ClassroomSessionResponse. */
1970
+ export interface InteractiveStoreClassroomSessionPostResponseData extends JsonObject {
1971
+ "id": number;
1972
+ "classroom_session_id": number;
1973
+ "interactive_content_id": number;
1974
+ "room_code"?: string;
1975
+ "state"?: JsonValue;
1976
+ "created_at": string;
1977
+ }
1978
+ export interface InteractiveStoreClassroomSessionPostResponse extends ApiEnvelope<InteractiveStoreClassroomSessionPostResponseData> {
1979
+ }
1980
+ /** Backend response type: models::ClassroomSessionResponse. */
1981
+ export interface InteractiveShowClassroomSessionGetResponseData extends JsonObject {
1982
+ "id": number;
1983
+ "classroom_session_id": number;
1984
+ "interactive_content_id": number;
1985
+ "room_code"?: string;
1986
+ "state"?: JsonValue;
1987
+ "created_at": string;
1988
+ }
1989
+ export interface InteractiveShowClassroomSessionGetResponse extends ApiEnvelope<InteractiveShowClassroomSessionGetResponseData> {
1990
+ }
1991
+ /** Backend request type: models::UpdateClassroomSessionRequest. */
1992
+ export interface InteractiveUpdateClassroomSessionPatchInput extends JsonObject {
1993
+ "classroom_session_id"?: number;
1994
+ "interactive_content_id"?: number;
1995
+ "room_code"?: string;
1996
+ "state"?: JsonValue;
1997
+ }
1998
+ /** Backend response type: models::ClassroomSessionResponse. */
1999
+ export interface InteractiveUpdateClassroomSessionPatchResponseData extends JsonObject {
2000
+ "id": number;
2001
+ "classroom_session_id": number;
2002
+ "interactive_content_id": number;
2003
+ "room_code"?: string;
2004
+ "state"?: JsonValue;
2005
+ "created_at": string;
2006
+ }
2007
+ export interface InteractiveUpdateClassroomSessionPatchResponse extends ApiEnvelope<InteractiveUpdateClassroomSessionPatchResponseData> {
2008
+ }
2009
+ /** Backend query type: PaginationQuery. */
2010
+ export interface InteractiveIndexContentGetQuery extends QueryParams {
2011
+ "page[number]"?: number;
2012
+ "page[size]"?: number;
2013
+ }
2014
+ /** Backend response type: crate::models::PagedResult<models::ContentResponse>. */
2015
+ export interface InteractiveIndexContentGetResponseItem extends JsonObject {
2016
+ "id": number;
2017
+ "category_id"?: number;
2018
+ "name": string;
2019
+ "content_type": string;
2020
+ "payload"?: JsonValue;
2021
+ "reward_points": number;
2022
+ "status": string;
2023
+ "created_at": string;
2024
+ "updated_at": string;
2025
+ }
2026
+ export interface InteractiveIndexContentGetResponsePageMeta extends JsonObject {
2027
+ "page": number;
2028
+ "page_size": number;
2029
+ "total_items": number;
2030
+ "total_pages": number;
2031
+ }
2032
+ export interface InteractiveIndexContentGetResponseData extends JsonObject {
2033
+ "data": InteractiveIndexContentGetResponseItem[];
2034
+ "meta": InteractiveIndexContentGetResponsePageMeta;
2035
+ }
2036
+ export interface InteractiveIndexContentGetResponse extends ApiEnvelope<InteractiveIndexContentGetResponseData> {
2037
+ }
2038
+ /** Backend request type: models::CreateContentRequest. */
2039
+ export interface InteractiveStoreContentPostInput extends JsonObject {
2040
+ "category_id"?: number;
2041
+ "name": string;
2042
+ "content_type": string;
2043
+ "payload"?: JsonValue;
2044
+ "reward_points": number;
2045
+ "status": string;
2046
+ }
2047
+ /** Backend response type: models::ContentResponse. */
2048
+ export interface InteractiveStoreContentPostResponseData extends JsonObject {
2049
+ "id": number;
2050
+ "category_id"?: number;
2051
+ "name": string;
2052
+ "content_type": string;
2053
+ "payload"?: JsonValue;
2054
+ "reward_points": number;
2055
+ "status": string;
2056
+ "created_at": string;
2057
+ "updated_at": string;
2058
+ }
2059
+ export interface InteractiveStoreContentPostResponse extends ApiEnvelope<InteractiveStoreContentPostResponseData> {
2060
+ }
2061
+ /** Backend response type: models::ContentResponse. */
2062
+ export interface InteractiveShowContentGetResponseData extends JsonObject {
2063
+ "id": number;
2064
+ "category_id"?: number;
2065
+ "name": string;
2066
+ "content_type": string;
2067
+ "payload"?: JsonValue;
2068
+ "reward_points": number;
2069
+ "status": string;
2070
+ "created_at": string;
2071
+ "updated_at": string;
2072
+ }
2073
+ export interface InteractiveShowContentGetResponse extends ApiEnvelope<InteractiveShowContentGetResponseData> {
2074
+ }
2075
+ /** Backend request type: models::UpdateContentRequest. */
2076
+ export interface InteractiveUpdateContentPatchInput extends JsonObject {
2077
+ "category_id"?: number;
2078
+ "name"?: string;
2079
+ "content_type"?: string;
2080
+ "payload"?: JsonValue;
2081
+ "reward_points"?: number;
2082
+ "status"?: string;
2083
+ }
2084
+ /** Backend response type: models::ContentResponse. */
2085
+ export interface InteractiveUpdateContentPatchResponseData extends JsonObject {
2086
+ "id": number;
2087
+ "category_id"?: number;
2088
+ "name": string;
2089
+ "content_type": string;
2090
+ "payload"?: JsonValue;
2091
+ "reward_points": number;
2092
+ "status": string;
2093
+ "created_at": string;
2094
+ "updated_at": string;
2095
+ }
2096
+ export interface InteractiveUpdateContentPatchResponse extends ApiEnvelope<InteractiveUpdateContentPatchResponseData> {
2097
+ }
2098
+ /** Backend query type: PaginationQuery. */
2099
+ export interface OpsIndexInvitationGetQuery extends QueryParams {
2100
+ "page[number]"?: number;
2101
+ "page[size]"?: number;
2102
+ }
2103
+ /** Backend response type: crate::models::PagedResult<models::InvitationResponse>. */
2104
+ export interface OpsIndexInvitationGetResponseItem extends JsonObject {
2105
+ "id": number;
2106
+ "inviter_user_id": string;
2107
+ "invitee_user_id"?: string;
2108
+ "invitee_email"?: string;
2109
+ "reward_status": string;
2110
+ "created_at": string;
2111
+ }
2112
+ export interface OpsIndexInvitationGetResponsePageMeta extends JsonObject {
2113
+ "page": number;
2114
+ "page_size": number;
2115
+ "total_items": number;
2116
+ "total_pages": number;
2117
+ }
2118
+ export interface OpsIndexInvitationGetResponseData extends JsonObject {
2119
+ "data": OpsIndexInvitationGetResponseItem[];
2120
+ "meta": OpsIndexInvitationGetResponsePageMeta;
2121
+ }
2122
+ export interface OpsIndexInvitationGetResponse extends ApiEnvelope<OpsIndexInvitationGetResponseData> {
2123
+ }
2124
+ /** Backend request type: models::CreateInvitationRequest. */
2125
+ export interface OpsStoreInvitationPostInput extends JsonObject {
2126
+ "inviter_user_id": string;
2127
+ "invitee_user_id"?: string;
2128
+ "invitee_email"?: string;
2129
+ "reward_status": string;
2130
+ }
2131
+ /** Backend response type: models::InvitationResponse. */
2132
+ export interface OpsStoreInvitationPostResponseData extends JsonObject {
2133
+ "id": number;
2134
+ "inviter_user_id": string;
2135
+ "invitee_user_id"?: string;
2136
+ "invitee_email"?: string;
2137
+ "reward_status": string;
2138
+ "created_at": string;
2139
+ }
2140
+ export interface OpsStoreInvitationPostResponse extends ApiEnvelope<OpsStoreInvitationPostResponseData> {
2141
+ }
2142
+ /** Backend response type: models::InvitationResponse. */
2143
+ export interface OpsShowInvitationGetResponseData extends JsonObject {
2144
+ "id": number;
2145
+ "inviter_user_id": string;
2146
+ "invitee_user_id"?: string;
2147
+ "invitee_email"?: string;
2148
+ "reward_status": string;
2149
+ "created_at": string;
2150
+ }
2151
+ export interface OpsShowInvitationGetResponse extends ApiEnvelope<OpsShowInvitationGetResponseData> {
2152
+ }
2153
+ /** Backend request type: models::UpdateInvitationRequest. */
2154
+ export interface OpsUpdateInvitationPatchInput extends JsonObject {
2155
+ "inviter_user_id"?: string;
2156
+ "invitee_user_id"?: string;
2157
+ "invitee_email"?: string;
2158
+ "reward_status"?: string;
2159
+ }
2160
+ /** Backend response type: models::InvitationResponse. */
2161
+ export interface OpsUpdateInvitationPatchResponseData extends JsonObject {
2162
+ "id": number;
2163
+ "inviter_user_id": string;
2164
+ "invitee_user_id"?: string;
2165
+ "invitee_email"?: string;
2166
+ "reward_status": string;
2167
+ "created_at": string;
2168
+ }
2169
+ export interface OpsUpdateInvitationPatchResponse extends ApiEnvelope<OpsUpdateInvitationPatchResponseData> {
2170
+ }
2171
+ /** Backend response type: Vec<models::ClassroomReport>. */
2172
+ export interface ReportClassroomsGetResponseItem extends JsonObject {
2173
+ "classroom_id": number;
2174
+ "name": string;
2175
+ "student_count": number;
2176
+ "session_count": number;
2177
+ }
2178
+ export interface ReportClassroomsGetResponse extends ApiEnvelope<ReportClassroomsGetResponseItem[]> {
2179
+ }
2180
+ /** Backend response type: Vec<models::StudentReport>. */
2181
+ export interface ReportStudentsGetResponseItem extends JsonObject {
2182
+ "user_id": string;
2183
+ "classroom_count": number;
2184
+ "absence_count": number;
2185
+ }
2186
+ export interface ReportStudentsGetResponse extends ApiEnvelope<ReportStudentsGetResponseItem[]> {
2187
+ }
2188
+ /** Backend response type: Vec<models::TeacherReport>. */
2189
+ export interface ReportTeachersGetResponseItem extends JsonObject {
2190
+ "teacher_user_id": string;
2191
+ "classroom_count": number;
2192
+ }
2193
+ export interface ReportTeachersGetResponse extends ApiEnvelope<ReportTeachersGetResponseItem[]> {
2194
+ }
2195
+ /** Backend query type: LicenceQuery. */
2196
+ export interface ServiceCheckLicenceGetQuery extends QueryParams {
2197
+ "user_id": string;
2198
+ "content_id": number;
2199
+ }
2200
+ /** Backend response type: LicenceResponse. */
2201
+ export interface ServiceCheckLicenceGetResponseData extends JsonObject {
2202
+ "allowed": boolean;
2203
+ }
2204
+ export interface ServiceCheckLicenceGetResponse extends ApiEnvelope<ServiceCheckLicenceGetResponseData> {
2205
+ }
2206
+ /** Backend query type: PaginationQuery. */
2207
+ export interface OpsIndexSupportInteractionGetQuery extends QueryParams {
2208
+ "page[number]"?: number;
2209
+ "page[size]"?: number;
2210
+ }
2211
+ /** Backend response type: crate::models::PagedResult<models::SupportInteractionResponse>. */
2212
+ export interface OpsIndexSupportInteractionGetResponseItem extends JsonObject {
2213
+ "id": number;
2214
+ "user_id": string;
2215
+ "subject": string;
2216
+ "body"?: string;
2217
+ "status": string;
2218
+ "created_at": string;
2219
+ "updated_at": string;
2220
+ }
2221
+ export interface OpsIndexSupportInteractionGetResponsePageMeta extends JsonObject {
2222
+ "page": number;
2223
+ "page_size": number;
2224
+ "total_items": number;
2225
+ "total_pages": number;
2226
+ }
2227
+ export interface OpsIndexSupportInteractionGetResponseData extends JsonObject {
2228
+ "data": OpsIndexSupportInteractionGetResponseItem[];
2229
+ "meta": OpsIndexSupportInteractionGetResponsePageMeta;
2230
+ }
2231
+ export interface OpsIndexSupportInteractionGetResponse extends ApiEnvelope<OpsIndexSupportInteractionGetResponseData> {
2232
+ }
2233
+ /** Backend request type: models::CreateSupportInteractionRequest. */
2234
+ export interface OpsStoreSupportInteractionPostInput extends JsonObject {
2235
+ "user_id": string;
2236
+ "subject": string;
2237
+ "body"?: string;
2238
+ "status": string;
2239
+ }
2240
+ /** Backend response type: models::SupportInteractionResponse. */
2241
+ export interface OpsStoreSupportInteractionPostResponseData extends JsonObject {
2242
+ "id": number;
2243
+ "user_id": string;
2244
+ "subject": string;
2245
+ "body"?: string;
2246
+ "status": string;
2247
+ "created_at": string;
2248
+ "updated_at": string;
2249
+ }
2250
+ export interface OpsStoreSupportInteractionPostResponse extends ApiEnvelope<OpsStoreSupportInteractionPostResponseData> {
2251
+ }
2252
+ /** Backend response type: models::SupportInteractionResponse. */
2253
+ export interface OpsShowSupportInteractionGetResponseData extends JsonObject {
2254
+ "id": number;
2255
+ "user_id": string;
2256
+ "subject": string;
2257
+ "body"?: string;
2258
+ "status": string;
2259
+ "created_at": string;
2260
+ "updated_at": string;
2261
+ }
2262
+ export interface OpsShowSupportInteractionGetResponse extends ApiEnvelope<OpsShowSupportInteractionGetResponseData> {
2263
+ }
2264
+ /** Backend request type: models::UpdateSupportInteractionRequest. */
2265
+ export interface OpsUpdateSupportInteractionPatchInput extends JsonObject {
2266
+ "user_id"?: string;
2267
+ "subject"?: string;
2268
+ "body"?: string;
2269
+ "status"?: string;
2270
+ }
2271
+ /** Backend response type: models::SupportInteractionResponse. */
2272
+ export interface OpsUpdateSupportInteractionPatchResponseData extends JsonObject {
2273
+ "id": number;
2274
+ "user_id": string;
2275
+ "subject": string;
2276
+ "body"?: string;
2277
+ "status": string;
2278
+ "created_at": string;
2279
+ "updated_at": string;
2280
+ }
2281
+ export interface OpsUpdateSupportInteractionPatchResponse extends ApiEnvelope<OpsUpdateSupportInteractionPatchResponseData> {
2282
+ }
2283
+ /** Backend query type: PaginationQuery. */
2284
+ export interface OpsIndexWorktimeGetQuery extends QueryParams {
2285
+ "page[number]"?: number;
2286
+ "page[size]"?: number;
2287
+ }
2288
+ /** Backend response type: crate::models::PagedResult<models::WorktimeResponse>. */
2289
+ export interface OpsIndexWorktimeGetResponseItem extends JsonObject {
2290
+ "id": number;
2291
+ "teacher_user_id": string;
2292
+ "starts_at": string;
2293
+ "ends_at"?: string;
2294
+ "status": string;
2295
+ "notes"?: string;
2296
+ "created_at": string;
2297
+ }
2298
+ export interface OpsIndexWorktimeGetResponsePageMeta extends JsonObject {
2299
+ "page": number;
2300
+ "page_size": number;
2301
+ "total_items": number;
2302
+ "total_pages": number;
2303
+ }
2304
+ export interface OpsIndexWorktimeGetResponseData extends JsonObject {
2305
+ "data": OpsIndexWorktimeGetResponseItem[];
2306
+ "meta": OpsIndexWorktimeGetResponsePageMeta;
2307
+ }
2308
+ export interface OpsIndexWorktimeGetResponse extends ApiEnvelope<OpsIndexWorktimeGetResponseData> {
2309
+ }
2310
+ /** Backend request type: models::CreateWorktimeRequest. */
2311
+ export interface OpsStoreWorktimePostInput extends JsonObject {
2312
+ "teacher_user_id": string;
2313
+ "starts_at": string;
2314
+ "ends_at"?: string;
2315
+ "status": string;
2316
+ "notes"?: string;
2317
+ }
2318
+ /** Backend response type: models::WorktimeResponse. */
2319
+ export interface OpsStoreWorktimePostResponseData extends JsonObject {
2320
+ "id": number;
2321
+ "teacher_user_id": string;
2322
+ "starts_at": string;
2323
+ "ends_at"?: string;
2324
+ "status": string;
2325
+ "notes"?: string;
2326
+ "created_at": string;
2327
+ }
2328
+ export interface OpsStoreWorktimePostResponse extends ApiEnvelope<OpsStoreWorktimePostResponseData> {
2329
+ }
2330
+ /** Backend response type: models::WorktimeResponse. */
2331
+ export interface OpsShowWorktimeGetResponseData extends JsonObject {
2332
+ "id": number;
2333
+ "teacher_user_id": string;
2334
+ "starts_at": string;
2335
+ "ends_at"?: string;
2336
+ "status": string;
2337
+ "notes"?: string;
2338
+ "created_at": string;
2339
+ }
2340
+ export interface OpsShowWorktimeGetResponse extends ApiEnvelope<OpsShowWorktimeGetResponseData> {
2341
+ }
2342
+ /** Backend request type: models::UpdateWorktimeRequest. */
2343
+ export interface OpsUpdateWorktimePatchInput extends JsonObject {
2344
+ "teacher_user_id"?: string;
2345
+ "starts_at"?: string;
2346
+ "ends_at"?: string;
2347
+ "status"?: string;
2348
+ "notes"?: string;
2349
+ }
2350
+ /** Backend response type: models::WorktimeResponse. */
2351
+ export interface OpsUpdateWorktimePatchResponseData extends JsonObject {
2352
+ "id": number;
2353
+ "teacher_user_id": string;
2354
+ "starts_at": string;
2355
+ "ends_at"?: string;
2356
+ "status": string;
2357
+ "notes"?: string;
2358
+ "created_at": string;
2359
+ }
2360
+ export interface OpsUpdateWorktimePatchResponse extends ApiEnvelope<OpsUpdateWorktimePatchResponseData> {
2361
+ }
2362
+ /** Backend response type: response without a declared JSON model. */
2363
+ export interface RouterStatusRouteGetResponse extends ApiEnvelope<JsonValue> {
2364
+ }
2365
+ //# sourceMappingURL=operations.types.d.ts.map