@faiber/faiber-lms 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,32 @@
1
1
  import type { ApiEnvelope, JsonObject, JsonValue, QueryParams } from "@faiber/sdk-core";
2
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. */
3
+ /** Backend response type: handler-defined response. */
4
4
  export interface RouterOpenapiJsonGetResponse extends ApiEnvelope<JsonValue> {
5
5
  }
6
+ /** Backend request type: SubmitExamRequest. */
7
+ export type AcademySubmitExamPostInput = import("./types.js").AcademySubmitExamInput;
8
+ /** Backend response type: Value. */
9
+ export type AcademySubmitExamPostResponse = import("./types.js").AcademyExamResultResponse;
10
+ /** Backend response type: Value. */
11
+ export type AcademyCategoriesGetResponse = import("./types.js").AcademyCategoriesResponse;
12
+ /** Backend query type: CatalogQuery. */
13
+ export interface AcademyCoursesGetQuery extends QueryParams {
14
+ "category_id"?: number | null;
15
+ }
16
+ /** Backend response type: Value. */
17
+ export type AcademyCoursesGetResponse = import("./types.js").AcademyCoursesResponse;
18
+ /** Backend response type: Value. */
19
+ export type AcademyCourseGetResponse = import("./types.js").AcademyCourseResponse;
20
+ /** Backend response type: Value. */
21
+ export type AcademyEnrollPostResponse = import("./types.js").AcademyEnrollmentStartResponse;
22
+ /** Backend response type: Value. */
23
+ export type AcademyMyEnrollmentsGetResponse = import("./types.js").AcademyEnrollmentsResponse;
24
+ /** Backend response type: Value. */
25
+ export type AcademyStartExamPostResponse = import("./types.js").AcademyExamAttemptResponse;
26
+ /** Backend request type: CompleteRequest. */
27
+ export type AcademyCompleteSessionPostInput = import("./types.js").AcademyCompleteSessionInput;
28
+ /** Backend response type: Value. */
29
+ export type AcademyCompleteSessionPostResponse = import("./types.js").AcademySessionCompletionResponse;
6
30
  /** Backend response type: SessionResponse. */
7
31
  export interface SessionGetSelfGetResponseData extends JsonObject {
8
32
  "user_id": string;
@@ -13,18 +37,18 @@ export interface SessionGetSelfGetResponse extends ApiEnvelope<SessionGetSelfGet
13
37
  }
14
38
  /** Backend query type: PaginationQuery. */
15
39
  export interface CertificateIndexCertificateGetQuery extends QueryParams {
16
- "page[number]"?: number;
17
- "page[size]"?: number;
40
+ "page_number"?: number | null;
41
+ "page_size"?: number | null;
18
42
  }
19
43
  /** Backend response type: crate::models::PagedResult<models::CertificateResponse>. */
20
44
  export interface CertificateIndexCertificateGetResponseItem extends JsonObject {
21
45
  "id": number;
22
46
  "user_id": string;
23
- "course_id"?: number;
24
- "classroom_id"?: number;
47
+ "course_id"?: number | null;
48
+ "classroom_id"?: number | null;
25
49
  "title": string;
26
50
  "issued_at": string;
27
- "media_url"?: string;
51
+ "media_url"?: string | null;
28
52
  "created_at": string;
29
53
  }
30
54
  export interface CertificateIndexCertificateGetResponsePageMeta extends JsonObject {
@@ -42,21 +66,21 @@ export interface CertificateIndexCertificateGetResponse extends ApiEnvelope<Cert
42
66
  /** Backend request type: models::CreateCertificateRequest. */
43
67
  export interface CertificateStoreCertificatePostInput extends JsonObject {
44
68
  "user_id": string;
45
- "course_id"?: number;
46
- "classroom_id"?: number;
69
+ "course_id"?: number | null;
70
+ "classroom_id"?: number | null;
47
71
  "title": string;
48
72
  "issued_at": string;
49
- "media_url"?: string;
73
+ "media_url"?: string | null;
50
74
  }
51
75
  /** Backend response type: models::CertificateResponse. */
52
76
  export interface CertificateStoreCertificatePostResponseData extends JsonObject {
53
77
  "id": number;
54
78
  "user_id": string;
55
- "course_id"?: number;
56
- "classroom_id"?: number;
79
+ "course_id"?: number | null;
80
+ "classroom_id"?: number | null;
57
81
  "title": string;
58
82
  "issued_at": string;
59
- "media_url"?: string;
83
+ "media_url"?: string | null;
60
84
  "created_at": string;
61
85
  }
62
86
  export interface CertificateStoreCertificatePostResponse extends ApiEnvelope<CertificateStoreCertificatePostResponseData> {
@@ -65,55 +89,55 @@ export interface CertificateStoreCertificatePostResponse extends ApiEnvelope<Cer
65
89
  export interface CertificateShowCertificateGetResponseData extends JsonObject {
66
90
  "id": number;
67
91
  "user_id": string;
68
- "course_id"?: number;
69
- "classroom_id"?: number;
92
+ "course_id"?: number | null;
93
+ "classroom_id"?: number | null;
70
94
  "title": string;
71
95
  "issued_at": string;
72
- "media_url"?: string;
96
+ "media_url"?: string | null;
73
97
  "created_at": string;
74
98
  }
75
99
  export interface CertificateShowCertificateGetResponse extends ApiEnvelope<CertificateShowCertificateGetResponseData> {
76
100
  }
77
101
  /** Backend request type: models::UpdateCertificateRequest. */
78
102
  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;
103
+ "user_id"?: string | null;
104
+ "course_id"?: number | null;
105
+ "classroom_id"?: number | null;
106
+ "title"?: string | null;
107
+ "issued_at"?: string | null;
108
+ "media_url"?: string | null;
85
109
  }
86
110
  /** Backend response type: models::CertificateResponse. */
87
111
  export interface CertificateUpdateCertificatePatchResponseData extends JsonObject {
88
112
  "id": number;
89
113
  "user_id": string;
90
- "course_id"?: number;
91
- "classroom_id"?: number;
114
+ "course_id"?: number | null;
115
+ "classroom_id"?: number | null;
92
116
  "title": string;
93
117
  "issued_at": string;
94
- "media_url"?: string;
118
+ "media_url"?: string | null;
95
119
  "created_at": string;
96
120
  }
97
121
  export interface CertificateUpdateCertificatePatchResponse extends ApiEnvelope<CertificateUpdateCertificatePatchResponseData> {
98
122
  }
99
123
  /** Backend query type: PaginationQuery. */
100
124
  export interface ClassroomIndexClassroomGetQuery extends QueryParams {
101
- "page[number]"?: number;
102
- "page[size]"?: number;
125
+ "page_number"?: number | null;
126
+ "page_size"?: number | null;
103
127
  }
104
128
  /** Backend response type: crate::models::PagedResult<models::ClassroomResponse>. */
105
129
  export interface ClassroomIndexClassroomGetResponseItem extends JsonObject {
106
130
  "id": number;
107
131
  "course_id": number;
108
132
  "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;
133
+ "code"?: string | null;
134
+ "classroom_type_id"?: number | null;
135
+ "school_grade_id"?: number | null;
136
+ "teacher_user_id"?: string | null;
137
+ "consultant_user_id"?: string | null;
138
+ "capacity"?: number | null;
139
+ "starts_at"?: string | null;
140
+ "ends_at"?: string | null;
117
141
  "status": string;
118
142
  "created_at": string;
119
143
  "updated_at": string;
@@ -134,14 +158,14 @@ export interface ClassroomIndexClassroomGetResponse extends ApiEnvelope<Classroo
134
158
  export interface ClassroomStoreClassroomPostInput extends JsonObject {
135
159
  "course_id": number;
136
160
  "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;
161
+ "code"?: string | null;
162
+ "classroom_type_id"?: number | null;
163
+ "school_grade_id"?: number | null;
164
+ "teacher_user_id"?: string | null;
165
+ "consultant_user_id"?: string | null;
166
+ "capacity"?: number | null;
167
+ "starts_at"?: string | null;
168
+ "ends_at"?: string | null;
145
169
  "status": string;
146
170
  }
147
171
  /** Backend response type: models::ClassroomResponse. */
@@ -149,14 +173,14 @@ export interface ClassroomStoreClassroomPostResponseData extends JsonObject {
149
173
  "id": number;
150
174
  "course_id": number;
151
175
  "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;
176
+ "code"?: string | null;
177
+ "classroom_type_id"?: number | null;
178
+ "school_grade_id"?: number | null;
179
+ "teacher_user_id"?: string | null;
180
+ "consultant_user_id"?: string | null;
181
+ "capacity"?: number | null;
182
+ "starts_at"?: string | null;
183
+ "ends_at"?: string | null;
160
184
  "status": string;
161
185
  "created_at": string;
162
186
  "updated_at": string;
@@ -168,14 +192,14 @@ export interface ClassroomShowClassroomGetResponseData extends JsonObject {
168
192
  "id": number;
169
193
  "course_id": number;
170
194
  "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;
195
+ "code"?: string | null;
196
+ "classroom_type_id"?: number | null;
197
+ "school_grade_id"?: number | null;
198
+ "teacher_user_id"?: string | null;
199
+ "consultant_user_id"?: string | null;
200
+ "capacity"?: number | null;
201
+ "starts_at"?: string | null;
202
+ "ends_at"?: string | null;
179
203
  "status": string;
180
204
  "created_at": string;
181
205
  "updated_at": string;
@@ -184,31 +208,31 @@ export interface ClassroomShowClassroomGetResponse extends ApiEnvelope<Classroom
184
208
  }
185
209
  /** Backend request type: models::UpdateClassroomRequest. */
186
210
  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;
211
+ "course_id"?: number | null;
212
+ "name"?: string | null;
213
+ "code"?: string | null;
214
+ "classroom_type_id"?: number | null;
215
+ "school_grade_id"?: number | null;
216
+ "teacher_user_id"?: string | null;
217
+ "consultant_user_id"?: string | null;
218
+ "capacity"?: number | null;
219
+ "starts_at"?: string | null;
220
+ "ends_at"?: string | null;
221
+ "status"?: string | null;
198
222
  }
199
223
  /** Backend response type: models::ClassroomResponse. */
200
224
  export interface ClassroomUpdateClassroomPatchResponseData extends JsonObject {
201
225
  "id": number;
202
226
  "course_id": number;
203
227
  "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;
228
+ "code"?: string | null;
229
+ "classroom_type_id"?: number | null;
230
+ "school_grade_id"?: number | null;
231
+ "teacher_user_id"?: string | null;
232
+ "consultant_user_id"?: string | null;
233
+ "capacity"?: number | null;
234
+ "starts_at"?: string | null;
235
+ "ends_at"?: string | null;
212
236
  "status": string;
213
237
  "created_at": string;
214
238
  "updated_at": string;
@@ -217,15 +241,15 @@ export interface ClassroomUpdateClassroomPatchResponse extends ApiEnvelope<Class
217
241
  }
218
242
  /** Backend query type: PaginationQuery. */
219
243
  export interface ClassroomIndexClassroomUsersGetQuery extends QueryParams {
220
- "page[number]"?: number;
221
- "page[size]"?: number;
244
+ "page_number"?: number | null;
245
+ "page_size"?: number | null;
222
246
  }
223
247
  /** Backend response type: crate::models::PagedResult<models::ClassroomUserResponse>. */
224
248
  export interface ClassroomIndexClassroomUsersGetResponseItem extends JsonObject {
225
249
  "id": number;
226
250
  "classroom_id": number;
227
251
  "user_id": string;
228
- "score"?: number;
252
+ "score"?: number | null;
229
253
  "status": string;
230
254
  "created_at": string;
231
255
  "updated_at": string;
@@ -245,15 +269,15 @@ export interface ClassroomIndexClassroomUsersGetResponse extends ApiEnvelope<Cla
245
269
  /** Backend request type: models::EnrollClassroomUserRequest. */
246
270
  export interface ClassroomEnrollClassroomUserPostInput extends JsonObject {
247
271
  "user_id": string;
248
- "score"?: number;
249
- "status"?: string;
272
+ "score"?: number | null;
273
+ "status"?: string | null;
250
274
  }
251
275
  /** Backend response type: models::ClassroomUserResponse. */
252
276
  export interface ClassroomEnrollClassroomUserPostResponseData extends JsonObject {
253
277
  "id": number;
254
278
  "classroom_id": number;
255
279
  "user_id": string;
256
- "score"?: number;
280
+ "score"?: number | null;
257
281
  "status": string;
258
282
  "created_at": string;
259
283
  "updated_at": string;
@@ -265,15 +289,15 @@ export interface ClassroomRemoveClassroomUserDeleteResponse extends ApiEnvelope<
265
289
  }
266
290
  /** Backend request type: models::UpdateClassroomUserRequest. */
267
291
  export interface ClassroomUpdateClassroomUserPatchInput extends JsonObject {
268
- "score"?: number;
269
- "status"?: string;
292
+ "score"?: number | null;
293
+ "status"?: string | null;
270
294
  }
271
295
  /** Backend response type: models::ClassroomUserResponse. */
272
296
  export interface ClassroomUpdateClassroomUserPatchResponseData extends JsonObject {
273
297
  "id": number;
274
298
  "classroom_id": number;
275
299
  "user_id": string;
276
- "score"?: number;
300
+ "score"?: number | null;
277
301
  "status": string;
278
302
  "created_at": string;
279
303
  "updated_at": string;
@@ -282,17 +306,17 @@ export interface ClassroomUpdateClassroomUserPatchResponse extends ApiEnvelope<C
282
306
  }
283
307
  /** Backend query type: PaginationQuery. */
284
308
  export interface ClassroomIndexSessionGetQuery extends QueryParams {
285
- "page[number]"?: number;
286
- "page[size]"?: number;
309
+ "page_number"?: number | null;
310
+ "page_size"?: number | null;
287
311
  }
288
312
  /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
289
313
  export interface ClassroomIndexSessionGetResponseItem extends JsonObject {
290
314
  "id": number;
291
315
  "classroom_id": number;
292
- "course_session_id"?: number;
293
- "name"?: string;
294
- "starts_at"?: string;
295
- "ends_at"?: string;
316
+ "course_session_id"?: number | null;
317
+ "name"?: string | null;
318
+ "starts_at"?: string | null;
319
+ "ends_at"?: string | null;
296
320
  "status": string;
297
321
  "created_at": string;
298
322
  "updated_at": string;
@@ -312,20 +336,20 @@ export interface ClassroomIndexSessionGetResponse extends ApiEnvelope<ClassroomI
312
336
  /** Backend request type: models::CreateSessionRequest. */
313
337
  export interface ClassroomStoreSessionPostInput extends JsonObject {
314
338
  "classroom_id": number;
315
- "course_session_id"?: number;
316
- "name"?: string;
317
- "starts_at"?: string;
318
- "ends_at"?: string;
339
+ "course_session_id"?: number | null;
340
+ "name"?: string | null;
341
+ "starts_at"?: string | null;
342
+ "ends_at"?: string | null;
319
343
  "status": string;
320
344
  }
321
345
  /** Backend response type: models::SessionResponse. */
322
346
  export interface ClassroomStoreSessionPostResponseData extends JsonObject {
323
347
  "id": number;
324
348
  "classroom_id": number;
325
- "course_session_id"?: number;
326
- "name"?: string;
327
- "starts_at"?: string;
328
- "ends_at"?: string;
349
+ "course_session_id"?: number | null;
350
+ "name"?: string | null;
351
+ "starts_at"?: string | null;
352
+ "ends_at"?: string | null;
329
353
  "status": string;
330
354
  "created_at": string;
331
355
  "updated_at": string;
@@ -336,10 +360,10 @@ export interface ClassroomStoreSessionPostResponse extends ApiEnvelope<Classroom
336
360
  export interface ClassroomShowSessionGetResponseData extends JsonObject {
337
361
  "id": number;
338
362
  "classroom_id": number;
339
- "course_session_id"?: number;
340
- "name"?: string;
341
- "starts_at"?: string;
342
- "ends_at"?: string;
363
+ "course_session_id"?: number | null;
364
+ "name"?: string | null;
365
+ "starts_at"?: string | null;
366
+ "ends_at"?: string | null;
343
367
  "status": string;
344
368
  "created_at": string;
345
369
  "updated_at": string;
@@ -348,21 +372,21 @@ export interface ClassroomShowSessionGetResponse extends ApiEnvelope<ClassroomSh
348
372
  }
349
373
  /** Backend request type: models::UpdateSessionRequest. */
350
374
  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;
375
+ "classroom_id"?: number | null;
376
+ "course_session_id"?: number | null;
377
+ "name"?: string | null;
378
+ "starts_at"?: string | null;
379
+ "ends_at"?: string | null;
380
+ "status"?: string | null;
357
381
  }
358
382
  /** Backend response type: models::SessionResponse. */
359
383
  export interface ClassroomUpdateSessionPatchResponseData extends JsonObject {
360
384
  "id": number;
361
385
  "classroom_id": number;
362
- "course_session_id"?: number;
363
- "name"?: string;
364
- "starts_at"?: string;
365
- "ends_at"?: string;
386
+ "course_session_id"?: number | null;
387
+ "name"?: string | null;
388
+ "starts_at"?: string | null;
389
+ "ends_at"?: string | null;
366
390
  "status": string;
367
391
  "created_at": string;
368
392
  "updated_at": string;
@@ -371,8 +395,8 @@ export interface ClassroomUpdateSessionPatchResponse extends ApiEnvelope<Classro
371
395
  }
372
396
  /** Backend query type: PaginationQuery. */
373
397
  export interface ClassroomIndexAbsencesGetQuery extends QueryParams {
374
- "page[number]"?: number;
375
- "page[size]"?: number;
398
+ "page_number"?: number | null;
399
+ "page_size"?: number | null;
376
400
  }
377
401
  /** Backend response type: crate::models::PagedResult<models::AbsenceResponse>. */
378
402
  export interface ClassroomIndexAbsencesGetResponseItem extends JsonObject {
@@ -380,7 +404,7 @@ export interface ClassroomIndexAbsencesGetResponseItem extends JsonObject {
380
404
  "classroom_session_id": number;
381
405
  "user_id": string;
382
406
  "status": string;
383
- "absence_reason"?: string;
407
+ "absence_reason"?: string | null;
384
408
  "created_at": string;
385
409
  }
386
410
  export interface ClassroomIndexAbsencesGetResponsePageMeta extends JsonObject {
@@ -397,15 +421,15 @@ export interface ClassroomIndexAbsencesGetResponse extends ApiEnvelope<Classroom
397
421
  }
398
422
  /** Backend query type: PaginationQuery. */
399
423
  export interface OpsIndexClubProjectGetQuery extends QueryParams {
400
- "page[number]"?: number;
401
- "page[size]"?: number;
424
+ "page_number"?: number | null;
425
+ "page_size"?: number | null;
402
426
  }
403
427
  /** Backend response type: crate::models::PagedResult<models::ClubProjectResponse>. */
404
428
  export interface OpsIndexClubProjectGetResponseItem extends JsonObject {
405
429
  "id": number;
406
430
  "name": string;
407
- "description"?: string;
408
- "owner_user_id"?: string;
431
+ "description"?: string | null;
432
+ "owner_user_id"?: string | null;
409
433
  "status": string;
410
434
  "created_at": string;
411
435
  }
@@ -424,16 +448,16 @@ export interface OpsIndexClubProjectGetResponse extends ApiEnvelope<OpsIndexClub
424
448
  /** Backend request type: models::CreateClubProjectRequest. */
425
449
  export interface OpsStoreClubProjectPostInput extends JsonObject {
426
450
  "name": string;
427
- "description"?: string;
428
- "owner_user_id"?: string;
451
+ "description"?: string | null;
452
+ "owner_user_id"?: string | null;
429
453
  "status": string;
430
454
  }
431
455
  /** Backend response type: models::ClubProjectResponse. */
432
456
  export interface OpsStoreClubProjectPostResponseData extends JsonObject {
433
457
  "id": number;
434
458
  "name": string;
435
- "description"?: string;
436
- "owner_user_id"?: string;
459
+ "description"?: string | null;
460
+ "owner_user_id"?: string | null;
437
461
  "status": string;
438
462
  "created_at": string;
439
463
  }
@@ -443,8 +467,8 @@ export interface OpsStoreClubProjectPostResponse extends ApiEnvelope<OpsStoreClu
443
467
  export interface OpsShowClubProjectGetResponseData extends JsonObject {
444
468
  "id": number;
445
469
  "name": string;
446
- "description"?: string;
447
- "owner_user_id"?: string;
470
+ "description"?: string | null;
471
+ "owner_user_id"?: string | null;
448
472
  "status": string;
449
473
  "created_at": string;
450
474
  }
@@ -452,17 +476,17 @@ export interface OpsShowClubProjectGetResponse extends ApiEnvelope<OpsShowClubPr
452
476
  }
453
477
  /** Backend request type: models::UpdateClubProjectRequest. */
454
478
  export interface OpsUpdateClubProjectPatchInput extends JsonObject {
455
- "name"?: string;
456
- "description"?: string;
457
- "owner_user_id"?: string;
458
- "status"?: string;
479
+ "name"?: string | null;
480
+ "description"?: string | null;
481
+ "owner_user_id"?: string | null;
482
+ "status"?: string | null;
459
483
  }
460
484
  /** Backend response type: models::ClubProjectResponse. */
461
485
  export interface OpsUpdateClubProjectPatchResponseData extends JsonObject {
462
486
  "id": number;
463
487
  "name": string;
464
- "description"?: string;
465
- "owner_user_id"?: string;
488
+ "description"?: string | null;
489
+ "owner_user_id"?: string | null;
466
490
  "status": string;
467
491
  "created_at": string;
468
492
  }
@@ -470,8 +494,8 @@ export interface OpsUpdateClubProjectPatchResponse extends ApiEnvelope<OpsUpdate
470
494
  }
471
495
  /** Backend query type: PaginationQuery. */
472
496
  export interface ConfigIndexClassroomTypeGetQuery extends QueryParams {
473
- "page[number]"?: number;
474
- "page[size]"?: number;
497
+ "page_number"?: number | null;
498
+ "page_size"?: number | null;
475
499
  }
476
500
  /** Backend response type: crate::models::PagedResult<models::ClassroomTypeResponse>. */
477
501
  export interface ConfigIndexClassroomTypeGetResponseItem extends JsonObject {
@@ -513,7 +537,7 @@ export interface ConfigShowClassroomTypeGetResponse extends ApiEnvelope<ConfigSh
513
537
  }
514
538
  /** Backend request type: models::UpdateClassroomTypeRequest. */
515
539
  export interface ConfigUpdateClassroomTypePatchInput extends JsonObject {
516
- "name"?: string;
540
+ "name"?: string | null;
517
541
  }
518
542
  /** Backend response type: models::ClassroomTypeResponse. */
519
543
  export interface ConfigUpdateClassroomTypePatchResponseData extends JsonObject {
@@ -525,15 +549,15 @@ export interface ConfigUpdateClassroomTypePatchResponse extends ApiEnvelope<Conf
525
549
  }
526
550
  /** Backend query type: PaginationQuery. */
527
551
  export interface ConfigIndexEducationDayGetQuery extends QueryParams {
528
- "page[number]"?: number;
529
- "page[size]"?: number;
552
+ "page_number"?: number | null;
553
+ "page_size"?: number | null;
530
554
  }
531
555
  /** Backend response type: crate::models::PagedResult<models::EducationDayResponse>. */
532
556
  export interface ConfigIndexEducationDayGetResponseItem extends JsonObject {
533
557
  "id": number;
534
558
  "day_date": string;
535
559
  "is_holiday": boolean;
536
- "label"?: string;
560
+ "label"?: string | null;
537
561
  "created_at": string;
538
562
  }
539
563
  export interface ConfigIndexEducationDayGetResponsePageMeta extends JsonObject {
@@ -552,14 +576,14 @@ export interface ConfigIndexEducationDayGetResponse extends ApiEnvelope<ConfigIn
552
576
  export interface ConfigStoreEducationDayPostInput extends JsonObject {
553
577
  "day_date": string;
554
578
  "is_holiday": boolean;
555
- "label"?: string;
579
+ "label"?: string | null;
556
580
  }
557
581
  /** Backend response type: models::EducationDayResponse. */
558
582
  export interface ConfigStoreEducationDayPostResponseData extends JsonObject {
559
583
  "id": number;
560
584
  "day_date": string;
561
585
  "is_holiday": boolean;
562
- "label"?: string;
586
+ "label"?: string | null;
563
587
  "created_at": string;
564
588
  }
565
589
  export interface ConfigStoreEducationDayPostResponse extends ApiEnvelope<ConfigStoreEducationDayPostResponseData> {
@@ -569,31 +593,31 @@ export interface ConfigShowEducationDayGetResponseData extends JsonObject {
569
593
  "id": number;
570
594
  "day_date": string;
571
595
  "is_holiday": boolean;
572
- "label"?: string;
596
+ "label"?: string | null;
573
597
  "created_at": string;
574
598
  }
575
599
  export interface ConfigShowEducationDayGetResponse extends ApiEnvelope<ConfigShowEducationDayGetResponseData> {
576
600
  }
577
601
  /** Backend request type: models::UpdateEducationDayRequest. */
578
602
  export interface ConfigUpdateEducationDayPatchInput extends JsonObject {
579
- "day_date"?: string;
580
- "is_holiday"?: boolean;
581
- "label"?: string;
603
+ "day_date"?: string | null;
604
+ "is_holiday"?: boolean | null;
605
+ "label"?: string | null;
582
606
  }
583
607
  /** Backend response type: models::EducationDayResponse. */
584
608
  export interface ConfigUpdateEducationDayPatchResponseData extends JsonObject {
585
609
  "id": number;
586
610
  "day_date": string;
587
611
  "is_holiday": boolean;
588
- "label"?: string;
612
+ "label"?: string | null;
589
613
  "created_at": string;
590
614
  }
591
615
  export interface ConfigUpdateEducationDayPatchResponse extends ApiEnvelope<ConfigUpdateEducationDayPatchResponseData> {
592
616
  }
593
617
  /** Backend query type: PaginationQuery. */
594
618
  export interface ConfigIndexGradeGetQuery extends QueryParams {
595
- "page[number]"?: number;
596
- "page[size]"?: number;
619
+ "page_number"?: number | null;
620
+ "page_size"?: number | null;
597
621
  }
598
622
  /** Backend response type: crate::models::PagedResult<models::GradeResponse>. */
599
623
  export interface ConfigIndexGradeGetResponseItem extends JsonObject {
@@ -639,8 +663,8 @@ export interface ConfigShowGradeGetResponse extends ApiEnvelope<ConfigShowGradeG
639
663
  }
640
664
  /** Backend request type: models::UpdateGradeRequest. */
641
665
  export interface ConfigUpdateGradePatchInput extends JsonObject {
642
- "name"?: string;
643
- "sort_order"?: number;
666
+ "name"?: string | null;
667
+ "sort_order"?: number | null;
644
668
  }
645
669
  /** Backend response type: models::GradeResponse. */
646
670
  export interface ConfigUpdateGradePatchResponseData extends JsonObject {
@@ -653,8 +677,8 @@ export interface ConfigUpdateGradePatchResponse extends ApiEnvelope<ConfigUpdate
653
677
  }
654
678
  /** Backend query type: PaginationQuery. */
655
679
  export interface ConfigIndexTextTemplateGetQuery extends QueryParams {
656
- "page[number]"?: number;
657
- "page[size]"?: number;
680
+ "page_number"?: number | null;
681
+ "page_size"?: number | null;
658
682
  }
659
683
  /** Backend response type: crate::models::PagedResult<models::TextTemplateResponse>. */
660
684
  export interface ConfigIndexTextTemplateGetResponseItem extends JsonObject {
@@ -704,9 +728,9 @@ export interface ConfigShowTextTemplateGetResponse extends ApiEnvelope<ConfigSho
704
728
  }
705
729
  /** Backend request type: models::UpdateTextTemplateRequest. */
706
730
  export interface ConfigUpdateTextTemplatePatchInput extends JsonObject {
707
- "name"?: string;
708
- "body"?: string;
709
- "template_type"?: string;
731
+ "name"?: string | null;
732
+ "body"?: string | null;
733
+ "template_type"?: string | null;
710
734
  }
711
735
  /** Backend response type: models::TextTemplateResponse. */
712
736
  export interface ConfigUpdateTextTemplatePatchResponseData extends JsonObject {
@@ -720,8 +744,8 @@ export interface ConfigUpdateTextTemplatePatchResponse extends ApiEnvelope<Confi
720
744
  }
721
745
  /** Backend query type: PaginationQuery. */
722
746
  export interface ConfigIndexWeekendGetQuery extends QueryParams {
723
- "page[number]"?: number;
724
- "page[size]"?: number;
747
+ "page_number"?: number | null;
748
+ "page_size"?: number | null;
725
749
  }
726
750
  /** Backend response type: crate::models::PagedResult<models::WeekendResponse>. */
727
751
  export interface ConfigIndexWeekendGetResponseItem extends JsonObject {
@@ -763,7 +787,7 @@ export interface ConfigShowWeekendGetResponse extends ApiEnvelope<ConfigShowWeek
763
787
  }
764
788
  /** Backend request type: models::UpdateWeekendRequest. */
765
789
  export interface ConfigUpdateWeekendPatchInput extends JsonObject {
766
- "day_of_week"?: number;
790
+ "day_of_week"?: number | null;
767
791
  }
768
792
  /** Backend response type: models::WeekendResponse. */
769
793
  export interface ConfigUpdateWeekendPatchResponseData extends JsonObject {
@@ -775,19 +799,20 @@ export interface ConfigUpdateWeekendPatchResponse extends ApiEnvelope<ConfigUpda
775
799
  }
776
800
  /** Backend query type: PaginationQuery. */
777
801
  export interface CourseIndexCourseGetQuery extends QueryParams {
778
- "page[number]"?: number;
779
- "page[size]"?: number;
802
+ "page_number"?: number | null;
803
+ "page_size"?: number | null;
780
804
  }
781
805
  /** Backend response type: crate::models::PagedResult<models::CourseResponse>. */
782
806
  export interface CourseIndexCourseGetResponseItem extends JsonObject {
783
807
  "id": number;
784
- "category_id"?: number;
808
+ "category_id"?: number | null;
785
809
  "name": string;
786
- "title"?: string;
787
- "description"?: string;
788
- "duration"?: string;
789
- "passing_mark"?: number;
790
- "price"?: string;
810
+ "title"?: string | null;
811
+ "description"?: string | null;
812
+ "sort_order": number;
813
+ "duration"?: string | null;
814
+ "passing_mark"?: number | null;
815
+ "price"?: string | null;
791
816
  "status": string;
792
817
  "created_at": string;
793
818
  "updated_at": string;
@@ -806,25 +831,27 @@ export interface CourseIndexCourseGetResponse extends ApiEnvelope<CourseIndexCou
806
831
  }
807
832
  /** Backend request type: models::CreateCourseRequest. */
808
833
  export interface CourseStoreCoursePostInput extends JsonObject {
809
- "category_id"?: number;
834
+ "category_id"?: number | null;
810
835
  "name": string;
811
- "title"?: string;
812
- "description"?: string;
813
- "duration"?: string;
814
- "passing_mark"?: number;
815
- "price"?: string;
836
+ "title"?: string | null;
837
+ "description"?: string | null;
838
+ "sort_order": number;
839
+ "duration"?: string | null;
840
+ "passing_mark"?: number | null;
841
+ "price"?: string | null;
816
842
  "status": string;
817
843
  }
818
844
  /** Backend response type: models::CourseResponse. */
819
845
  export interface CourseStoreCoursePostResponseData extends JsonObject {
820
846
  "id": number;
821
- "category_id"?: number;
847
+ "category_id"?: number | null;
822
848
  "name": string;
823
- "title"?: string;
824
- "description"?: string;
825
- "duration"?: string;
826
- "passing_mark"?: number;
827
- "price"?: string;
849
+ "title"?: string | null;
850
+ "description"?: string | null;
851
+ "sort_order": number;
852
+ "duration"?: string | null;
853
+ "passing_mark"?: number | null;
854
+ "price"?: string | null;
828
855
  "status": string;
829
856
  "created_at": string;
830
857
  "updated_at": string;
@@ -833,18 +860,19 @@ export interface CourseStoreCoursePostResponse extends ApiEnvelope<CourseStoreCo
833
860
  }
834
861
  /** Backend query type: PaginationQuery. */
835
862
  export interface CourseIndexSessionGetQuery extends QueryParams {
836
- "page[number]"?: number;
837
- "page[size]"?: number;
863
+ "page_number"?: number | null;
864
+ "page_size"?: number | null;
838
865
  }
839
866
  /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
840
867
  export interface CourseIndexSessionGetResponseItem extends JsonObject {
841
868
  "id": number;
842
869
  "course_id": number;
843
870
  "name": string;
844
- "description"?: string;
871
+ "description"?: string | null;
845
872
  "sort_order": number;
846
873
  "session_type": string;
847
- "duration_minutes"?: number;
874
+ "exam_id"?: number | null;
875
+ "duration_minutes"?: number | null;
848
876
  "auto_unlock": boolean;
849
877
  "status": string;
850
878
  "created_at": string;
@@ -866,10 +894,11 @@ export interface CourseIndexSessionGetResponse extends ApiEnvelope<CourseIndexSe
866
894
  export interface CourseStoreSessionPostInput extends JsonObject {
867
895
  "course_id": number;
868
896
  "name": string;
869
- "description"?: string;
897
+ "description"?: string | null;
870
898
  "sort_order": number;
871
899
  "session_type": string;
872
- "duration_minutes"?: number;
900
+ "exam_id"?: number | null;
901
+ "duration_minutes"?: number | null;
873
902
  "auto_unlock": boolean;
874
903
  "status": string;
875
904
  }
@@ -878,10 +907,11 @@ export interface CourseStoreSessionPostResponseData extends JsonObject {
878
907
  "id": number;
879
908
  "course_id": number;
880
909
  "name": string;
881
- "description"?: string;
910
+ "description"?: string | null;
882
911
  "sort_order": number;
883
912
  "session_type": string;
884
- "duration_minutes"?: number;
913
+ "exam_id"?: number | null;
914
+ "duration_minutes"?: number | null;
885
915
  "auto_unlock": boolean;
886
916
  "status": string;
887
917
  "created_at": string;
@@ -897,10 +927,11 @@ export interface CourseShowSessionGetResponseData extends JsonObject {
897
927
  "id": number;
898
928
  "course_id": number;
899
929
  "name": string;
900
- "description"?: string;
930
+ "description"?: string | null;
901
931
  "sort_order": number;
902
932
  "session_type": string;
903
- "duration_minutes"?: number;
933
+ "exam_id"?: number | null;
934
+ "duration_minutes"?: number | null;
904
935
  "auto_unlock": boolean;
905
936
  "status": string;
906
937
  "created_at": string;
@@ -910,23 +941,25 @@ export interface CourseShowSessionGetResponse extends ApiEnvelope<CourseShowSess
910
941
  }
911
942
  /** Backend request type: models::UpdateSessionRequest. */
912
943
  export interface CourseUpdateSessionPatchInput extends JsonObject {
913
- "name"?: string;
914
- "description"?: string;
915
- "sort_order"?: number;
916
- "session_type"?: string;
917
- "duration_minutes"?: number;
918
- "auto_unlock"?: boolean;
919
- "status"?: string;
944
+ "name"?: string | null;
945
+ "description"?: string | null;
946
+ "sort_order"?: number | null;
947
+ "session_type"?: string | null;
948
+ "exam_id"?: number | null;
949
+ "duration_minutes"?: number | null;
950
+ "auto_unlock"?: boolean | null;
951
+ "status"?: string | null;
920
952
  }
921
953
  /** Backend response type: models::SessionResponse. */
922
954
  export interface CourseUpdateSessionPatchResponseData extends JsonObject {
923
955
  "id": number;
924
956
  "course_id": number;
925
957
  "name": string;
926
- "description"?: string;
958
+ "description"?: string | null;
927
959
  "sort_order": number;
928
960
  "session_type": string;
929
- "duration_minutes"?: number;
961
+ "exam_id"?: number | null;
962
+ "duration_minutes"?: number | null;
930
963
  "auto_unlock": boolean;
931
964
  "status": string;
932
965
  "created_at": string;
@@ -940,13 +973,14 @@ export interface CourseDestroyCourseDeleteResponse extends ApiEnvelope<JsonValue
940
973
  /** Backend response type: models::CourseResponse. */
941
974
  export interface CourseShowCourseGetResponseData extends JsonObject {
942
975
  "id": number;
943
- "category_id"?: number;
976
+ "category_id"?: number | null;
944
977
  "name": string;
945
- "title"?: string;
946
- "description"?: string;
947
- "duration"?: string;
948
- "passing_mark"?: number;
949
- "price"?: string;
978
+ "title"?: string | null;
979
+ "description"?: string | null;
980
+ "sort_order": number;
981
+ "duration"?: string | null;
982
+ "passing_mark"?: number | null;
983
+ "price"?: string | null;
950
984
  "status": string;
951
985
  "created_at": string;
952
986
  "updated_at": string;
@@ -955,25 +989,27 @@ export interface CourseShowCourseGetResponse extends ApiEnvelope<CourseShowCours
955
989
  }
956
990
  /** Backend request type: models::UpdateCourseRequest. */
957
991
  export interface CourseUpdateCoursePatchInput extends JsonObject {
958
- "category_id"?: number;
959
- "name"?: string;
960
- "title"?: string;
961
- "description"?: string;
962
- "duration"?: string;
963
- "passing_mark"?: number;
964
- "price"?: string;
965
- "status"?: string;
992
+ "category_id"?: number | null;
993
+ "name"?: string | null;
994
+ "title"?: string | null;
995
+ "description"?: string | null;
996
+ "sort_order"?: number | null;
997
+ "duration"?: string | null;
998
+ "passing_mark"?: number | null;
999
+ "price"?: string | null;
1000
+ "status"?: string | null;
966
1001
  }
967
1002
  /** Backend response type: models::CourseResponse. */
968
1003
  export interface CourseUpdateCoursePatchResponseData extends JsonObject {
969
1004
  "id": number;
970
- "category_id"?: number;
1005
+ "category_id"?: number | null;
971
1006
  "name": string;
972
- "title"?: string;
973
- "description"?: string;
974
- "duration"?: string;
975
- "passing_mark"?: number;
976
- "price"?: string;
1007
+ "title"?: string | null;
1008
+ "description"?: string | null;
1009
+ "sort_order": number;
1010
+ "duration"?: string | null;
1011
+ "passing_mark"?: number | null;
1012
+ "price"?: string | null;
977
1013
  "status": string;
978
1014
  "created_at": string;
979
1015
  "updated_at": string;
@@ -982,14 +1018,14 @@ export interface CourseUpdateCoursePatchResponse extends ApiEnvelope<CourseUpdat
982
1018
  }
983
1019
  /** Backend query type: PaginationQuery. */
984
1020
  export interface CourseIndexCategoryGetQuery extends QueryParams {
985
- "page[number]"?: number;
986
- "page[size]"?: number;
1021
+ "page_number"?: number | null;
1022
+ "page_size"?: number | null;
987
1023
  }
988
1024
  /** Backend response type: crate::models::PagedResult<models::CategoryResponse>. */
989
1025
  export interface CourseIndexCategoryGetResponseItem extends JsonObject {
990
1026
  "id": number;
991
1027
  "name": string;
992
- "description"?: string;
1028
+ "description"?: string | null;
993
1029
  "sort_order": number;
994
1030
  "status": string;
995
1031
  "created_at": string;
@@ -1010,7 +1046,7 @@ export interface CourseIndexCategoryGetResponse extends ApiEnvelope<CourseIndexC
1010
1046
  /** Backend request type: models::CreateCategoryRequest. */
1011
1047
  export interface CourseStoreCategoryPostInput extends JsonObject {
1012
1048
  "name": string;
1013
- "description"?: string;
1049
+ "description"?: string | null;
1014
1050
  "sort_order": number;
1015
1051
  "status": string;
1016
1052
  }
@@ -1018,7 +1054,7 @@ export interface CourseStoreCategoryPostInput extends JsonObject {
1018
1054
  export interface CourseStoreCategoryPostResponseData extends JsonObject {
1019
1055
  "id": number;
1020
1056
  "name": string;
1021
- "description"?: string;
1057
+ "description"?: string | null;
1022
1058
  "sort_order": number;
1023
1059
  "status": string;
1024
1060
  "created_at": string;
@@ -1033,7 +1069,7 @@ export interface CourseDestroyCategoryDeleteResponse extends ApiEnvelope<JsonVal
1033
1069
  export interface CourseShowCategoryGetResponseData extends JsonObject {
1034
1070
  "id": number;
1035
1071
  "name": string;
1036
- "description"?: string;
1072
+ "description"?: string | null;
1037
1073
  "sort_order": number;
1038
1074
  "status": string;
1039
1075
  "created_at": string;
@@ -1043,16 +1079,16 @@ export interface CourseShowCategoryGetResponse extends ApiEnvelope<CourseShowCat
1043
1079
  }
1044
1080
  /** Backend request type: models::UpdateCategoryRequest. */
1045
1081
  export interface CourseUpdateCategoryPatchInput extends JsonObject {
1046
- "name"?: string;
1047
- "description"?: string;
1048
- "sort_order"?: number;
1049
- "status"?: string;
1082
+ "name"?: string | null;
1083
+ "description"?: string | null;
1084
+ "sort_order"?: number | null;
1085
+ "status"?: string | null;
1050
1086
  }
1051
1087
  /** Backend response type: models::CategoryResponse. */
1052
1088
  export interface CourseUpdateCategoryPatchResponseData extends JsonObject {
1053
1089
  "id": number;
1054
1090
  "name": string;
1055
- "description"?: string;
1091
+ "description"?: string | null;
1056
1092
  "sort_order": number;
1057
1093
  "status": string;
1058
1094
  "created_at": string;
@@ -1062,20 +1098,20 @@ export interface CourseUpdateCategoryPatchResponse extends ApiEnvelope<CourseUpd
1062
1098
  }
1063
1099
  /** Backend query type: PaginationQuery. */
1064
1100
  export interface CourseIndexVideoSectionGetQuery extends QueryParams {
1065
- "page[number]"?: number;
1066
- "page[size]"?: number;
1101
+ "page_number"?: number | null;
1102
+ "page_size"?: number | null;
1067
1103
  }
1068
1104
  /** Backend response type: crate::models::PagedResult<models::VideoSectionResponse>. */
1069
1105
  export interface CourseIndexVideoSectionGetResponseItem extends JsonObject {
1070
1106
  "id": number;
1071
1107
  "course_id": number;
1072
- "course_session_id"?: number;
1108
+ "course_session_id"?: number | null;
1073
1109
  "name": string;
1074
1110
  "sort_order": number;
1075
- "media_url"?: string;
1111
+ "media_url"?: string | null;
1076
1112
  "video_type": string;
1077
- "external_url"?: string;
1078
- "drm_url"?: string;
1113
+ "external_url"?: string | null;
1114
+ "drm_url"?: string | null;
1079
1115
  "created_at": string;
1080
1116
  "updated_at": string;
1081
1117
  }
@@ -1094,25 +1130,25 @@ export interface CourseIndexVideoSectionGetResponse extends ApiEnvelope<CourseIn
1094
1130
  /** Backend request type: models::CreateVideoSectionRequest. */
1095
1131
  export interface CourseStoreVideoSectionPostInput extends JsonObject {
1096
1132
  "course_id": number;
1097
- "course_session_id"?: number;
1133
+ "course_session_id"?: number | null;
1098
1134
  "name": string;
1099
1135
  "sort_order": number;
1100
- "media_url"?: string;
1101
- "video_type"?: string;
1102
- "external_url"?: string;
1103
- "drm_url"?: string;
1136
+ "media_url"?: string | null;
1137
+ "video_type"?: string | null;
1138
+ "external_url"?: string | null;
1139
+ "drm_url"?: string | null;
1104
1140
  }
1105
1141
  /** Backend response type: models::VideoSectionResponse. */
1106
1142
  export interface CourseStoreVideoSectionPostResponseData extends JsonObject {
1107
1143
  "id": number;
1108
1144
  "course_id": number;
1109
- "course_session_id"?: number;
1145
+ "course_session_id"?: number | null;
1110
1146
  "name": string;
1111
1147
  "sort_order": number;
1112
- "media_url"?: string;
1148
+ "media_url"?: string | null;
1113
1149
  "video_type": string;
1114
- "external_url"?: string;
1115
- "drm_url"?: string;
1150
+ "external_url"?: string | null;
1151
+ "drm_url"?: string | null;
1116
1152
  "created_at": string;
1117
1153
  "updated_at": string;
1118
1154
  }
@@ -1125,13 +1161,13 @@ export interface CourseDestroyVideoSectionDeleteResponse extends ApiEnvelope<Jso
1125
1161
  export interface CourseShowVideoSectionGetResponseData extends JsonObject {
1126
1162
  "id": number;
1127
1163
  "course_id": number;
1128
- "course_session_id"?: number;
1164
+ "course_session_id"?: number | null;
1129
1165
  "name": string;
1130
1166
  "sort_order": number;
1131
- "media_url"?: string;
1167
+ "media_url"?: string | null;
1132
1168
  "video_type": string;
1133
- "external_url"?: string;
1134
- "drm_url"?: string;
1169
+ "external_url"?: string | null;
1170
+ "drm_url"?: string | null;
1135
1171
  "created_at": string;
1136
1172
  "updated_at": string;
1137
1173
  }
@@ -1139,26 +1175,26 @@ export interface CourseShowVideoSectionGetResponse extends ApiEnvelope<CourseSho
1139
1175
  }
1140
1176
  /** Backend request type: models::UpdateVideoSectionRequest. */
1141
1177
  export interface CourseUpdateVideoSectionPatchInput extends JsonObject {
1142
- "course_id"?: number;
1143
- "course_session_id"?: number;
1144
- "name"?: string;
1145
- "sort_order"?: number;
1146
- "media_url"?: string;
1147
- "video_type"?: string;
1148
- "external_url"?: string;
1149
- "drm_url"?: string;
1178
+ "course_id"?: number | null;
1179
+ "course_session_id"?: number | null;
1180
+ "name"?: string | null;
1181
+ "sort_order"?: number | null;
1182
+ "media_url"?: string | null;
1183
+ "video_type"?: string | null;
1184
+ "external_url"?: string | null;
1185
+ "drm_url"?: string | null;
1150
1186
  }
1151
1187
  /** Backend response type: models::VideoSectionResponse. */
1152
1188
  export interface CourseUpdateVideoSectionPatchResponseData extends JsonObject {
1153
1189
  "id": number;
1154
1190
  "course_id": number;
1155
- "course_session_id"?: number;
1191
+ "course_session_id"?: number | null;
1156
1192
  "name": string;
1157
1193
  "sort_order": number;
1158
- "media_url"?: string;
1194
+ "media_url"?: string | null;
1159
1195
  "video_type": string;
1160
- "external_url"?: string;
1161
- "drm_url"?: string;
1196
+ "external_url"?: string | null;
1197
+ "drm_url"?: string | null;
1162
1198
  "created_at": string;
1163
1199
  "updated_at": string;
1164
1200
  }
@@ -1187,17 +1223,17 @@ export interface DocsIntegrationGetResponse extends ApiEnvelope<DocsIntegrationG
1187
1223
  }
1188
1224
  /** Backend query type: PaginationQuery. */
1189
1225
  export interface EventIndexEventGetQuery extends QueryParams {
1190
- "page[number]"?: number;
1191
- "page[size]"?: number;
1226
+ "page_number"?: number | null;
1227
+ "page_size"?: number | null;
1192
1228
  }
1193
1229
  /** Backend response type: crate::models::PagedResult<models::EventResponse>. */
1194
1230
  export interface EventIndexEventGetResponseItem extends JsonObject {
1195
1231
  "id": number;
1196
- "event_type_id"?: number;
1232
+ "event_type_id"?: number | null;
1197
1233
  "name": string;
1198
- "description"?: string;
1199
- "starts_at"?: string;
1200
- "ends_at"?: string;
1234
+ "description"?: string | null;
1235
+ "starts_at"?: string | null;
1236
+ "ends_at"?: string | null;
1201
1237
  "status": string;
1202
1238
  "created_at": string;
1203
1239
  "updated_at": string;
@@ -1216,21 +1252,21 @@ export interface EventIndexEventGetResponse extends ApiEnvelope<EventIndexEventG
1216
1252
  }
1217
1253
  /** Backend request type: models::CreateEventRequest. */
1218
1254
  export interface EventStoreEventPostInput extends JsonObject {
1219
- "event_type_id"?: number;
1255
+ "event_type_id"?: number | null;
1220
1256
  "name": string;
1221
- "description"?: string;
1222
- "starts_at"?: string;
1223
- "ends_at"?: string;
1257
+ "description"?: string | null;
1258
+ "starts_at"?: string | null;
1259
+ "ends_at"?: string | null;
1224
1260
  "status": string;
1225
1261
  }
1226
1262
  /** Backend response type: models::EventResponse. */
1227
1263
  export interface EventStoreEventPostResponseData extends JsonObject {
1228
1264
  "id": number;
1229
- "event_type_id"?: number;
1265
+ "event_type_id"?: number | null;
1230
1266
  "name": string;
1231
- "description"?: string;
1232
- "starts_at"?: string;
1233
- "ends_at"?: string;
1267
+ "description"?: string | null;
1268
+ "starts_at"?: string | null;
1269
+ "ends_at"?: string | null;
1234
1270
  "status": string;
1235
1271
  "created_at": string;
1236
1272
  "updated_at": string;
@@ -1239,8 +1275,8 @@ export interface EventStoreEventPostResponse extends ApiEnvelope<EventStoreEvent
1239
1275
  }
1240
1276
  /** Backend query type: PaginationQuery. */
1241
1277
  export interface EventIndexUserGetQuery extends QueryParams {
1242
- "page[number]"?: number;
1243
- "page[size]"?: number;
1278
+ "page_number"?: number | null;
1279
+ "page_size"?: number | null;
1244
1280
  }
1245
1281
  /** Backend response type: crate::models::PagedResult<models::UserResponse>. */
1246
1282
  export interface EventIndexUserGetResponseItem extends JsonObject {
@@ -1290,8 +1326,8 @@ export interface EventShowUserGetResponse extends ApiEnvelope<EventShowUserGetRe
1290
1326
  }
1291
1327
  /** Backend request type: models::UpdateUserRequest. */
1292
1328
  export interface EventUpdateUserPatchInput extends JsonObject {
1293
- "user_id"?: string;
1294
- "status"?: string;
1329
+ "user_id"?: string | null;
1330
+ "status"?: string | null;
1295
1331
  }
1296
1332
  /** Backend response type: models::UserResponse. */
1297
1333
  export interface EventUpdateUserPatchResponseData extends JsonObject {
@@ -1306,11 +1342,11 @@ export interface EventUpdateUserPatchResponse extends ApiEnvelope<EventUpdateUse
1306
1342
  /** Backend response type: models::EventResponse. */
1307
1343
  export interface EventShowEventGetResponseData extends JsonObject {
1308
1344
  "id": number;
1309
- "event_type_id"?: number;
1345
+ "event_type_id"?: number | null;
1310
1346
  "name": string;
1311
- "description"?: string;
1312
- "starts_at"?: string;
1313
- "ends_at"?: string;
1347
+ "description"?: string | null;
1348
+ "starts_at"?: string | null;
1349
+ "ends_at"?: string | null;
1314
1350
  "status": string;
1315
1351
  "created_at": string;
1316
1352
  "updated_at": string;
@@ -1319,21 +1355,21 @@ export interface EventShowEventGetResponse extends ApiEnvelope<EventShowEventGet
1319
1355
  }
1320
1356
  /** Backend request type: models::UpdateEventRequest. */
1321
1357
  export interface EventUpdateEventPatchInput extends JsonObject {
1322
- "event_type_id"?: number;
1323
- "name"?: string;
1324
- "description"?: string;
1325
- "starts_at"?: string;
1326
- "ends_at"?: string;
1327
- "status"?: string;
1358
+ "event_type_id"?: number | null;
1359
+ "name"?: string | null;
1360
+ "description"?: string | null;
1361
+ "starts_at"?: string | null;
1362
+ "ends_at"?: string | null;
1363
+ "status"?: string | null;
1328
1364
  }
1329
1365
  /** Backend response type: models::EventResponse. */
1330
1366
  export interface EventUpdateEventPatchResponseData extends JsonObject {
1331
1367
  "id": number;
1332
- "event_type_id"?: number;
1368
+ "event_type_id"?: number | null;
1333
1369
  "name": string;
1334
- "description"?: string;
1335
- "starts_at"?: string;
1336
- "ends_at"?: string;
1370
+ "description"?: string | null;
1371
+ "starts_at"?: string | null;
1372
+ "ends_at"?: string | null;
1337
1373
  "status": string;
1338
1374
  "created_at": string;
1339
1375
  "updated_at": string;
@@ -1342,16 +1378,16 @@ export interface EventUpdateEventPatchResponse extends ApiEnvelope<EventUpdateEv
1342
1378
  }
1343
1379
  /** Backend query type: PaginationQuery. */
1344
1380
  export interface EventIndexSessionGetQuery extends QueryParams {
1345
- "page[number]"?: number;
1346
- "page[size]"?: number;
1381
+ "page_number"?: number | null;
1382
+ "page_size"?: number | null;
1347
1383
  }
1348
1384
  /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
1349
1385
  export interface EventIndexSessionGetResponseItem extends JsonObject {
1350
1386
  "id": number;
1351
1387
  "event_id": number;
1352
- "name"?: string;
1353
- "starts_at"?: string;
1354
- "ends_at"?: string;
1388
+ "name"?: string | null;
1389
+ "starts_at"?: string | null;
1390
+ "ends_at"?: string | null;
1355
1391
  "created_at": string;
1356
1392
  }
1357
1393
  export interface EventIndexSessionGetResponsePageMeta extends JsonObject {
@@ -1369,17 +1405,17 @@ export interface EventIndexSessionGetResponse extends ApiEnvelope<EventIndexSess
1369
1405
  /** Backend request type: models::CreateSessionRequest. */
1370
1406
  export interface EventStoreSessionPostInput extends JsonObject {
1371
1407
  "event_id": number;
1372
- "name"?: string;
1373
- "starts_at"?: string;
1374
- "ends_at"?: string;
1408
+ "name"?: string | null;
1409
+ "starts_at"?: string | null;
1410
+ "ends_at"?: string | null;
1375
1411
  }
1376
1412
  /** Backend response type: models::SessionResponse. */
1377
1413
  export interface EventStoreSessionPostResponseData extends JsonObject {
1378
1414
  "id": number;
1379
1415
  "event_id": number;
1380
- "name"?: string;
1381
- "starts_at"?: string;
1382
- "ends_at"?: string;
1416
+ "name"?: string | null;
1417
+ "starts_at"?: string | null;
1418
+ "ends_at"?: string | null;
1383
1419
  "created_at": string;
1384
1420
  }
1385
1421
  export interface EventStoreSessionPostResponse extends ApiEnvelope<EventStoreSessionPostResponseData> {
@@ -1388,44 +1424,44 @@ export interface EventStoreSessionPostResponse extends ApiEnvelope<EventStoreSes
1388
1424
  export interface EventShowSessionGetResponseData extends JsonObject {
1389
1425
  "id": number;
1390
1426
  "event_id": number;
1391
- "name"?: string;
1392
- "starts_at"?: string;
1393
- "ends_at"?: string;
1427
+ "name"?: string | null;
1428
+ "starts_at"?: string | null;
1429
+ "ends_at"?: string | null;
1394
1430
  "created_at": string;
1395
1431
  }
1396
1432
  export interface EventShowSessionGetResponse extends ApiEnvelope<EventShowSessionGetResponseData> {
1397
1433
  }
1398
1434
  /** Backend request type: models::UpdateSessionRequest. */
1399
1435
  export interface EventUpdateSessionPatchInput extends JsonObject {
1400
- "event_id"?: number;
1401
- "name"?: string;
1402
- "starts_at"?: string;
1403
- "ends_at"?: string;
1436
+ "event_id"?: number | null;
1437
+ "name"?: string | null;
1438
+ "starts_at"?: string | null;
1439
+ "ends_at"?: string | null;
1404
1440
  }
1405
1441
  /** Backend response type: models::SessionResponse. */
1406
1442
  export interface EventUpdateSessionPatchResponseData extends JsonObject {
1407
1443
  "id": number;
1408
1444
  "event_id": number;
1409
- "name"?: string;
1410
- "starts_at"?: string;
1411
- "ends_at"?: string;
1445
+ "name"?: string | null;
1446
+ "starts_at"?: string | null;
1447
+ "ends_at"?: string | null;
1412
1448
  "created_at": string;
1413
1449
  }
1414
1450
  export interface EventUpdateSessionPatchResponse extends ApiEnvelope<EventUpdateSessionPatchResponseData> {
1415
1451
  }
1416
1452
  /** Backend query type: PaginationQuery. */
1417
1453
  export interface ExamIndexExamGetQuery extends QueryParams {
1418
- "page[number]"?: number;
1419
- "page[size]"?: number;
1454
+ "page_number"?: number | null;
1455
+ "page_size"?: number | null;
1420
1456
  }
1421
1457
  /** Backend response type: crate::models::PagedResult<models::ExamResponse>. */
1422
1458
  export interface ExamIndexExamGetResponseItem extends JsonObject {
1423
1459
  "id": number;
1424
- "course_id"?: number;
1460
+ "course_id"?: number | null;
1425
1461
  "name": string;
1426
- "description"?: string;
1427
- "duration_minutes"?: number;
1428
- "passing_mark"?: number;
1462
+ "description"?: string | null;
1463
+ "duration_minutes"?: number | null;
1464
+ "passing_mark"?: number | null;
1429
1465
  "status": string;
1430
1466
  "created_at": string;
1431
1467
  "updated_at": string;
@@ -1444,35 +1480,38 @@ export interface ExamIndexExamGetResponse extends ApiEnvelope<ExamIndexExamGetRe
1444
1480
  }
1445
1481
  /** Backend request type: models::CreateExamRequest. */
1446
1482
  export interface ExamStoreExamPostInput extends JsonObject {
1447
- "course_id"?: number;
1483
+ "course_id"?: number | null;
1448
1484
  "name": string;
1449
- "description"?: string;
1450
- "duration_minutes"?: number;
1451
- "passing_mark"?: number;
1485
+ "description"?: string | null;
1486
+ "duration_minutes"?: number | null;
1487
+ "passing_mark"?: number | null;
1452
1488
  "status": string;
1453
1489
  }
1454
1490
  /** Backend response type: models::ExamResponse. */
1455
1491
  export interface ExamStoreExamPostResponseData extends JsonObject {
1456
1492
  "id": number;
1457
- "course_id"?: number;
1493
+ "course_id"?: number | null;
1458
1494
  "name": string;
1459
- "description"?: string;
1460
- "duration_minutes"?: number;
1461
- "passing_mark"?: number;
1495
+ "description"?: string | null;
1496
+ "duration_minutes"?: number | null;
1497
+ "passing_mark"?: number | null;
1462
1498
  "status": string;
1463
1499
  "created_at": string;
1464
1500
  "updated_at": string;
1465
1501
  }
1466
1502
  export interface ExamStoreExamPostResponse extends ApiEnvelope<ExamStoreExamPostResponseData> {
1467
1503
  }
1504
+ /** Backend response type: serde_json::Value. */
1505
+ export interface ExamDestroyExamDeleteResponse extends ApiEnvelope<JsonValue> {
1506
+ }
1468
1507
  /** Backend response type: models::ExamResponse. */
1469
1508
  export interface ExamShowExamGetResponseData extends JsonObject {
1470
1509
  "id": number;
1471
- "course_id"?: number;
1510
+ "course_id"?: number | null;
1472
1511
  "name": string;
1473
- "description"?: string;
1474
- "duration_minutes"?: number;
1475
- "passing_mark"?: number;
1512
+ "description"?: string | null;
1513
+ "duration_minutes"?: number | null;
1514
+ "passing_mark"?: number | null;
1476
1515
  "status": string;
1477
1516
  "created_at": string;
1478
1517
  "updated_at": string;
@@ -1481,21 +1520,21 @@ export interface ExamShowExamGetResponse extends ApiEnvelope<ExamShowExamGetResp
1481
1520
  }
1482
1521
  /** Backend request type: models::UpdateExamRequest. */
1483
1522
  export interface ExamUpdateExamPatchInput extends JsonObject {
1484
- "course_id"?: number;
1485
- "name"?: string;
1486
- "description"?: string;
1487
- "duration_minutes"?: number;
1488
- "passing_mark"?: number;
1489
- "status"?: string;
1523
+ "course_id"?: number | null;
1524
+ "name"?: string | null;
1525
+ "description"?: string | null;
1526
+ "duration_minutes"?: number | null;
1527
+ "passing_mark"?: number | null;
1528
+ "status"?: string | null;
1490
1529
  }
1491
1530
  /** Backend response type: models::ExamResponse. */
1492
1531
  export interface ExamUpdateExamPatchResponseData extends JsonObject {
1493
1532
  "id": number;
1494
- "course_id"?: number;
1533
+ "course_id"?: number | null;
1495
1534
  "name": string;
1496
- "description"?: string;
1497
- "duration_minutes"?: number;
1498
- "passing_mark"?: number;
1535
+ "description"?: string | null;
1536
+ "duration_minutes"?: number | null;
1537
+ "passing_mark"?: number | null;
1499
1538
  "status": string;
1500
1539
  "created_at": string;
1501
1540
  "updated_at": string;
@@ -1504,17 +1543,17 @@ export interface ExamUpdateExamPatchResponse extends ApiEnvelope<ExamUpdateExamP
1504
1543
  }
1505
1544
  /** Backend query type: PaginationQuery. */
1506
1545
  export interface ExamIndexQuestionGetQuery extends QueryParams {
1507
- "page[number]"?: number;
1508
- "page[size]"?: number;
1546
+ "page_number"?: number | null;
1547
+ "page_size"?: number | null;
1509
1548
  }
1510
1549
  /** Backend response type: crate::models::PagedResult<models::QuestionResponse>. */
1511
1550
  export interface ExamIndexQuestionGetResponseItem extends JsonObject {
1512
1551
  "id": number;
1513
- "exam_id"?: number;
1552
+ "exam_id"?: number | null;
1514
1553
  "question_text": string;
1515
1554
  "question_type": string;
1516
- "options"?: JsonValue;
1517
- "correct_answer"?: string;
1555
+ "options"?: JsonValue | null;
1556
+ "correct_answer"?: string | null;
1518
1557
  "sort_order": number;
1519
1558
  "created_at": string;
1520
1559
  }
@@ -1532,34 +1571,37 @@ export interface ExamIndexQuestionGetResponse extends ApiEnvelope<ExamIndexQuest
1532
1571
  }
1533
1572
  /** Backend request type: models::CreateQuestionRequest. */
1534
1573
  export interface ExamStoreQuestionPostInput extends JsonObject {
1535
- "exam_id"?: number;
1574
+ "exam_id"?: number | null;
1536
1575
  "question_text": string;
1537
1576
  "question_type": string;
1538
- "options"?: JsonValue;
1539
- "correct_answer"?: string;
1577
+ "options"?: JsonValue | null;
1578
+ "correct_answer"?: string | null;
1540
1579
  "sort_order": number;
1541
1580
  }
1542
1581
  /** Backend response type: models::QuestionResponse. */
1543
1582
  export interface ExamStoreQuestionPostResponseData extends JsonObject {
1544
1583
  "id": number;
1545
- "exam_id"?: number;
1584
+ "exam_id"?: number | null;
1546
1585
  "question_text": string;
1547
1586
  "question_type": string;
1548
- "options"?: JsonValue;
1549
- "correct_answer"?: string;
1587
+ "options"?: JsonValue | null;
1588
+ "correct_answer"?: string | null;
1550
1589
  "sort_order": number;
1551
1590
  "created_at": string;
1552
1591
  }
1553
1592
  export interface ExamStoreQuestionPostResponse extends ApiEnvelope<ExamStoreQuestionPostResponseData> {
1554
1593
  }
1594
+ /** Backend response type: serde_json::Value. */
1595
+ export interface ExamDestroyQuestionDeleteResponse extends ApiEnvelope<JsonValue> {
1596
+ }
1555
1597
  /** Backend response type: models::QuestionResponse. */
1556
1598
  export interface ExamShowQuestionGetResponseData extends JsonObject {
1557
1599
  "id": number;
1558
- "exam_id"?: number;
1600
+ "exam_id"?: number | null;
1559
1601
  "question_text": string;
1560
1602
  "question_type": string;
1561
- "options"?: JsonValue;
1562
- "correct_answer"?: string;
1603
+ "options"?: JsonValue | null;
1604
+ "correct_answer"?: string | null;
1563
1605
  "sort_order": number;
1564
1606
  "created_at": string;
1565
1607
  }
@@ -1567,21 +1609,21 @@ export interface ExamShowQuestionGetResponse extends ApiEnvelope<ExamShowQuestio
1567
1609
  }
1568
1610
  /** Backend request type: models::UpdateQuestionRequest. */
1569
1611
  export interface ExamUpdateQuestionPatchInput extends JsonObject {
1570
- "exam_id"?: number;
1571
- "question_text"?: string;
1572
- "question_type"?: string;
1573
- "options"?: JsonValue;
1574
- "correct_answer"?: string;
1575
- "sort_order"?: number;
1612
+ "exam_id"?: number | null;
1613
+ "question_text"?: string | null;
1614
+ "question_type"?: string | null;
1615
+ "options"?: JsonValue | null;
1616
+ "correct_answer"?: string | null;
1617
+ "sort_order"?: number | null;
1576
1618
  }
1577
1619
  /** Backend response type: models::QuestionResponse. */
1578
1620
  export interface ExamUpdateQuestionPatchResponseData extends JsonObject {
1579
1621
  "id": number;
1580
- "exam_id"?: number;
1622
+ "exam_id"?: number | null;
1581
1623
  "question_text": string;
1582
1624
  "question_type": string;
1583
- "options"?: JsonValue;
1584
- "correct_answer"?: string;
1625
+ "options"?: JsonValue | null;
1626
+ "correct_answer"?: string | null;
1585
1627
  "sort_order": number;
1586
1628
  "created_at": string;
1587
1629
  }
@@ -1589,16 +1631,16 @@ export interface ExamUpdateQuestionPatchResponse extends ApiEnvelope<ExamUpdateQ
1589
1631
  }
1590
1632
  /** Backend query type: PaginationQuery. */
1591
1633
  export interface ExamIndexSessionGetQuery extends QueryParams {
1592
- "page[number]"?: number;
1593
- "page[size]"?: number;
1634
+ "page_number"?: number | null;
1635
+ "page_size"?: number | null;
1594
1636
  }
1595
1637
  /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
1596
1638
  export interface ExamIndexSessionGetResponseItem extends JsonObject {
1597
1639
  "id": number;
1598
1640
  "exam_id": number;
1599
- "classroom_id"?: number;
1600
- "starts_at"?: string;
1601
- "ends_at"?: string;
1641
+ "classroom_id"?: number | null;
1642
+ "starts_at"?: string | null;
1643
+ "ends_at"?: string | null;
1602
1644
  "status": string;
1603
1645
  "created_at": string;
1604
1646
  }
@@ -1617,18 +1659,18 @@ export interface ExamIndexSessionGetResponse extends ApiEnvelope<ExamIndexSessio
1617
1659
  /** Backend request type: models::CreateSessionRequest. */
1618
1660
  export interface ExamStoreSessionPostInput extends JsonObject {
1619
1661
  "exam_id": number;
1620
- "classroom_id"?: number;
1621
- "starts_at"?: string;
1622
- "ends_at"?: string;
1662
+ "classroom_id"?: number | null;
1663
+ "starts_at"?: string | null;
1664
+ "ends_at"?: string | null;
1623
1665
  "status": string;
1624
1666
  }
1625
1667
  /** Backend response type: models::SessionResponse. */
1626
1668
  export interface ExamStoreSessionPostResponseData extends JsonObject {
1627
1669
  "id": number;
1628
1670
  "exam_id": number;
1629
- "classroom_id"?: number;
1630
- "starts_at"?: string;
1631
- "ends_at"?: string;
1671
+ "classroom_id"?: number | null;
1672
+ "starts_at"?: string | null;
1673
+ "ends_at"?: string | null;
1632
1674
  "status": string;
1633
1675
  "created_at": string;
1634
1676
  }
@@ -1638,9 +1680,9 @@ export interface ExamStoreSessionPostResponse extends ApiEnvelope<ExamStoreSessi
1638
1680
  export interface ExamShowSessionGetResponseData extends JsonObject {
1639
1681
  "id": number;
1640
1682
  "exam_id": number;
1641
- "classroom_id"?: number;
1642
- "starts_at"?: string;
1643
- "ends_at"?: string;
1683
+ "classroom_id"?: number | null;
1684
+ "starts_at"?: string | null;
1685
+ "ends_at"?: string | null;
1644
1686
  "status": string;
1645
1687
  "created_at": string;
1646
1688
  }
@@ -1648,19 +1690,19 @@ export interface ExamShowSessionGetResponse extends ApiEnvelope<ExamShowSessionG
1648
1690
  }
1649
1691
  /** Backend request type: models::UpdateSessionRequest. */
1650
1692
  export interface ExamUpdateSessionPatchInput extends JsonObject {
1651
- "exam_id"?: number;
1652
- "classroom_id"?: number;
1653
- "starts_at"?: string;
1654
- "ends_at"?: string;
1655
- "status"?: string;
1693
+ "exam_id"?: number | null;
1694
+ "classroom_id"?: number | null;
1695
+ "starts_at"?: string | null;
1696
+ "ends_at"?: string | null;
1697
+ "status"?: string | null;
1656
1698
  }
1657
1699
  /** Backend response type: models::SessionResponse. */
1658
1700
  export interface ExamUpdateSessionPatchResponseData extends JsonObject {
1659
1701
  "id": number;
1660
1702
  "exam_id": number;
1661
- "classroom_id"?: number;
1662
- "starts_at"?: string;
1663
- "ends_at"?: string;
1703
+ "classroom_id"?: number | null;
1704
+ "starts_at"?: string | null;
1705
+ "ends_at"?: string | null;
1664
1706
  "status": string;
1665
1707
  "created_at": string;
1666
1708
  }
@@ -1668,15 +1710,15 @@ export interface ExamUpdateSessionPatchResponse extends ApiEnvelope<ExamUpdateSe
1668
1710
  }
1669
1711
  /** Backend query type: PaginationQuery. */
1670
1712
  export interface HomeworkIndexHomeworkGetQuery extends QueryParams {
1671
- "page[number]"?: number;
1672
- "page[size]"?: number;
1713
+ "page_number"?: number | null;
1714
+ "page_size"?: number | null;
1673
1715
  }
1674
1716
  /** Backend response type: crate::models::PagedResult<models::HomeworkResponse>. */
1675
1717
  export interface HomeworkIndexHomeworkGetResponseItem extends JsonObject {
1676
1718
  "id": number;
1677
- "course_id"?: number;
1719
+ "course_id"?: number | null;
1678
1720
  "name": string;
1679
- "description"?: string;
1721
+ "description"?: string | null;
1680
1722
  "status": string;
1681
1723
  "created_at": string;
1682
1724
  "updated_at": string;
@@ -1695,17 +1737,17 @@ export interface HomeworkIndexHomeworkGetResponse extends ApiEnvelope<HomeworkIn
1695
1737
  }
1696
1738
  /** Backend request type: models::CreateHomeworkRequest. */
1697
1739
  export interface HomeworkStoreHomeworkPostInput extends JsonObject {
1698
- "course_id"?: number;
1740
+ "course_id"?: number | null;
1699
1741
  "name": string;
1700
- "description"?: string;
1742
+ "description"?: string | null;
1701
1743
  "status": string;
1702
1744
  }
1703
1745
  /** Backend response type: models::HomeworkResponse. */
1704
1746
  export interface HomeworkStoreHomeworkPostResponseData extends JsonObject {
1705
1747
  "id": number;
1706
- "course_id"?: number;
1748
+ "course_id"?: number | null;
1707
1749
  "name": string;
1708
- "description"?: string;
1750
+ "description"?: string | null;
1709
1751
  "status": string;
1710
1752
  "created_at": string;
1711
1753
  "updated_at": string;
@@ -1715,9 +1757,9 @@ export interface HomeworkStoreHomeworkPostResponse extends ApiEnvelope<HomeworkS
1715
1757
  /** Backend response type: models::HomeworkResponse. */
1716
1758
  export interface HomeworkShowHomeworkGetResponseData extends JsonObject {
1717
1759
  "id": number;
1718
- "course_id"?: number;
1760
+ "course_id"?: number | null;
1719
1761
  "name": string;
1720
- "description"?: string;
1762
+ "description"?: string | null;
1721
1763
  "status": string;
1722
1764
  "created_at": string;
1723
1765
  "updated_at": string;
@@ -1726,17 +1768,17 @@ export interface HomeworkShowHomeworkGetResponse extends ApiEnvelope<HomeworkSho
1726
1768
  }
1727
1769
  /** Backend request type: models::UpdateHomeworkRequest. */
1728
1770
  export interface HomeworkUpdateHomeworkPatchInput extends JsonObject {
1729
- "course_id"?: number;
1730
- "name"?: string;
1731
- "description"?: string;
1732
- "status"?: string;
1771
+ "course_id"?: number | null;
1772
+ "name"?: string | null;
1773
+ "description"?: string | null;
1774
+ "status"?: string | null;
1733
1775
  }
1734
1776
  /** Backend response type: models::HomeworkResponse. */
1735
1777
  export interface HomeworkUpdateHomeworkPatchResponseData extends JsonObject {
1736
1778
  "id": number;
1737
- "course_id"?: number;
1779
+ "course_id"?: number | null;
1738
1780
  "name": string;
1739
- "description"?: string;
1781
+ "description"?: string | null;
1740
1782
  "status": string;
1741
1783
  "created_at": string;
1742
1784
  "updated_at": string;
@@ -1745,19 +1787,19 @@ export interface HomeworkUpdateHomeworkPatchResponse extends ApiEnvelope<Homewor
1745
1787
  }
1746
1788
  /** Backend query type: PaginationQuery. */
1747
1789
  export interface HomeworkIndexAssignmentGetQuery extends QueryParams {
1748
- "page[number]"?: number;
1749
- "page[size]"?: number;
1790
+ "page_number"?: number | null;
1791
+ "page_size"?: number | null;
1750
1792
  }
1751
1793
  /** Backend response type: crate::models::PagedResult<models::AssignmentResponse>. */
1752
1794
  export interface HomeworkIndexAssignmentGetResponseItem extends JsonObject {
1753
1795
  "id": number;
1754
1796
  "homework_id": number;
1755
- "classroom_id"?: number;
1756
- "user_id"?: string;
1757
- "due_at"?: string;
1797
+ "classroom_id"?: number | null;
1798
+ "user_id"?: string | null;
1799
+ "due_at"?: string | null;
1758
1800
  "status": string;
1759
- "answer_text"?: string;
1760
- "score"?: number;
1801
+ "answer_text"?: string | null;
1802
+ "score"?: number | null;
1761
1803
  "created_at": string;
1762
1804
  "updated_at": string;
1763
1805
  }
@@ -1776,23 +1818,23 @@ export interface HomeworkIndexAssignmentGetResponse extends ApiEnvelope<Homework
1776
1818
  /** Backend request type: models::CreateAssignmentRequest. */
1777
1819
  export interface HomeworkStoreAssignmentPostInput extends JsonObject {
1778
1820
  "homework_id": number;
1779
- "classroom_id"?: number;
1780
- "user_id"?: string;
1781
- "due_at"?: string;
1821
+ "classroom_id"?: number | null;
1822
+ "user_id"?: string | null;
1823
+ "due_at"?: string | null;
1782
1824
  "status": string;
1783
- "answer_text"?: string;
1784
- "score"?: number;
1825
+ "answer_text"?: string | null;
1826
+ "score"?: number | null;
1785
1827
  }
1786
1828
  /** Backend response type: models::AssignmentResponse. */
1787
1829
  export interface HomeworkStoreAssignmentPostResponseData extends JsonObject {
1788
1830
  "id": number;
1789
1831
  "homework_id": number;
1790
- "classroom_id"?: number;
1791
- "user_id"?: string;
1792
- "due_at"?: string;
1832
+ "classroom_id"?: number | null;
1833
+ "user_id"?: string | null;
1834
+ "due_at"?: string | null;
1793
1835
  "status": string;
1794
- "answer_text"?: string;
1795
- "score"?: number;
1836
+ "answer_text"?: string | null;
1837
+ "score"?: number | null;
1796
1838
  "created_at": string;
1797
1839
  "updated_at": string;
1798
1840
  }
@@ -1802,12 +1844,12 @@ export interface HomeworkStoreAssignmentPostResponse extends ApiEnvelope<Homewor
1802
1844
  export interface HomeworkShowAssignmentGetResponseData extends JsonObject {
1803
1845
  "id": number;
1804
1846
  "homework_id": number;
1805
- "classroom_id"?: number;
1806
- "user_id"?: string;
1807
- "due_at"?: string;
1847
+ "classroom_id"?: number | null;
1848
+ "user_id"?: string | null;
1849
+ "due_at"?: string | null;
1808
1850
  "status": string;
1809
- "answer_text"?: string;
1810
- "score"?: number;
1851
+ "answer_text"?: string | null;
1852
+ "score"?: number | null;
1811
1853
  "created_at": string;
1812
1854
  "updated_at": string;
1813
1855
  }
@@ -1815,24 +1857,24 @@ export interface HomeworkShowAssignmentGetResponse extends ApiEnvelope<HomeworkS
1815
1857
  }
1816
1858
  /** Backend request type: models::UpdateAssignmentRequest. */
1817
1859
  export interface HomeworkUpdateAssignmentPatchInput extends JsonObject {
1818
- "homework_id"?: number;
1819
- "classroom_id"?: number;
1820
- "user_id"?: string;
1821
- "due_at"?: string;
1822
- "status"?: string;
1823
- "answer_text"?: string;
1824
- "score"?: number;
1860
+ "homework_id"?: number | null;
1861
+ "classroom_id"?: number | null;
1862
+ "user_id"?: string | null;
1863
+ "due_at"?: string | null;
1864
+ "status"?: string | null;
1865
+ "answer_text"?: string | null;
1866
+ "score"?: number | null;
1825
1867
  }
1826
1868
  /** Backend response type: models::AssignmentResponse. */
1827
1869
  export interface HomeworkUpdateAssignmentPatchResponseData extends JsonObject {
1828
1870
  "id": number;
1829
1871
  "homework_id": number;
1830
- "classroom_id"?: number;
1831
- "user_id"?: string;
1832
- "due_at"?: string;
1872
+ "classroom_id"?: number | null;
1873
+ "user_id"?: string | null;
1874
+ "due_at"?: string | null;
1833
1875
  "status": string;
1834
- "answer_text"?: string;
1835
- "score"?: number;
1876
+ "answer_text"?: string | null;
1877
+ "score"?: number | null;
1836
1878
  "created_at": string;
1837
1879
  "updated_at": string;
1838
1880
  }
@@ -1840,8 +1882,8 @@ export interface HomeworkUpdateAssignmentPatchResponse extends ApiEnvelope<Homew
1840
1882
  }
1841
1883
  /** Backend query type: PaginationQuery. */
1842
1884
  export interface HomeworkIndexQuestionGetQuery extends QueryParams {
1843
- "page[number]"?: number;
1844
- "page[size]"?: number;
1885
+ "page_number"?: number | null;
1886
+ "page_size"?: number | null;
1845
1887
  }
1846
1888
  /** Backend response type: crate::models::PagedResult<models::QuestionResponse>. */
1847
1889
  export interface HomeworkIndexQuestionGetResponseItem extends JsonObject {
@@ -1891,9 +1933,9 @@ export interface HomeworkShowQuestionGetResponse extends ApiEnvelope<HomeworkSho
1891
1933
  }
1892
1934
  /** Backend request type: models::UpdateQuestionRequest. */
1893
1935
  export interface HomeworkUpdateQuestionPatchInput extends JsonObject {
1894
- "homework_id"?: number;
1895
- "question_text"?: string;
1896
- "sort_order"?: number;
1936
+ "homework_id"?: number | null;
1937
+ "question_text"?: string | null;
1938
+ "sort_order"?: number | null;
1897
1939
  }
1898
1940
  /** Backend response type: models::QuestionResponse. */
1899
1941
  export interface HomeworkUpdateQuestionPatchResponseData extends JsonObject {
@@ -1910,8 +1952,8 @@ export interface IntegrationFlowIntegrationShowGetResponse extends ApiEnvelope<J
1910
1952
  }
1911
1953
  /** Backend query type: PaginationQuery. */
1912
1954
  export interface InteractiveIndexCategoryGetQuery extends QueryParams {
1913
- "page[number]"?: number;
1914
- "page[size]"?: number;
1955
+ "page_number"?: number | null;
1956
+ "page_size"?: number | null;
1915
1957
  }
1916
1958
  /** Backend response type: crate::models::PagedResult<models::CategoryResponse>. */
1917
1959
  export interface InteractiveIndexCategoryGetResponseItem extends JsonObject {
@@ -1957,8 +1999,8 @@ export interface InteractiveShowCategoryGetResponse extends ApiEnvelope<Interact
1957
1999
  }
1958
2000
  /** Backend request type: models::UpdateCategoryRequest. */
1959
2001
  export interface InteractiveUpdateCategoryPatchInput extends JsonObject {
1960
- "name"?: string;
1961
- "sort_order"?: number;
2002
+ "name"?: string | null;
2003
+ "sort_order"?: number | null;
1962
2004
  }
1963
2005
  /** Backend response type: models::CategoryResponse. */
1964
2006
  export interface InteractiveUpdateCategoryPatchResponseData extends JsonObject {
@@ -1971,16 +2013,16 @@ export interface InteractiveUpdateCategoryPatchResponse extends ApiEnvelope<Inte
1971
2013
  }
1972
2014
  /** Backend query type: PaginationQuery. */
1973
2015
  export interface InteractiveIndexClassroomSessionGetQuery extends QueryParams {
1974
- "page[number]"?: number;
1975
- "page[size]"?: number;
2016
+ "page_number"?: number | null;
2017
+ "page_size"?: number | null;
1976
2018
  }
1977
2019
  /** Backend response type: crate::models::PagedResult<models::ClassroomSessionResponse>. */
1978
2020
  export interface InteractiveIndexClassroomSessionGetResponseItem extends JsonObject {
1979
2021
  "id": number;
1980
2022
  "classroom_session_id": number;
1981
2023
  "interactive_content_id": number;
1982
- "room_code"?: string;
1983
- "state"?: JsonValue;
2024
+ "room_code"?: string | null;
2025
+ "state"?: JsonValue | null;
1984
2026
  "created_at": string;
1985
2027
  }
1986
2028
  export interface InteractiveIndexClassroomSessionGetResponsePageMeta extends JsonObject {
@@ -1999,16 +2041,16 @@ export interface InteractiveIndexClassroomSessionGetResponse extends ApiEnvelope
1999
2041
  export interface InteractiveStoreClassroomSessionPostInput extends JsonObject {
2000
2042
  "classroom_session_id": number;
2001
2043
  "interactive_content_id": number;
2002
- "room_code"?: string;
2003
- "state"?: JsonValue;
2044
+ "room_code"?: string | null;
2045
+ "state"?: JsonValue | null;
2004
2046
  }
2005
2047
  /** Backend response type: models::ClassroomSessionResponse. */
2006
2048
  export interface InteractiveStoreClassroomSessionPostResponseData extends JsonObject {
2007
2049
  "id": number;
2008
2050
  "classroom_session_id": number;
2009
2051
  "interactive_content_id": number;
2010
- "room_code"?: string;
2011
- "state"?: JsonValue;
2052
+ "room_code"?: string | null;
2053
+ "state"?: JsonValue | null;
2012
2054
  "created_at": string;
2013
2055
  }
2014
2056
  export interface InteractiveStoreClassroomSessionPostResponse extends ApiEnvelope<InteractiveStoreClassroomSessionPostResponseData> {
@@ -2018,42 +2060,42 @@ export interface InteractiveShowClassroomSessionGetResponseData extends JsonObje
2018
2060
  "id": number;
2019
2061
  "classroom_session_id": number;
2020
2062
  "interactive_content_id": number;
2021
- "room_code"?: string;
2022
- "state"?: JsonValue;
2063
+ "room_code"?: string | null;
2064
+ "state"?: JsonValue | null;
2023
2065
  "created_at": string;
2024
2066
  }
2025
2067
  export interface InteractiveShowClassroomSessionGetResponse extends ApiEnvelope<InteractiveShowClassroomSessionGetResponseData> {
2026
2068
  }
2027
2069
  /** Backend request type: models::UpdateClassroomSessionRequest. */
2028
2070
  export interface InteractiveUpdateClassroomSessionPatchInput extends JsonObject {
2029
- "classroom_session_id"?: number;
2030
- "interactive_content_id"?: number;
2031
- "room_code"?: string;
2032
- "state"?: JsonValue;
2071
+ "classroom_session_id"?: number | null;
2072
+ "interactive_content_id"?: number | null;
2073
+ "room_code"?: string | null;
2074
+ "state"?: JsonValue | null;
2033
2075
  }
2034
2076
  /** Backend response type: models::ClassroomSessionResponse. */
2035
2077
  export interface InteractiveUpdateClassroomSessionPatchResponseData extends JsonObject {
2036
2078
  "id": number;
2037
2079
  "classroom_session_id": number;
2038
2080
  "interactive_content_id": number;
2039
- "room_code"?: string;
2040
- "state"?: JsonValue;
2081
+ "room_code"?: string | null;
2082
+ "state"?: JsonValue | null;
2041
2083
  "created_at": string;
2042
2084
  }
2043
2085
  export interface InteractiveUpdateClassroomSessionPatchResponse extends ApiEnvelope<InteractiveUpdateClassroomSessionPatchResponseData> {
2044
2086
  }
2045
2087
  /** Backend query type: PaginationQuery. */
2046
2088
  export interface InteractiveIndexContentGetQuery extends QueryParams {
2047
- "page[number]"?: number;
2048
- "page[size]"?: number;
2089
+ "page_number"?: number | null;
2090
+ "page_size"?: number | null;
2049
2091
  }
2050
2092
  /** Backend response type: crate::models::PagedResult<models::ContentResponse>. */
2051
2093
  export interface InteractiveIndexContentGetResponseItem extends JsonObject {
2052
2094
  "id": number;
2053
- "category_id"?: number;
2095
+ "category_id"?: number | null;
2054
2096
  "name": string;
2055
2097
  "content_type": string;
2056
- "payload"?: JsonValue;
2098
+ "payload"?: JsonValue | null;
2057
2099
  "reward_points": number;
2058
2100
  "status": string;
2059
2101
  "created_at": string;
@@ -2073,20 +2115,20 @@ export interface InteractiveIndexContentGetResponse extends ApiEnvelope<Interact
2073
2115
  }
2074
2116
  /** Backend request type: models::CreateContentRequest. */
2075
2117
  export interface InteractiveStoreContentPostInput extends JsonObject {
2076
- "category_id"?: number;
2118
+ "category_id"?: number | null;
2077
2119
  "name": string;
2078
2120
  "content_type": string;
2079
- "payload"?: JsonValue;
2121
+ "payload"?: JsonValue | null;
2080
2122
  "reward_points": number;
2081
2123
  "status": string;
2082
2124
  }
2083
2125
  /** Backend response type: models::ContentResponse. */
2084
2126
  export interface InteractiveStoreContentPostResponseData extends JsonObject {
2085
2127
  "id": number;
2086
- "category_id"?: number;
2128
+ "category_id"?: number | null;
2087
2129
  "name": string;
2088
2130
  "content_type": string;
2089
- "payload"?: JsonValue;
2131
+ "payload"?: JsonValue | null;
2090
2132
  "reward_points": number;
2091
2133
  "status": string;
2092
2134
  "created_at": string;
@@ -2097,10 +2139,10 @@ export interface InteractiveStoreContentPostResponse extends ApiEnvelope<Interac
2097
2139
  /** Backend response type: models::ContentResponse. */
2098
2140
  export interface InteractiveShowContentGetResponseData extends JsonObject {
2099
2141
  "id": number;
2100
- "category_id"?: number;
2142
+ "category_id"?: number | null;
2101
2143
  "name": string;
2102
2144
  "content_type": string;
2103
- "payload"?: JsonValue;
2145
+ "payload"?: JsonValue | null;
2104
2146
  "reward_points": number;
2105
2147
  "status": string;
2106
2148
  "created_at": string;
@@ -2110,20 +2152,20 @@ export interface InteractiveShowContentGetResponse extends ApiEnvelope<Interacti
2110
2152
  }
2111
2153
  /** Backend request type: models::UpdateContentRequest. */
2112
2154
  export interface InteractiveUpdateContentPatchInput extends JsonObject {
2113
- "category_id"?: number;
2114
- "name"?: string;
2115
- "content_type"?: string;
2116
- "payload"?: JsonValue;
2117
- "reward_points"?: number;
2118
- "status"?: string;
2155
+ "category_id"?: number | null;
2156
+ "name"?: string | null;
2157
+ "content_type"?: string | null;
2158
+ "payload"?: JsonValue | null;
2159
+ "reward_points"?: number | null;
2160
+ "status"?: string | null;
2119
2161
  }
2120
2162
  /** Backend response type: models::ContentResponse. */
2121
2163
  export interface InteractiveUpdateContentPatchResponseData extends JsonObject {
2122
2164
  "id": number;
2123
- "category_id"?: number;
2165
+ "category_id"?: number | null;
2124
2166
  "name": string;
2125
2167
  "content_type": string;
2126
- "payload"?: JsonValue;
2168
+ "payload"?: JsonValue | null;
2127
2169
  "reward_points": number;
2128
2170
  "status": string;
2129
2171
  "created_at": string;
@@ -2133,15 +2175,15 @@ export interface InteractiveUpdateContentPatchResponse extends ApiEnvelope<Inter
2133
2175
  }
2134
2176
  /** Backend query type: PaginationQuery. */
2135
2177
  export interface OpsIndexInvitationGetQuery extends QueryParams {
2136
- "page[number]"?: number;
2137
- "page[size]"?: number;
2178
+ "page_number"?: number | null;
2179
+ "page_size"?: number | null;
2138
2180
  }
2139
2181
  /** Backend response type: crate::models::PagedResult<models::InvitationResponse>. */
2140
2182
  export interface OpsIndexInvitationGetResponseItem extends JsonObject {
2141
2183
  "id": number;
2142
2184
  "inviter_user_id": string;
2143
- "invitee_user_id"?: string;
2144
- "invitee_email"?: string;
2185
+ "invitee_user_id"?: string | null;
2186
+ "invitee_email"?: string | null;
2145
2187
  "reward_status": string;
2146
2188
  "created_at": string;
2147
2189
  }
@@ -2160,16 +2202,16 @@ export interface OpsIndexInvitationGetResponse extends ApiEnvelope<OpsIndexInvit
2160
2202
  /** Backend request type: models::CreateInvitationRequest. */
2161
2203
  export interface OpsStoreInvitationPostInput extends JsonObject {
2162
2204
  "inviter_user_id": string;
2163
- "invitee_user_id"?: string;
2164
- "invitee_email"?: string;
2205
+ "invitee_user_id"?: string | null;
2206
+ "invitee_email"?: string | null;
2165
2207
  "reward_status": string;
2166
2208
  }
2167
2209
  /** Backend response type: models::InvitationResponse. */
2168
2210
  export interface OpsStoreInvitationPostResponseData extends JsonObject {
2169
2211
  "id": number;
2170
2212
  "inviter_user_id": string;
2171
- "invitee_user_id"?: string;
2172
- "invitee_email"?: string;
2213
+ "invitee_user_id"?: string | null;
2214
+ "invitee_email"?: string | null;
2173
2215
  "reward_status": string;
2174
2216
  "created_at": string;
2175
2217
  }
@@ -2179,8 +2221,8 @@ export interface OpsStoreInvitationPostResponse extends ApiEnvelope<OpsStoreInvi
2179
2221
  export interface OpsShowInvitationGetResponseData extends JsonObject {
2180
2222
  "id": number;
2181
2223
  "inviter_user_id": string;
2182
- "invitee_user_id"?: string;
2183
- "invitee_email"?: string;
2224
+ "invitee_user_id"?: string | null;
2225
+ "invitee_email"?: string | null;
2184
2226
  "reward_status": string;
2185
2227
  "created_at": string;
2186
2228
  }
@@ -2188,22 +2230,31 @@ export interface OpsShowInvitationGetResponse extends ApiEnvelope<OpsShowInvitat
2188
2230
  }
2189
2231
  /** Backend request type: models::UpdateInvitationRequest. */
2190
2232
  export interface OpsUpdateInvitationPatchInput extends JsonObject {
2191
- "inviter_user_id"?: string;
2192
- "invitee_user_id"?: string;
2193
- "invitee_email"?: string;
2194
- "reward_status"?: string;
2233
+ "inviter_user_id"?: string | null;
2234
+ "invitee_user_id"?: string | null;
2235
+ "invitee_email"?: string | null;
2236
+ "reward_status"?: string | null;
2195
2237
  }
2196
2238
  /** Backend response type: models::InvitationResponse. */
2197
2239
  export interface OpsUpdateInvitationPatchResponseData extends JsonObject {
2198
2240
  "id": number;
2199
2241
  "inviter_user_id": string;
2200
- "invitee_user_id"?: string;
2201
- "invitee_email"?: string;
2242
+ "invitee_user_id"?: string | null;
2243
+ "invitee_email"?: string | null;
2202
2244
  "reward_status": string;
2203
2245
  "created_at": string;
2204
2246
  }
2205
2247
  export interface OpsUpdateInvitationPatchResponse extends ApiEnvelope<OpsUpdateInvitationPatchResponseData> {
2206
2248
  }
2249
+ /** Backend request type: multipart/form-data. */
2250
+ export type MediaUploadImagePostInput = FormData;
2251
+ /** Backend response type: UploadResponse. */
2252
+ export interface MediaUploadImagePostResponseData extends JsonObject {
2253
+ "url": string;
2254
+ "key": string;
2255
+ }
2256
+ export interface MediaUploadImagePostResponse extends ApiEnvelope<MediaUploadImagePostResponseData> {
2257
+ }
2207
2258
  /** Backend response type: Vec<models::ClassroomReport>. */
2208
2259
  export interface ReportClassroomsGetResponseItem extends JsonObject {
2209
2260
  "classroom_id": number;
@@ -2241,15 +2292,15 @@ export interface ServiceCheckLicenceGetResponse extends ApiEnvelope<ServiceCheck
2241
2292
  }
2242
2293
  /** Backend query type: PaginationQuery. */
2243
2294
  export interface OpsIndexSupportInteractionGetQuery extends QueryParams {
2244
- "page[number]"?: number;
2245
- "page[size]"?: number;
2295
+ "page_number"?: number | null;
2296
+ "page_size"?: number | null;
2246
2297
  }
2247
2298
  /** Backend response type: crate::models::PagedResult<models::SupportInteractionResponse>. */
2248
2299
  export interface OpsIndexSupportInteractionGetResponseItem extends JsonObject {
2249
2300
  "id": number;
2250
2301
  "user_id": string;
2251
2302
  "subject": string;
2252
- "body"?: string;
2303
+ "body"?: string | null;
2253
2304
  "status": string;
2254
2305
  "created_at": string;
2255
2306
  "updated_at": string;
@@ -2270,7 +2321,7 @@ export interface OpsIndexSupportInteractionGetResponse extends ApiEnvelope<OpsIn
2270
2321
  export interface OpsStoreSupportInteractionPostInput extends JsonObject {
2271
2322
  "user_id": string;
2272
2323
  "subject": string;
2273
- "body"?: string;
2324
+ "body"?: string | null;
2274
2325
  "status": string;
2275
2326
  }
2276
2327
  /** Backend response type: models::SupportInteractionResponse. */
@@ -2278,7 +2329,7 @@ export interface OpsStoreSupportInteractionPostResponseData extends JsonObject {
2278
2329
  "id": number;
2279
2330
  "user_id": string;
2280
2331
  "subject": string;
2281
- "body"?: string;
2332
+ "body"?: string | null;
2282
2333
  "status": string;
2283
2334
  "created_at": string;
2284
2335
  "updated_at": string;
@@ -2290,7 +2341,7 @@ export interface OpsShowSupportInteractionGetResponseData extends JsonObject {
2290
2341
  "id": number;
2291
2342
  "user_id": string;
2292
2343
  "subject": string;
2293
- "body"?: string;
2344
+ "body"?: string | null;
2294
2345
  "status": string;
2295
2346
  "created_at": string;
2296
2347
  "updated_at": string;
@@ -2299,17 +2350,17 @@ export interface OpsShowSupportInteractionGetResponse extends ApiEnvelope<OpsSho
2299
2350
  }
2300
2351
  /** Backend request type: models::UpdateSupportInteractionRequest. */
2301
2352
  export interface OpsUpdateSupportInteractionPatchInput extends JsonObject {
2302
- "user_id"?: string;
2303
- "subject"?: string;
2304
- "body"?: string;
2305
- "status"?: string;
2353
+ "user_id"?: string | null;
2354
+ "subject"?: string | null;
2355
+ "body"?: string | null;
2356
+ "status"?: string | null;
2306
2357
  }
2307
2358
  /** Backend response type: models::SupportInteractionResponse. */
2308
2359
  export interface OpsUpdateSupportInteractionPatchResponseData extends JsonObject {
2309
2360
  "id": number;
2310
2361
  "user_id": string;
2311
2362
  "subject": string;
2312
- "body"?: string;
2363
+ "body"?: string | null;
2313
2364
  "status": string;
2314
2365
  "created_at": string;
2315
2366
  "updated_at": string;
@@ -2318,17 +2369,17 @@ export interface OpsUpdateSupportInteractionPatchResponse extends ApiEnvelope<Op
2318
2369
  }
2319
2370
  /** Backend query type: PaginationQuery. */
2320
2371
  export interface OpsIndexWorktimeGetQuery extends QueryParams {
2321
- "page[number]"?: number;
2322
- "page[size]"?: number;
2372
+ "page_number"?: number | null;
2373
+ "page_size"?: number | null;
2323
2374
  }
2324
2375
  /** Backend response type: crate::models::PagedResult<models::WorktimeResponse>. */
2325
2376
  export interface OpsIndexWorktimeGetResponseItem extends JsonObject {
2326
2377
  "id": number;
2327
2378
  "teacher_user_id": string;
2328
2379
  "starts_at": string;
2329
- "ends_at"?: string;
2380
+ "ends_at"?: string | null;
2330
2381
  "status": string;
2331
- "notes"?: string;
2382
+ "notes"?: string | null;
2332
2383
  "created_at": string;
2333
2384
  }
2334
2385
  export interface OpsIndexWorktimeGetResponsePageMeta extends JsonObject {
@@ -2347,18 +2398,18 @@ export interface OpsIndexWorktimeGetResponse extends ApiEnvelope<OpsIndexWorktim
2347
2398
  export interface OpsStoreWorktimePostInput extends JsonObject {
2348
2399
  "teacher_user_id": string;
2349
2400
  "starts_at": string;
2350
- "ends_at"?: string;
2401
+ "ends_at"?: string | null;
2351
2402
  "status": string;
2352
- "notes"?: string;
2403
+ "notes"?: string | null;
2353
2404
  }
2354
2405
  /** Backend response type: models::WorktimeResponse. */
2355
2406
  export interface OpsStoreWorktimePostResponseData extends JsonObject {
2356
2407
  "id": number;
2357
2408
  "teacher_user_id": string;
2358
2409
  "starts_at": string;
2359
- "ends_at"?: string;
2410
+ "ends_at"?: string | null;
2360
2411
  "status": string;
2361
- "notes"?: string;
2412
+ "notes"?: string | null;
2362
2413
  "created_at": string;
2363
2414
  }
2364
2415
  export interface OpsStoreWorktimePostResponse extends ApiEnvelope<OpsStoreWorktimePostResponseData> {
@@ -2368,34 +2419,34 @@ export interface OpsShowWorktimeGetResponseData extends JsonObject {
2368
2419
  "id": number;
2369
2420
  "teacher_user_id": string;
2370
2421
  "starts_at": string;
2371
- "ends_at"?: string;
2422
+ "ends_at"?: string | null;
2372
2423
  "status": string;
2373
- "notes"?: string;
2424
+ "notes"?: string | null;
2374
2425
  "created_at": string;
2375
2426
  }
2376
2427
  export interface OpsShowWorktimeGetResponse extends ApiEnvelope<OpsShowWorktimeGetResponseData> {
2377
2428
  }
2378
2429
  /** Backend request type: models::UpdateWorktimeRequest. */
2379
2430
  export interface OpsUpdateWorktimePatchInput extends JsonObject {
2380
- "teacher_user_id"?: string;
2381
- "starts_at"?: string;
2382
- "ends_at"?: string;
2383
- "status"?: string;
2384
- "notes"?: string;
2431
+ "teacher_user_id"?: string | null;
2432
+ "starts_at"?: string | null;
2433
+ "ends_at"?: string | null;
2434
+ "status"?: string | null;
2435
+ "notes"?: string | null;
2385
2436
  }
2386
2437
  /** Backend response type: models::WorktimeResponse. */
2387
2438
  export interface OpsUpdateWorktimePatchResponseData extends JsonObject {
2388
2439
  "id": number;
2389
2440
  "teacher_user_id": string;
2390
2441
  "starts_at": string;
2391
- "ends_at"?: string;
2442
+ "ends_at"?: string | null;
2392
2443
  "status": string;
2393
- "notes"?: string;
2444
+ "notes"?: string | null;
2394
2445
  "created_at": string;
2395
2446
  }
2396
2447
  export interface OpsUpdateWorktimePatchResponse extends ApiEnvelope<OpsUpdateWorktimePatchResponseData> {
2397
2448
  }
2398
- /** Backend response type: response without a declared JSON model. */
2449
+ /** Backend response type: handler-defined response. */
2399
2450
  export interface RouterStatusRouteGetResponse extends ApiEnvelope<JsonValue> {
2400
2451
  }
2401
2452
  //# sourceMappingURL=operations.types.d.ts.map