@faiber/faiber-lms 0.24.1 → 1.0.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,9 @@
1
- import type { ApiEnvelope, BackendJson, JsonObject, JsonValue, QueryParams } from "@faiber/sdk-core";
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: api. */
4
- export interface RouterOpenapiJsonGetResponse extends ApiEnvelope<JsonValue> {
5
- }
3
+ /** Backend response type: HealthResponse. */
4
+ export type RouterRootStatusGetResponse = import("@faiber/sdk-core").ServiceHealthResponse;
5
+ /** Backend response type: utoipa::openapi::OpenApi. */
6
+ export type RouterOpenapiJsonGetResponse = import("@faiber/sdk-core").ServiceOpenApiDocument;
6
7
  /** Backend request type: SubmitExamRequest. */
7
8
  export type AcademySubmitExamPostInput = import("./types.js").AcademySubmitExamInput;
8
9
  /** Backend response type: Value. */
@@ -27,151 +28,19 @@ export type AcademyStartExamPostResponse = import("./types.js").AcademyExamAttem
27
28
  export type AcademyCompleteSessionPostInput = import("./types.js").AcademyCompleteSessionInput;
28
29
  /** Backend response type: Value. */
29
30
  export type AcademyCompleteSessionPostResponse = import("./types.js").AcademySessionCompletionResponse;
30
- /** Backend query type: JobQuery. */
31
- export interface AiSummaryJobsGetQuery extends QueryParams {
32
- "page"?: number | null;
33
- "page_size"?: number | null;
34
- "status"?: string | null;
35
- "role"?: string | null;
36
- "user_id"?: string | null;
37
- }
38
- /** Backend response type: Value. */
39
- export interface AiSummaryJobsGetResponse extends ApiEnvelope<JsonValue> {
40
- }
41
- /** Backend query type: LatestQuery. */
42
- export interface AiSummaryLatestGetQuery extends QueryParams {
43
- "role": string;
44
- "user_id"?: string | null;
45
- }
46
- /** Backend response type: LatestSummary. */
47
- export interface AiSummaryLatestGetResponseData extends JsonObject {
48
- "subject_user_id": string;
49
- "role": string;
50
- "enabled": boolean;
51
- "state": string;
52
- "freshness": string;
53
- "language"?: string | null;
54
- "model_ref"?: string | null;
55
- "classroom_ids": string[];
56
- "evidence_cutoff"?: string | null;
57
- "generated_at"?: string | null;
58
- "next_refresh_at"?: string | null;
59
- "summary"?: JsonValue | null;
60
- }
61
- export interface AiSummaryLatestGetResponse extends ApiEnvelope<AiSummaryLatestGetResponseData> {
62
- }
63
- /** Backend response type: Vec<ModelOption>. */
64
- export interface AiSummaryModelsGetResponseItem extends JsonObject {
65
- "model_ref": string;
66
- "model": string;
67
- "provider_label": string;
68
- "source": string;
69
- }
70
- export interface AiSummaryModelsGetResponse extends ApiEnvelope<AiSummaryModelsGetResponseItem[]> {
71
- }
72
- /** Backend request type: BulkRefreshRequest. */
73
- export interface AiSummaryRefreshManyPostInput extends JsonObject {
74
- "role": string;
75
- "user_ids": string[];
76
- }
77
- /** Backend response type: BulkRefreshResponse. */
78
- export interface AiSummaryRefreshManyPostResponseDataQueued extends JsonObject {
79
- "subject_user_id": string;
80
- "role": string;
81
- "state": string;
82
- "due_at": string;
83
- }
84
- export interface AiSummaryRefreshManyPostResponseData extends JsonObject {
85
- "queued": AiSummaryRefreshManyPostResponseDataQueued[];
86
- }
87
- export interface AiSummaryRefreshManyPostResponse extends ApiEnvelope<AiSummaryRefreshManyPostResponseData> {
88
- }
89
- /** Backend response type: SummarySettings. */
90
- export interface AiSummarySettingsGetResponseDataRoles extends JsonObject {
91
- "role": string;
92
- "enabled": boolean;
93
- "model_ref"?: string | null;
94
- "language": string;
95
- "guidance": string;
96
- "quiet_minutes": number;
97
- "max_wait_minutes": number;
98
- "config_revision": number;
99
- }
100
- export interface AiSummarySettingsGetResponseData extends JsonObject {
101
- "globally_enabled": boolean;
102
- "concurrency_limit": number;
103
- "financial_owner_user_id"?: string | null;
104
- "roles": AiSummarySettingsGetResponseDataRoles[];
105
- }
106
- export interface AiSummarySettingsGetResponse extends ApiEnvelope<AiSummarySettingsGetResponseData> {
107
- }
108
- /** Backend request type: UpdateSummarySettings. */
109
- export interface AiSummaryUpdateSettingsPutInputRoles extends JsonObject {
110
- "role": string;
111
- "enabled": boolean;
112
- "model_ref"?: string | null;
113
- "language": string;
114
- "guidance"?: string;
115
- "quiet_minutes": number;
116
- "max_wait_minutes": number;
117
- }
118
- export interface AiSummaryUpdateSettingsPutInput extends JsonObject {
119
- "globally_enabled": boolean;
120
- "concurrency_limit"?: number;
121
- "roles": AiSummaryUpdateSettingsPutInputRoles[];
122
- }
123
- /** Backend response type: SummarySettings. */
124
- export interface AiSummaryUpdateSettingsPutResponseDataRoles extends JsonObject {
125
- "role": string;
126
- "enabled": boolean;
127
- "model_ref"?: string | null;
128
- "language": string;
129
- "guidance": string;
130
- "quiet_minutes": number;
131
- "max_wait_minutes": number;
132
- "config_revision": number;
133
- }
134
- export interface AiSummaryUpdateSettingsPutResponseData extends JsonObject {
135
- "globally_enabled": boolean;
136
- "concurrency_limit": number;
137
- "financial_owner_user_id"?: string | null;
138
- "roles": AiSummaryUpdateSettingsPutResponseDataRoles[];
139
- }
140
- export interface AiSummaryUpdateSettingsPutResponse extends ApiEnvelope<AiSummaryUpdateSettingsPutResponseData> {
141
- }
142
- /** Backend query type: JobQuery. */
143
- export interface AiSummarySummariesGetQuery extends QueryParams {
144
- "page"?: number | null;
145
- "page_size"?: number | null;
146
- "status"?: string | null;
147
- "role"?: string | null;
148
- "user_id"?: string | null;
149
- }
150
- /** Backend response type: Value. */
151
- export interface AiSummarySummariesGetResponse extends ApiEnvelope<JsonValue> {
152
- }
153
- /** Backend response type: RefreshResponse. */
154
- export interface AiSummaryRefreshPostResponseData extends JsonObject {
155
- "subject_user_id": string;
156
- "role": string;
157
- "state": string;
158
- "due_at": string;
159
- }
160
- export interface AiSummaryRefreshPostResponse extends ApiEnvelope<AiSummaryRefreshPostResponseData> {
161
- }
162
31
  /** Backend response type: SessionResponse. */
163
32
  export interface SessionGetSelfGetResponseDataProfile extends JsonObject {
164
33
  "user_id": string;
165
- "first_name"?: JsonValue | null;
166
- "last_name"?: JsonValue | null;
167
- "email"?: string | null;
168
- "national_code"?: string | null;
169
- "phone"?: string | null;
170
- "gender"?: string | null;
34
+ "first_name": JsonValue | null;
35
+ "last_name": JsonValue | null;
36
+ "email": string | null;
37
+ "national_code": string | null;
38
+ "phone": string | null;
39
+ "gender": string | null;
171
40
  }
172
41
  export interface SessionGetSelfGetResponseData extends JsonObject {
173
42
  "user_id": string;
174
- "profile"?: SessionGetSelfGetResponseDataProfile | null;
43
+ "profile": SessionGetSelfGetResponseDataProfile | null;
175
44
  "roles": string[];
176
45
  "permissions": string[];
177
46
  }
@@ -179,8 +48,8 @@ export interface SessionGetSelfGetResponse extends ApiEnvelope<SessionGetSelfGet
179
48
  }
180
49
  /** Backend query type: PaginationQuery. */
181
50
  export interface CertificateIndexCertificateGetQuery extends QueryParams {
182
- "page_number"?: number | null;
183
- "page_size"?: number | null;
51
+ "page[number]"?: number | null;
52
+ "page[size]"?: number | null;
184
53
  }
185
54
  /** Backend response type: crate::models::PagedResult<models::CertificateResponse>. */
186
55
  export type CertificateIndexCertificateGetResponse = import("./types.js").CertificateListResponse;
@@ -196,8 +65,8 @@ export type CertificateUpdateCertificatePatchInput = import("./types.js").Update
196
65
  export type CertificateUpdateCertificatePatchResponse = import("./types.js").CertificateResponse;
197
66
  /** Backend query type: PaginationQuery. */
198
67
  export interface CertificateIndexTemplateGetQuery extends QueryParams {
199
- "page_number"?: number | null;
200
- "page_size"?: number | null;
68
+ "page[number]"?: number | null;
69
+ "page[size]"?: number | null;
201
70
  }
202
71
  /** Backend response type: crate::models::PagedResult<models::CertificateTemplateResponse>. */
203
72
  export type CertificateIndexTemplateGetResponse = import("./types.js").CertificateTemplateListResponse;
@@ -211,14 +80,14 @@ export type CertificateShowTemplateGetResponse = import("./types.js").Certificat
211
80
  export type CertificateUpdateTemplatePatchInput = import("./types.js").UpdateCertificateTemplateInput;
212
81
  /** Backend response type: models::CertificateTemplateResponse. */
213
82
  export type CertificateUpdateTemplatePatchResponse = import("./types.js").CertificateTemplateResponse;
214
- /** Backend query type: ReviewedIntegrationQuery. */
83
+ /** Backend query type: ContactsQuery. */
215
84
  export type ContactsContactsGetQuery = import("./notification-settings.js").EligibleContactQuery;
216
- /** Backend response type: api. */
85
+ /** Backend response type: ContactPage. */
217
86
  export type ContactsContactsGetResponse = import("./notification-settings.js").LmsNotificationResponse<import("./notification-settings.js").EligibleContactPage>;
218
87
  /** Backend query type: models::ClassroomListQuery. */
219
88
  export interface ClassroomIndexClassroomGetQuery extends QueryParams {
220
- "page_number"?: number | null;
221
- "page_size"?: number | null;
89
+ "page[number]"?: number | null;
90
+ "page[size]"?: number | null;
222
91
  "search"?: string | null;
223
92
  "status"?: string | null;
224
93
  "course_id"?: string | null;
@@ -232,62 +101,63 @@ export interface ClassroomIndexClassroomGetQuery extends QueryParams {
232
101
  /** Backend response type: crate::models::PagedResult<models::ClassroomResponse>. */
233
102
  export interface ClassroomIndexClassroomGetResponseItemTeacherProfile extends JsonObject {
234
103
  "user_id": string;
235
- "first_name"?: JsonValue | null;
236
- "last_name"?: JsonValue | null;
237
- "email"?: string | null;
238
- "national_code"?: string | null;
239
- "phone"?: string | null;
240
- "gender"?: string | null;
104
+ "first_name": JsonValue | null;
105
+ "last_name": JsonValue | null;
106
+ "email": string | null;
107
+ "national_code": string | null;
108
+ "phone": string | null;
109
+ "gender": string | null;
241
110
  }
242
111
  export interface ClassroomIndexClassroomGetResponseItemConsultantProfile extends JsonObject {
243
112
  "user_id": string;
244
- "first_name"?: JsonValue | null;
245
- "last_name"?: JsonValue | null;
246
- "email"?: string | null;
247
- "national_code"?: string | null;
248
- "phone"?: string | null;
249
- "gender"?: string | null;
113
+ "first_name": JsonValue | null;
114
+ "last_name": JsonValue | null;
115
+ "email": string | null;
116
+ "national_code": string | null;
117
+ "phone": string | null;
118
+ "gender": string | null;
250
119
  }
251
120
  export interface ClassroomIndexClassroomGetResponseItemSupportProfile extends JsonObject {
252
121
  "user_id": string;
253
- "first_name"?: JsonValue | null;
254
- "last_name"?: JsonValue | null;
255
- "email"?: string | null;
256
- "national_code"?: string | null;
257
- "phone"?: string | null;
258
- "gender"?: string | null;
122
+ "first_name": JsonValue | null;
123
+ "last_name": JsonValue | null;
124
+ "email": string | null;
125
+ "national_code": string | null;
126
+ "phone": string | null;
127
+ "gender": string | null;
259
128
  }
260
129
  export interface ClassroomIndexClassroomGetResponseItem extends JsonObject {
261
130
  "id": string;
262
131
  "course_id": string;
263
- "course_name"?: string | null;
264
- "course_category_id"?: string | null;
265
- "course_sort_order"?: number | null;
266
- "course_passing_mark"?: number | null;
267
- "current_user_score"?: number | null;
268
- "current_user_passed"?: boolean | null;
132
+ "course_name": string | null;
133
+ "course_category_id": string | null;
134
+ "course_sort_order": number | null;
135
+ "course_passing_mark": number | null;
136
+ "current_user_score": number | null;
137
+ "current_user_passed": boolean | null;
269
138
  "session_count": number;
270
139
  "completed_session_count": number;
271
140
  "progress_rate": number;
272
141
  "name": string;
273
- "code"?: string | null;
274
- "description"?: string | null;
275
- "info"?: string | null;
276
- "classroom_type_id"?: string | null;
277
- "school_grade_id"?: string | null;
278
- "grade_id"?: string | null;
279
- "teacher_user_id"?: string | null;
280
- "teacher_profile"?: ClassroomIndexClassroomGetResponseItemTeacherProfile | null;
281
- "consultant_user_id"?: string | null;
282
- "consultant_profile"?: ClassroomIndexClassroomGetResponseItemConsultantProfile | null;
283
- "support_user_id"?: string | null;
284
- "support_profile"?: ClassroomIndexClassroomGetResponseItemSupportProfile | null;
285
- "capacity"?: number | null;
142
+ "code": string | null;
143
+ "description": string | null;
144
+ "info": string | null;
145
+ "classroom_type_id": string | null;
146
+ "school_grade_id": string | null;
147
+ "grade_id": string | null;
148
+ "teacher_user_id": string | null;
149
+ "teacher_profile": ClassroomIndexClassroomGetResponseItemTeacherProfile | null;
150
+ "consultant_user_id": string | null;
151
+ "consultant_profile": ClassroomIndexClassroomGetResponseItemConsultantProfile | null;
152
+ "support_user_id": string | null;
153
+ "support_profile": ClassroomIndexClassroomGetResponseItemSupportProfile | null;
154
+ "student_count": number;
155
+ "capacity": number | null;
286
156
  "notifications": JsonValue;
287
157
  "weekly_schedule": import("./types.js").ClassroomWeeklyScheduleRule[];
288
158
  "check_sessions": JsonValue;
289
- "starts_at"?: string | null;
290
- "ends_at"?: string | null;
159
+ "starts_at": string | null;
160
+ "ends_at": string | null;
291
161
  "status": string;
292
162
  "created_at": string;
293
163
  "updated_at": string;
@@ -328,62 +198,63 @@ export interface ClassroomStoreClassroomPostInput extends JsonObject {
328
198
  /** Backend response type: models::ClassroomResponse. */
329
199
  export interface ClassroomStoreClassroomPostResponseDataTeacherProfile extends JsonObject {
330
200
  "user_id": string;
331
- "first_name"?: JsonValue | null;
332
- "last_name"?: JsonValue | null;
333
- "email"?: string | null;
334
- "national_code"?: string | null;
335
- "phone"?: string | null;
336
- "gender"?: string | null;
201
+ "first_name": JsonValue | null;
202
+ "last_name": JsonValue | null;
203
+ "email": string | null;
204
+ "national_code": string | null;
205
+ "phone": string | null;
206
+ "gender": string | null;
337
207
  }
338
208
  export interface ClassroomStoreClassroomPostResponseDataConsultantProfile extends JsonObject {
339
209
  "user_id": string;
340
- "first_name"?: JsonValue | null;
341
- "last_name"?: JsonValue | null;
342
- "email"?: string | null;
343
- "national_code"?: string | null;
344
- "phone"?: string | null;
345
- "gender"?: string | null;
210
+ "first_name": JsonValue | null;
211
+ "last_name": JsonValue | null;
212
+ "email": string | null;
213
+ "national_code": string | null;
214
+ "phone": string | null;
215
+ "gender": string | null;
346
216
  }
347
217
  export interface ClassroomStoreClassroomPostResponseDataSupportProfile extends JsonObject {
348
218
  "user_id": string;
349
- "first_name"?: JsonValue | null;
350
- "last_name"?: JsonValue | null;
351
- "email"?: string | null;
352
- "national_code"?: string | null;
353
- "phone"?: string | null;
354
- "gender"?: string | null;
219
+ "first_name": JsonValue | null;
220
+ "last_name": JsonValue | null;
221
+ "email": string | null;
222
+ "national_code": string | null;
223
+ "phone": string | null;
224
+ "gender": string | null;
355
225
  }
356
226
  export interface ClassroomStoreClassroomPostResponseData extends JsonObject {
357
227
  "id": string;
358
228
  "course_id": string;
359
- "course_name"?: string | null;
360
- "course_category_id"?: string | null;
361
- "course_sort_order"?: number | null;
362
- "course_passing_mark"?: number | null;
363
- "current_user_score"?: number | null;
364
- "current_user_passed"?: boolean | null;
229
+ "course_name": string | null;
230
+ "course_category_id": string | null;
231
+ "course_sort_order": number | null;
232
+ "course_passing_mark": number | null;
233
+ "current_user_score": number | null;
234
+ "current_user_passed": boolean | null;
365
235
  "session_count": number;
366
236
  "completed_session_count": number;
367
237
  "progress_rate": number;
368
238
  "name": string;
369
- "code"?: string | null;
370
- "description"?: string | null;
371
- "info"?: string | null;
372
- "classroom_type_id"?: string | null;
373
- "school_grade_id"?: string | null;
374
- "grade_id"?: string | null;
375
- "teacher_user_id"?: string | null;
376
- "teacher_profile"?: ClassroomStoreClassroomPostResponseDataTeacherProfile | null;
377
- "consultant_user_id"?: string | null;
378
- "consultant_profile"?: ClassroomStoreClassroomPostResponseDataConsultantProfile | null;
379
- "support_user_id"?: string | null;
380
- "support_profile"?: ClassroomStoreClassroomPostResponseDataSupportProfile | null;
381
- "capacity"?: number | null;
239
+ "code": string | null;
240
+ "description": string | null;
241
+ "info": string | null;
242
+ "classroom_type_id": string | null;
243
+ "school_grade_id": string | null;
244
+ "grade_id": string | null;
245
+ "teacher_user_id": string | null;
246
+ "teacher_profile": ClassroomStoreClassroomPostResponseDataTeacherProfile | null;
247
+ "consultant_user_id": string | null;
248
+ "consultant_profile": ClassroomStoreClassroomPostResponseDataConsultantProfile | null;
249
+ "support_user_id": string | null;
250
+ "support_profile": ClassroomStoreClassroomPostResponseDataSupportProfile | null;
251
+ "student_count": number;
252
+ "capacity": number | null;
382
253
  "notifications": JsonValue;
383
254
  "weekly_schedule": import("./types.js").ClassroomWeeklyScheduleRule[];
384
255
  "check_sessions": JsonValue;
385
- "starts_at"?: string | null;
386
- "ends_at"?: string | null;
256
+ "starts_at": string | null;
257
+ "ends_at": string | null;
387
258
  "status": string;
388
259
  "created_at": string;
389
260
  "updated_at": string;
@@ -391,67 +262,67 @@ export interface ClassroomStoreClassroomPostResponseData extends JsonObject {
391
262
  export interface ClassroomStoreClassroomPostResponse extends ApiEnvelope<ClassroomStoreClassroomPostResponseData> {
392
263
  }
393
264
  /** Backend response type: serde_json::Value. */
394
- export interface ClassroomDestroyClassroomDeleteResponse extends ApiEnvelope<JsonValue> {
395
- }
265
+ export type ClassroomDestroyClassroomDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
396
266
  /** Backend response type: models::ClassroomResponse. */
397
267
  export interface ClassroomShowClassroomGetResponseDataTeacherProfile extends JsonObject {
398
268
  "user_id": string;
399
- "first_name"?: JsonValue | null;
400
- "last_name"?: JsonValue | null;
401
- "email"?: string | null;
402
- "national_code"?: string | null;
403
- "phone"?: string | null;
404
- "gender"?: string | null;
269
+ "first_name": JsonValue | null;
270
+ "last_name": JsonValue | null;
271
+ "email": string | null;
272
+ "national_code": string | null;
273
+ "phone": string | null;
274
+ "gender": string | null;
405
275
  }
406
276
  export interface ClassroomShowClassroomGetResponseDataConsultantProfile extends JsonObject {
407
277
  "user_id": string;
408
- "first_name"?: JsonValue | null;
409
- "last_name"?: JsonValue | null;
410
- "email"?: string | null;
411
- "national_code"?: string | null;
412
- "phone"?: string | null;
413
- "gender"?: string | null;
278
+ "first_name": JsonValue | null;
279
+ "last_name": JsonValue | null;
280
+ "email": string | null;
281
+ "national_code": string | null;
282
+ "phone": string | null;
283
+ "gender": string | null;
414
284
  }
415
285
  export interface ClassroomShowClassroomGetResponseDataSupportProfile extends JsonObject {
416
286
  "user_id": string;
417
- "first_name"?: JsonValue | null;
418
- "last_name"?: JsonValue | null;
419
- "email"?: string | null;
420
- "national_code"?: string | null;
421
- "phone"?: string | null;
422
- "gender"?: string | null;
287
+ "first_name": JsonValue | null;
288
+ "last_name": JsonValue | null;
289
+ "email": string | null;
290
+ "national_code": string | null;
291
+ "phone": string | null;
292
+ "gender": string | null;
423
293
  }
424
294
  export interface ClassroomShowClassroomGetResponseData extends JsonObject {
425
295
  "id": string;
426
296
  "course_id": string;
427
- "course_name"?: string | null;
428
- "course_category_id"?: string | null;
429
- "course_sort_order"?: number | null;
430
- "course_passing_mark"?: number | null;
431
- "current_user_score"?: number | null;
432
- "current_user_passed"?: boolean | null;
297
+ "course_name": string | null;
298
+ "course_category_id": string | null;
299
+ "course_sort_order": number | null;
300
+ "course_passing_mark": number | null;
301
+ "current_user_score": number | null;
302
+ "current_user_passed": boolean | null;
433
303
  "session_count": number;
434
304
  "completed_session_count": number;
435
305
  "progress_rate": number;
436
306
  "name": string;
437
- "code"?: string | null;
438
- "description"?: string | null;
439
- "info"?: string | null;
440
- "classroom_type_id"?: string | null;
441
- "school_grade_id"?: string | null;
442
- "grade_id"?: string | null;
443
- "teacher_user_id"?: string | null;
444
- "teacher_profile"?: ClassroomShowClassroomGetResponseDataTeacherProfile | null;
445
- "consultant_user_id"?: string | null;
446
- "consultant_profile"?: ClassroomShowClassroomGetResponseDataConsultantProfile | null;
447
- "support_user_id"?: string | null;
448
- "support_profile"?: ClassroomShowClassroomGetResponseDataSupportProfile | null;
449
- "capacity"?: number | null;
307
+ "code": string | null;
308
+ "description": string | null;
309
+ "info": string | null;
310
+ "classroom_type_id": string | null;
311
+ "school_grade_id": string | null;
312
+ "grade_id": string | null;
313
+ "teacher_user_id": string | null;
314
+ "teacher_profile": ClassroomShowClassroomGetResponseDataTeacherProfile | null;
315
+ "consultant_user_id": string | null;
316
+ "consultant_profile": ClassroomShowClassroomGetResponseDataConsultantProfile | null;
317
+ "support_user_id": string | null;
318
+ "support_profile": ClassroomShowClassroomGetResponseDataSupportProfile | null;
319
+ "student_count": number;
320
+ "capacity": number | null;
450
321
  "notifications": JsonValue;
451
322
  "weekly_schedule": import("./types.js").ClassroomWeeklyScheduleRule[];
452
323
  "check_sessions": JsonValue;
453
- "starts_at"?: string | null;
454
- "ends_at"?: string | null;
324
+ "starts_at": string | null;
325
+ "ends_at": string | null;
455
326
  "status": string;
456
327
  "created_at": string;
457
328
  "updated_at": string;
@@ -482,62 +353,63 @@ export interface ClassroomUpdateClassroomPatchInput extends JsonObject {
482
353
  /** Backend response type: models::ClassroomResponse. */
483
354
  export interface ClassroomUpdateClassroomPatchResponseDataTeacherProfile extends JsonObject {
484
355
  "user_id": string;
485
- "first_name"?: JsonValue | null;
486
- "last_name"?: JsonValue | null;
487
- "email"?: string | null;
488
- "national_code"?: string | null;
489
- "phone"?: string | null;
490
- "gender"?: string | null;
356
+ "first_name": JsonValue | null;
357
+ "last_name": JsonValue | null;
358
+ "email": string | null;
359
+ "national_code": string | null;
360
+ "phone": string | null;
361
+ "gender": string | null;
491
362
  }
492
363
  export interface ClassroomUpdateClassroomPatchResponseDataConsultantProfile extends JsonObject {
493
364
  "user_id": string;
494
- "first_name"?: JsonValue | null;
495
- "last_name"?: JsonValue | null;
496
- "email"?: string | null;
497
- "national_code"?: string | null;
498
- "phone"?: string | null;
499
- "gender"?: string | null;
365
+ "first_name": JsonValue | null;
366
+ "last_name": JsonValue | null;
367
+ "email": string | null;
368
+ "national_code": string | null;
369
+ "phone": string | null;
370
+ "gender": string | null;
500
371
  }
501
372
  export interface ClassroomUpdateClassroomPatchResponseDataSupportProfile extends JsonObject {
502
373
  "user_id": string;
503
- "first_name"?: JsonValue | null;
504
- "last_name"?: JsonValue | null;
505
- "email"?: string | null;
506
- "national_code"?: string | null;
507
- "phone"?: string | null;
508
- "gender"?: string | null;
374
+ "first_name": JsonValue | null;
375
+ "last_name": JsonValue | null;
376
+ "email": string | null;
377
+ "national_code": string | null;
378
+ "phone": string | null;
379
+ "gender": string | null;
509
380
  }
510
381
  export interface ClassroomUpdateClassroomPatchResponseData extends JsonObject {
511
382
  "id": string;
512
383
  "course_id": string;
513
- "course_name"?: string | null;
514
- "course_category_id"?: string | null;
515
- "course_sort_order"?: number | null;
516
- "course_passing_mark"?: number | null;
517
- "current_user_score"?: number | null;
518
- "current_user_passed"?: boolean | null;
384
+ "course_name": string | null;
385
+ "course_category_id": string | null;
386
+ "course_sort_order": number | null;
387
+ "course_passing_mark": number | null;
388
+ "current_user_score": number | null;
389
+ "current_user_passed": boolean | null;
519
390
  "session_count": number;
520
391
  "completed_session_count": number;
521
392
  "progress_rate": number;
522
393
  "name": string;
523
- "code"?: string | null;
524
- "description"?: string | null;
525
- "info"?: string | null;
526
- "classroom_type_id"?: string | null;
527
- "school_grade_id"?: string | null;
528
- "grade_id"?: string | null;
529
- "teacher_user_id"?: string | null;
530
- "teacher_profile"?: ClassroomUpdateClassroomPatchResponseDataTeacherProfile | null;
531
- "consultant_user_id"?: string | null;
532
- "consultant_profile"?: ClassroomUpdateClassroomPatchResponseDataConsultantProfile | null;
533
- "support_user_id"?: string | null;
534
- "support_profile"?: ClassroomUpdateClassroomPatchResponseDataSupportProfile | null;
535
- "capacity"?: number | null;
394
+ "code": string | null;
395
+ "description": string | null;
396
+ "info": string | null;
397
+ "classroom_type_id": string | null;
398
+ "school_grade_id": string | null;
399
+ "grade_id": string | null;
400
+ "teacher_user_id": string | null;
401
+ "teacher_profile": ClassroomUpdateClassroomPatchResponseDataTeacherProfile | null;
402
+ "consultant_user_id": string | null;
403
+ "consultant_profile": ClassroomUpdateClassroomPatchResponseDataConsultantProfile | null;
404
+ "support_user_id": string | null;
405
+ "support_profile": ClassroomUpdateClassroomPatchResponseDataSupportProfile | null;
406
+ "student_count": number;
407
+ "capacity": number | null;
536
408
  "notifications": JsonValue;
537
409
  "weekly_schedule": import("./types.js").ClassroomWeeklyScheduleRule[];
538
410
  "check_sessions": JsonValue;
539
- "starts_at"?: string | null;
540
- "ends_at"?: string | null;
411
+ "starts_at": string | null;
412
+ "ends_at": string | null;
541
413
  "status": string;
542
414
  "created_at": string;
543
415
  "updated_at": string;
@@ -556,27 +428,27 @@ export interface ClassroomShowCompletionGetResponseDataCertificateTemplates exte
556
428
  }
557
429
  export interface ClassroomShowCompletionGetResponseDataStudentsProfile extends JsonObject {
558
430
  "user_id": string;
559
- "first_name"?: JsonValue | null;
560
- "last_name"?: JsonValue | null;
561
- "email"?: string | null;
562
- "national_code"?: string | null;
563
- "phone"?: string | null;
564
- "gender"?: string | null;
431
+ "first_name": JsonValue | null;
432
+ "last_name": JsonValue | null;
433
+ "email": string | null;
434
+ "national_code": string | null;
435
+ "phone": string | null;
436
+ "gender": string | null;
565
437
  }
566
438
  export interface ClassroomShowCompletionGetResponseDataStudentsExamScores extends JsonObject {
567
439
  "exam_session_id": string;
568
- "score"?: number | null;
569
- "teacher_score"?: number | null;
570
- "effective_score"?: number | null;
440
+ "score": number | null;
441
+ "teacher_score": number | null;
442
+ "effective_score": number | null;
571
443
  "status": string;
572
444
  }
573
445
  export interface ClassroomShowCompletionGetResponseDataStudents extends JsonObject {
574
446
  "user_id": string;
575
- "profile"?: ClassroomShowCompletionGetResponseDataStudentsProfile | null;
447
+ "profile": ClassroomShowCompletionGetResponseDataStudentsProfile | null;
576
448
  "exam_scores": ClassroomShowCompletionGetResponseDataStudentsExamScores[];
577
- "suggested_final_score"?: number | null;
578
- "final_score"?: number | null;
579
- "passed"?: boolean | null;
449
+ "suggested_final_score": number | null;
450
+ "final_score": number | null;
451
+ "passed": boolean | null;
580
452
  }
581
453
  export interface ClassroomShowCompletionGetResponseData extends JsonObject {
582
454
  "classroom_id": string;
@@ -584,7 +456,7 @@ export interface ClassroomShowCompletionGetResponseData extends JsonObject {
584
456
  "classroom_status": string;
585
457
  "course_id": string;
586
458
  "course_name": string;
587
- "passing_mark"?: number | null;
459
+ "passing_mark": number | null;
588
460
  "exams": ClassroomShowCompletionGetResponseDataExams[];
589
461
  "certificate_templates": ClassroomShowCompletionGetResponseDataCertificateTemplates[];
590
462
  "students": ClassroomShowCompletionGetResponseDataStudents[];
@@ -611,25 +483,25 @@ export interface ClassroomFinalizeClassroomPostResponse extends ApiEnvelope<Clas
611
483
  }
612
484
  /** Backend query type: PaginationQuery. */
613
485
  export interface ClassroomIndexClassroomUsersGetQuery extends QueryParams {
614
- "page_number"?: number | null;
615
- "page_size"?: number | null;
486
+ "page[number]"?: number | null;
487
+ "page[size]"?: number | null;
616
488
  }
617
489
  /** Backend response type: crate::models::PagedResult<models::ClassroomUserResponse>. */
618
490
  export interface ClassroomIndexClassroomUsersGetResponseItemProfile extends JsonObject {
619
491
  "user_id": string;
620
- "first_name"?: JsonValue | null;
621
- "last_name"?: JsonValue | null;
622
- "email"?: string | null;
623
- "national_code"?: string | null;
624
- "phone"?: string | null;
625
- "gender"?: string | null;
492
+ "first_name": JsonValue | null;
493
+ "last_name": JsonValue | null;
494
+ "email": string | null;
495
+ "national_code": string | null;
496
+ "phone": string | null;
497
+ "gender": string | null;
626
498
  }
627
499
  export interface ClassroomIndexClassroomUsersGetResponseItem extends JsonObject {
628
500
  "id": string;
629
501
  "classroom_id": string;
630
502
  "user_id": string;
631
- "profile"?: ClassroomIndexClassroomUsersGetResponseItemProfile | null;
632
- "score"?: number | null;
503
+ "profile": ClassroomIndexClassroomUsersGetResponseItemProfile | null;
504
+ "score": number | null;
633
505
  "status": string;
634
506
  "created_at": string;
635
507
  "updated_at": string;
@@ -655,19 +527,19 @@ export interface ClassroomEnrollClassroomUserPostInput extends JsonObject {
655
527
  /** Backend response type: models::ClassroomUserResponse. */
656
528
  export interface ClassroomEnrollClassroomUserPostResponseDataProfile extends JsonObject {
657
529
  "user_id": string;
658
- "first_name"?: JsonValue | null;
659
- "last_name"?: JsonValue | null;
660
- "email"?: string | null;
661
- "national_code"?: string | null;
662
- "phone"?: string | null;
663
- "gender"?: string | null;
530
+ "first_name": JsonValue | null;
531
+ "last_name": JsonValue | null;
532
+ "email": string | null;
533
+ "national_code": string | null;
534
+ "phone": string | null;
535
+ "gender": string | null;
664
536
  }
665
537
  export interface ClassroomEnrollClassroomUserPostResponseData extends JsonObject {
666
538
  "id": string;
667
539
  "classroom_id": string;
668
540
  "user_id": string;
669
- "profile"?: ClassroomEnrollClassroomUserPostResponseDataProfile | null;
670
- "score"?: number | null;
541
+ "profile": ClassroomEnrollClassroomUserPostResponseDataProfile | null;
542
+ "score": number | null;
671
543
  "status": string;
672
544
  "created_at": string;
673
545
  "updated_at": string;
@@ -675,8 +547,7 @@ export interface ClassroomEnrollClassroomUserPostResponseData extends JsonObject
675
547
  export interface ClassroomEnrollClassroomUserPostResponse extends ApiEnvelope<ClassroomEnrollClassroomUserPostResponseData> {
676
548
  }
677
549
  /** Backend response type: (). */
678
- export interface ClassroomRemoveClassroomUserDeleteResponse extends ApiEnvelope<JsonObject> {
679
- }
550
+ export type ClassroomRemoveClassroomUserDeleteResponse = ApiEnvelope<null>;
680
551
  /** Backend request type: models::UpdateClassroomUserRequest. */
681
552
  export interface ClassroomUpdateClassroomUserPatchInput extends JsonObject {
682
553
  "score"?: number | null;
@@ -685,19 +556,19 @@ export interface ClassroomUpdateClassroomUserPatchInput extends JsonObject {
685
556
  /** Backend response type: models::ClassroomUserResponse. */
686
557
  export interface ClassroomUpdateClassroomUserPatchResponseDataProfile extends JsonObject {
687
558
  "user_id": string;
688
- "first_name"?: JsonValue | null;
689
- "last_name"?: JsonValue | null;
690
- "email"?: string | null;
691
- "national_code"?: string | null;
692
- "phone"?: string | null;
693
- "gender"?: string | null;
559
+ "first_name": JsonValue | null;
560
+ "last_name": JsonValue | null;
561
+ "email": string | null;
562
+ "national_code": string | null;
563
+ "phone": string | null;
564
+ "gender": string | null;
694
565
  }
695
566
  export interface ClassroomUpdateClassroomUserPatchResponseData extends JsonObject {
696
567
  "id": string;
697
568
  "classroom_id": string;
698
569
  "user_id": string;
699
- "profile"?: ClassroomUpdateClassroomUserPatchResponseDataProfile | null;
700
- "score"?: number | null;
570
+ "profile": ClassroomUpdateClassroomUserPatchResponseDataProfile | null;
571
+ "score": number | null;
701
572
  "status": string;
702
573
  "created_at": string;
703
574
  "updated_at": string;
@@ -709,14 +580,14 @@ export interface IntegrationBatchClassroomsPostInput extends JsonObject {
709
580
  "ids"?: string[];
710
581
  }
711
582
  /** Backend response type: Value. */
712
- export interface IntegrationBatchClassroomsPostResponse extends ApiEnvelope<JsonValue> {
713
- }
583
+ export type IntegrationBatchClassroomsPostResponseData = import("./wire.types.js").LmsBatchClassrooms;
584
+ export type IntegrationBatchClassroomsPostResponse = ApiEnvelope<import("./wire.types.js").LmsBatchClassrooms>;
714
585
  /** Backend response type: Vec<models::ClassroomSessionTypeResponse>. */
715
586
  export interface ClassroomIndexSessionTypesGetResponseItem extends JsonObject {
716
587
  "id": string;
717
588
  "code": string;
718
589
  "name": string;
719
- "name_fa"?: string | null;
590
+ "name_fa": string | null;
720
591
  "is_online": boolean;
721
592
  "status": string;
722
593
  "sort_order": number;
@@ -727,8 +598,8 @@ export interface ClassroomIndexSessionTypesGetResponse extends ApiEnvelope<Class
727
598
  }
728
599
  /** Backend query type: models::SessionListQuery. */
729
600
  export interface ClassroomIndexSessionGetQuery extends QueryParams {
730
- "page_number"?: number | null;
731
- "page_size"?: number | null;
601
+ "page[number]"?: number | null;
602
+ "page[size]"?: number | null;
732
603
  "status"?: string | null;
733
604
  "classroom_id"?: string | null;
734
605
  "user_id"?: string | null;
@@ -740,18 +611,18 @@ export interface ClassroomIndexSessionGetResponseItemCourseSession extends JsonO
740
611
  "id": string;
741
612
  "course_id": string;
742
613
  "name": string;
743
- "description"?: string | null;
614
+ "description": string | null;
744
615
  "sort_order": number;
745
616
  "session_type": string;
746
- "session_type_id"?: string | null;
747
- "duration_minutes"?: number | null;
617
+ "session_type_id": string | null;
618
+ "duration_minutes": number | null;
748
619
  "status": string;
749
620
  }
750
621
  export interface ClassroomIndexSessionGetResponseItemSessionType extends JsonObject {
751
622
  "id": string;
752
623
  "code": string;
753
624
  "name": string;
754
- "name_fa"?: string | null;
625
+ "name_fa": string | null;
755
626
  "is_online": boolean;
756
627
  "status": string;
757
628
  "sort_order": number;
@@ -760,39 +631,38 @@ export interface ClassroomIndexSessionGetResponseItemSessionType extends JsonObj
760
631
  }
761
632
  export interface ClassroomIndexSessionGetResponseItemTeacherProfile extends JsonObject {
762
633
  "user_id": string;
763
- "first_name"?: JsonValue | null;
764
- "last_name"?: JsonValue | null;
765
- "email"?: string | null;
766
- "national_code"?: string | null;
767
- "phone"?: string | null;
768
- "gender"?: string | null;
634
+ "first_name": JsonValue | null;
635
+ "last_name": JsonValue | null;
636
+ "email": string | null;
637
+ "national_code": string | null;
638
+ "phone": string | null;
639
+ "gender": string | null;
769
640
  }
770
641
  export interface ClassroomIndexSessionGetResponseItem extends JsonObject {
771
642
  "id": string;
772
643
  "classroom_id": string;
773
- "classroom_name"?: string | null;
774
- "course_session_id"?: string | null;
775
- "course_session"?: ClassroomIndexSessionGetResponseItemCourseSession | null;
776
- "course_session_type_id"?: string | null;
777
- "session_type"?: ClassroomIndexSessionGetResponseItemSessionType | null;
778
- "name"?: string | null;
779
- "session_number"?: number | null;
780
- "duration_minutes"?: number | null;
781
- "description"?: string | null;
782
- "teacher_user_id"?: string | null;
783
- "teacher_profile"?: ClassroomIndexSessionGetResponseItemTeacherProfile | null;
644
+ "classroom_name": string | null;
645
+ "course_session_id": string | null;
646
+ "course_session": ClassroomIndexSessionGetResponseItemCourseSession | null;
647
+ "course_session_type_id": string | null;
648
+ "session_type": ClassroomIndexSessionGetResponseItemSessionType | null;
649
+ "name": string | null;
650
+ "session_number": number | null;
651
+ "duration_minutes": number | null;
652
+ "description": string | null;
653
+ "teacher_user_id": string | null;
654
+ "teacher_profile": ClassroomIndexSessionGetResponseItemTeacherProfile | null;
784
655
  "locked": boolean;
785
656
  "auto_unlock": boolean;
786
657
  "auto_present": boolean;
787
658
  "invited": boolean;
788
- "student_user_ids"?: string[] | null;
789
- "session_room_id"?: string | null;
790
- "session_lifecycle_status"?: string | null;
659
+ "student_user_ids": string[] | null;
660
+ "session_room_id": string | null;
661
+ "session_lifecycle_status": string | null;
791
662
  "session_access_mode": string;
792
663
  "session_archive_ready": boolean;
793
- "legacy_source_id"?: number | null;
794
- "starts_at"?: string | null;
795
- "ends_at"?: string | null;
664
+ "starts_at": string | null;
665
+ "ends_at": string | null;
796
666
  "status": string;
797
667
  "created_at": string;
798
668
  "updated_at": string;
@@ -832,18 +702,18 @@ export interface ClassroomStoreSessionPostResponseDataCourseSession extends Json
832
702
  "id": string;
833
703
  "course_id": string;
834
704
  "name": string;
835
- "description"?: string | null;
705
+ "description": string | null;
836
706
  "sort_order": number;
837
707
  "session_type": string;
838
- "session_type_id"?: string | null;
839
- "duration_minutes"?: number | null;
708
+ "session_type_id": string | null;
709
+ "duration_minutes": number | null;
840
710
  "status": string;
841
711
  }
842
712
  export interface ClassroomStoreSessionPostResponseDataSessionType extends JsonObject {
843
713
  "id": string;
844
714
  "code": string;
845
715
  "name": string;
846
- "name_fa"?: string | null;
716
+ "name_fa": string | null;
847
717
  "is_online": boolean;
848
718
  "status": string;
849
719
  "sort_order": number;
@@ -852,39 +722,38 @@ export interface ClassroomStoreSessionPostResponseDataSessionType extends JsonOb
852
722
  }
853
723
  export interface ClassroomStoreSessionPostResponseDataTeacherProfile extends JsonObject {
854
724
  "user_id": string;
855
- "first_name"?: JsonValue | null;
856
- "last_name"?: JsonValue | null;
857
- "email"?: string | null;
858
- "national_code"?: string | null;
859
- "phone"?: string | null;
860
- "gender"?: string | null;
725
+ "first_name": JsonValue | null;
726
+ "last_name": JsonValue | null;
727
+ "email": string | null;
728
+ "national_code": string | null;
729
+ "phone": string | null;
730
+ "gender": string | null;
861
731
  }
862
732
  export interface ClassroomStoreSessionPostResponseData extends JsonObject {
863
733
  "id": string;
864
734
  "classroom_id": string;
865
- "classroom_name"?: string | null;
866
- "course_session_id"?: string | null;
867
- "course_session"?: ClassroomStoreSessionPostResponseDataCourseSession | null;
868
- "course_session_type_id"?: string | null;
869
- "session_type"?: ClassroomStoreSessionPostResponseDataSessionType | null;
870
- "name"?: string | null;
871
- "session_number"?: number | null;
872
- "duration_minutes"?: number | null;
873
- "description"?: string | null;
874
- "teacher_user_id"?: string | null;
875
- "teacher_profile"?: ClassroomStoreSessionPostResponseDataTeacherProfile | null;
735
+ "classroom_name": string | null;
736
+ "course_session_id": string | null;
737
+ "course_session": ClassroomStoreSessionPostResponseDataCourseSession | null;
738
+ "course_session_type_id": string | null;
739
+ "session_type": ClassroomStoreSessionPostResponseDataSessionType | null;
740
+ "name": string | null;
741
+ "session_number": number | null;
742
+ "duration_minutes": number | null;
743
+ "description": string | null;
744
+ "teacher_user_id": string | null;
745
+ "teacher_profile": ClassroomStoreSessionPostResponseDataTeacherProfile | null;
876
746
  "locked": boolean;
877
747
  "auto_unlock": boolean;
878
748
  "auto_present": boolean;
879
749
  "invited": boolean;
880
- "student_user_ids"?: string[] | null;
881
- "session_room_id"?: string | null;
882
- "session_lifecycle_status"?: string | null;
750
+ "student_user_ids": string[] | null;
751
+ "session_room_id": string | null;
752
+ "session_lifecycle_status": string | null;
883
753
  "session_access_mode": string;
884
754
  "session_archive_ready": boolean;
885
- "legacy_source_id"?: number | null;
886
- "starts_at"?: string | null;
887
- "ends_at"?: string | null;
755
+ "starts_at": string | null;
756
+ "ends_at": string | null;
888
757
  "status": string;
889
758
  "created_at": string;
890
759
  "updated_at": string;
@@ -896,18 +765,18 @@ export interface ClassroomShowSessionGetResponseDataCourseSession extends JsonOb
896
765
  "id": string;
897
766
  "course_id": string;
898
767
  "name": string;
899
- "description"?: string | null;
768
+ "description": string | null;
900
769
  "sort_order": number;
901
770
  "session_type": string;
902
- "session_type_id"?: string | null;
903
- "duration_minutes"?: number | null;
771
+ "session_type_id": string | null;
772
+ "duration_minutes": number | null;
904
773
  "status": string;
905
774
  }
906
775
  export interface ClassroomShowSessionGetResponseDataSessionType extends JsonObject {
907
776
  "id": string;
908
777
  "code": string;
909
778
  "name": string;
910
- "name_fa"?: string | null;
779
+ "name_fa": string | null;
911
780
  "is_online": boolean;
912
781
  "status": string;
913
782
  "sort_order": number;
@@ -916,39 +785,38 @@ export interface ClassroomShowSessionGetResponseDataSessionType extends JsonObje
916
785
  }
917
786
  export interface ClassroomShowSessionGetResponseDataTeacherProfile extends JsonObject {
918
787
  "user_id": string;
919
- "first_name"?: JsonValue | null;
920
- "last_name"?: JsonValue | null;
921
- "email"?: string | null;
922
- "national_code"?: string | null;
923
- "phone"?: string | null;
924
- "gender"?: string | null;
788
+ "first_name": JsonValue | null;
789
+ "last_name": JsonValue | null;
790
+ "email": string | null;
791
+ "national_code": string | null;
792
+ "phone": string | null;
793
+ "gender": string | null;
925
794
  }
926
795
  export interface ClassroomShowSessionGetResponseData extends JsonObject {
927
796
  "id": string;
928
797
  "classroom_id": string;
929
- "classroom_name"?: string | null;
930
- "course_session_id"?: string | null;
931
- "course_session"?: ClassroomShowSessionGetResponseDataCourseSession | null;
932
- "course_session_type_id"?: string | null;
933
- "session_type"?: ClassroomShowSessionGetResponseDataSessionType | null;
934
- "name"?: string | null;
935
- "session_number"?: number | null;
936
- "duration_minutes"?: number | null;
937
- "description"?: string | null;
938
- "teacher_user_id"?: string | null;
939
- "teacher_profile"?: ClassroomShowSessionGetResponseDataTeacherProfile | null;
798
+ "classroom_name": string | null;
799
+ "course_session_id": string | null;
800
+ "course_session": ClassroomShowSessionGetResponseDataCourseSession | null;
801
+ "course_session_type_id": string | null;
802
+ "session_type": ClassroomShowSessionGetResponseDataSessionType | null;
803
+ "name": string | null;
804
+ "session_number": number | null;
805
+ "duration_minutes": number | null;
806
+ "description": string | null;
807
+ "teacher_user_id": string | null;
808
+ "teacher_profile": ClassroomShowSessionGetResponseDataTeacherProfile | null;
940
809
  "locked": boolean;
941
810
  "auto_unlock": boolean;
942
811
  "auto_present": boolean;
943
812
  "invited": boolean;
944
- "student_user_ids"?: string[] | null;
945
- "session_room_id"?: string | null;
946
- "session_lifecycle_status"?: string | null;
813
+ "student_user_ids": string[] | null;
814
+ "session_room_id": string | null;
815
+ "session_lifecycle_status": string | null;
947
816
  "session_access_mode": string;
948
817
  "session_archive_ready": boolean;
949
- "legacy_source_id"?: number | null;
950
- "starts_at"?: string | null;
951
- "ends_at"?: string | null;
818
+ "starts_at": string | null;
819
+ "ends_at": string | null;
952
820
  "status": string;
953
821
  "created_at": string;
954
822
  "updated_at": string;
@@ -979,18 +847,18 @@ export interface ClassroomUpdateSessionPatchResponseDataCourseSession extends Js
979
847
  "id": string;
980
848
  "course_id": string;
981
849
  "name": string;
982
- "description"?: string | null;
850
+ "description": string | null;
983
851
  "sort_order": number;
984
852
  "session_type": string;
985
- "session_type_id"?: string | null;
986
- "duration_minutes"?: number | null;
853
+ "session_type_id": string | null;
854
+ "duration_minutes": number | null;
987
855
  "status": string;
988
856
  }
989
857
  export interface ClassroomUpdateSessionPatchResponseDataSessionType extends JsonObject {
990
858
  "id": string;
991
859
  "code": string;
992
860
  "name": string;
993
- "name_fa"?: string | null;
861
+ "name_fa": string | null;
994
862
  "is_online": boolean;
995
863
  "status": string;
996
864
  "sort_order": number;
@@ -999,39 +867,38 @@ export interface ClassroomUpdateSessionPatchResponseDataSessionType extends Json
999
867
  }
1000
868
  export interface ClassroomUpdateSessionPatchResponseDataTeacherProfile extends JsonObject {
1001
869
  "user_id": string;
1002
- "first_name"?: JsonValue | null;
1003
- "last_name"?: JsonValue | null;
1004
- "email"?: string | null;
1005
- "national_code"?: string | null;
1006
- "phone"?: string | null;
1007
- "gender"?: string | null;
870
+ "first_name": JsonValue | null;
871
+ "last_name": JsonValue | null;
872
+ "email": string | null;
873
+ "national_code": string | null;
874
+ "phone": string | null;
875
+ "gender": string | null;
1008
876
  }
1009
877
  export interface ClassroomUpdateSessionPatchResponseData extends JsonObject {
1010
878
  "id": string;
1011
879
  "classroom_id": string;
1012
- "classroom_name"?: string | null;
1013
- "course_session_id"?: string | null;
1014
- "course_session"?: ClassroomUpdateSessionPatchResponseDataCourseSession | null;
1015
- "course_session_type_id"?: string | null;
1016
- "session_type"?: ClassroomUpdateSessionPatchResponseDataSessionType | null;
1017
- "name"?: string | null;
1018
- "session_number"?: number | null;
1019
- "duration_minutes"?: number | null;
1020
- "description"?: string | null;
1021
- "teacher_user_id"?: string | null;
1022
- "teacher_profile"?: ClassroomUpdateSessionPatchResponseDataTeacherProfile | null;
880
+ "classroom_name": string | null;
881
+ "course_session_id": string | null;
882
+ "course_session": ClassroomUpdateSessionPatchResponseDataCourseSession | null;
883
+ "course_session_type_id": string | null;
884
+ "session_type": ClassroomUpdateSessionPatchResponseDataSessionType | null;
885
+ "name": string | null;
886
+ "session_number": number | null;
887
+ "duration_minutes": number | null;
888
+ "description": string | null;
889
+ "teacher_user_id": string | null;
890
+ "teacher_profile": ClassroomUpdateSessionPatchResponseDataTeacherProfile | null;
1023
891
  "locked": boolean;
1024
892
  "auto_unlock": boolean;
1025
893
  "auto_present": boolean;
1026
894
  "invited": boolean;
1027
- "student_user_ids"?: string[] | null;
1028
- "session_room_id"?: string | null;
1029
- "session_lifecycle_status"?: string | null;
895
+ "student_user_ids": string[] | null;
896
+ "session_room_id": string | null;
897
+ "session_lifecycle_status": string | null;
1030
898
  "session_access_mode": string;
1031
899
  "session_archive_ready": boolean;
1032
- "legacy_source_id"?: number | null;
1033
- "starts_at"?: string | null;
1034
- "ends_at"?: string | null;
900
+ "starts_at": string | null;
901
+ "ends_at": string | null;
1035
902
  "status": string;
1036
903
  "created_at": string;
1037
904
  "updated_at": string;
@@ -1040,30 +907,30 @@ export interface ClassroomUpdateSessionPatchResponse extends ApiEnvelope<Classro
1040
907
  }
1041
908
  /** Backend query type: PaginationQuery. */
1042
909
  export interface ClassroomIndexAttendanceGetQuery extends QueryParams {
1043
- "page_number"?: number | null;
1044
- "page_size"?: number | null;
910
+ "page[number]"?: number | null;
911
+ "page[size]"?: number | null;
1045
912
  }
1046
913
  /** Backend response type: crate::models::PagedResult<models::AbsenceResponse>. */
1047
914
  export interface ClassroomIndexAttendanceGetResponseItemProfile extends JsonObject {
1048
915
  "user_id": string;
1049
- "first_name"?: JsonValue | null;
1050
- "last_name"?: JsonValue | null;
1051
- "email"?: string | null;
1052
- "national_code"?: string | null;
1053
- "phone"?: string | null;
1054
- "gender"?: string | null;
916
+ "first_name": JsonValue | null;
917
+ "last_name": JsonValue | null;
918
+ "email": string | null;
919
+ "national_code": string | null;
920
+ "phone": string | null;
921
+ "gender": string | null;
1055
922
  }
1056
923
  export interface ClassroomIndexAttendanceGetResponseItem extends JsonObject {
1057
924
  "id": string;
1058
925
  "classroom_session_id": string;
1059
926
  "user_id": string;
1060
- "profile"?: ClassroomIndexAttendanceGetResponseItemProfile | null;
927
+ "profile": ClassroomIndexAttendanceGetResponseItemProfile | null;
1061
928
  "status": string;
1062
- "absence_reason"?: string | null;
929
+ "absence_reason": string | null;
1063
930
  "attendance_mode": "online" | "in_person";
1064
931
  "online": boolean;
1065
- "attended_seconds"?: number | null;
1066
- "description"?: string | null;
932
+ "attended_seconds": number | null;
933
+ "description": string | null;
1067
934
  "ratings": JsonValue;
1068
935
  "created_at": string;
1069
936
  "updated_at": string;
@@ -1103,8 +970,8 @@ export interface ClassroomRecordAttendancePutResponse extends ApiEnvelope<Classr
1103
970
  }
1104
971
  /** Backend query type: models::TodaySessionListQuery. */
1105
972
  export interface ClassroomIndexTodaySessionsGetQuery extends QueryParams {
1106
- "page_number"?: number | null;
1107
- "page_size"?: number | null;
973
+ "page[number]"?: number | null;
974
+ "page[size]"?: number | null;
1108
975
  "date"?: string | null;
1109
976
  "timezone_offset_minutes"?: number | null;
1110
977
  }
@@ -1113,18 +980,18 @@ export interface ClassroomIndexTodaySessionsGetResponseItemCourseSession extends
1113
980
  "id": string;
1114
981
  "course_id": string;
1115
982
  "name": string;
1116
- "description"?: string | null;
983
+ "description": string | null;
1117
984
  "sort_order": number;
1118
985
  "session_type": string;
1119
- "session_type_id"?: string | null;
1120
- "duration_minutes"?: number | null;
986
+ "session_type_id": string | null;
987
+ "duration_minutes": number | null;
1121
988
  "status": string;
1122
989
  }
1123
990
  export interface ClassroomIndexTodaySessionsGetResponseItemSessionType extends JsonObject {
1124
991
  "id": string;
1125
992
  "code": string;
1126
993
  "name": string;
1127
- "name_fa"?: string | null;
994
+ "name_fa": string | null;
1128
995
  "is_online": boolean;
1129
996
  "status": string;
1130
997
  "sort_order": number;
@@ -1133,39 +1000,38 @@ export interface ClassroomIndexTodaySessionsGetResponseItemSessionType extends J
1133
1000
  }
1134
1001
  export interface ClassroomIndexTodaySessionsGetResponseItemTeacherProfile extends JsonObject {
1135
1002
  "user_id": string;
1136
- "first_name"?: JsonValue | null;
1137
- "last_name"?: JsonValue | null;
1138
- "email"?: string | null;
1139
- "national_code"?: string | null;
1140
- "phone"?: string | null;
1141
- "gender"?: string | null;
1003
+ "first_name": JsonValue | null;
1004
+ "last_name": JsonValue | null;
1005
+ "email": string | null;
1006
+ "national_code": string | null;
1007
+ "phone": string | null;
1008
+ "gender": string | null;
1142
1009
  }
1143
1010
  export interface ClassroomIndexTodaySessionsGetResponseItem extends JsonObject {
1144
1011
  "id": string;
1145
1012
  "classroom_id": string;
1146
- "classroom_name"?: string | null;
1147
- "course_session_id"?: string | null;
1148
- "course_session"?: ClassroomIndexTodaySessionsGetResponseItemCourseSession | null;
1149
- "course_session_type_id"?: string | null;
1150
- "session_type"?: ClassroomIndexTodaySessionsGetResponseItemSessionType | null;
1151
- "name"?: string | null;
1152
- "session_number"?: number | null;
1153
- "duration_minutes"?: number | null;
1154
- "description"?: string | null;
1155
- "teacher_user_id"?: string | null;
1156
- "teacher_profile"?: ClassroomIndexTodaySessionsGetResponseItemTeacherProfile | null;
1013
+ "classroom_name": string | null;
1014
+ "course_session_id": string | null;
1015
+ "course_session": ClassroomIndexTodaySessionsGetResponseItemCourseSession | null;
1016
+ "course_session_type_id": string | null;
1017
+ "session_type": ClassroomIndexTodaySessionsGetResponseItemSessionType | null;
1018
+ "name": string | null;
1019
+ "session_number": number | null;
1020
+ "duration_minutes": number | null;
1021
+ "description": string | null;
1022
+ "teacher_user_id": string | null;
1023
+ "teacher_profile": ClassroomIndexTodaySessionsGetResponseItemTeacherProfile | null;
1157
1024
  "locked": boolean;
1158
1025
  "auto_unlock": boolean;
1159
1026
  "auto_present": boolean;
1160
1027
  "invited": boolean;
1161
- "student_user_ids"?: string[] | null;
1162
- "session_room_id"?: string | null;
1163
- "session_lifecycle_status"?: string | null;
1028
+ "student_user_ids": string[] | null;
1029
+ "session_room_id": string | null;
1030
+ "session_lifecycle_status": string | null;
1164
1031
  "session_access_mode": string;
1165
1032
  "session_archive_ready": boolean;
1166
- "legacy_source_id"?: number | null;
1167
- "starts_at"?: string | null;
1168
- "ends_at"?: string | null;
1033
+ "starts_at": string | null;
1034
+ "ends_at": string | null;
1169
1035
  "status": string;
1170
1036
  "created_at": string;
1171
1037
  "updated_at": string;
@@ -1183,41 +1049,41 @@ export interface ClassroomIndexTodaySessionsGetResponseData extends JsonObject {
1183
1049
  export interface ClassroomIndexTodaySessionsGetResponse extends ApiEnvelope<ClassroomIndexTodaySessionsGetResponseData> {
1184
1050
  }
1185
1051
  /** Backend response type: Value. */
1186
- export interface IntegrationCurrentClassroomUsersGetResponse extends ApiEnvelope<JsonValue> {
1187
- }
1052
+ export type IntegrationCurrentClassroomUsersGetResponseData = import("./wire.types.js").LmsCurrentClassroomUsers;
1053
+ export type IntegrationCurrentClassroomUsersGetResponse = ApiEnvelope<import("./wire.types.js").LmsCurrentClassroomUsers>;
1188
1054
  /** Backend request type: UserIdBatch. */
1189
1055
  export interface IntegrationDropoutEligibilityPostInput extends JsonObject {
1190
1056
  "user_ids"?: string[];
1191
1057
  }
1192
1058
  /** Backend response type: Value. */
1193
- export interface IntegrationDropoutEligibilityPostResponse extends ApiEnvelope<JsonValue> {
1194
- }
1059
+ export type IntegrationDropoutEligibilityPostResponseData = import("./wire.types.js").LmsDropoutEligibility;
1060
+ export type IntegrationDropoutEligibilityPostResponse = ApiEnvelope<import("./wire.types.js").LmsDropoutEligibility>;
1195
1061
  /** Backend query type: PaginationQuery. */
1196
1062
  export interface ClassroomIndexAbsencesGetQuery extends QueryParams {
1197
- "page_number"?: number | null;
1198
- "page_size"?: number | null;
1063
+ "page[number]"?: number | null;
1064
+ "page[size]"?: number | null;
1199
1065
  }
1200
1066
  /** Backend response type: crate::models::PagedResult<models::AbsenceResponse>. */
1201
1067
  export interface ClassroomIndexAbsencesGetResponseItemProfile extends JsonObject {
1202
1068
  "user_id": string;
1203
- "first_name"?: JsonValue | null;
1204
- "last_name"?: JsonValue | null;
1205
- "email"?: string | null;
1206
- "national_code"?: string | null;
1207
- "phone"?: string | null;
1208
- "gender"?: string | null;
1069
+ "first_name": JsonValue | null;
1070
+ "last_name": JsonValue | null;
1071
+ "email": string | null;
1072
+ "national_code": string | null;
1073
+ "phone": string | null;
1074
+ "gender": string | null;
1209
1075
  }
1210
1076
  export interface ClassroomIndexAbsencesGetResponseItem extends JsonObject {
1211
1077
  "id": string;
1212
1078
  "classroom_session_id": string;
1213
1079
  "user_id": string;
1214
- "profile"?: ClassroomIndexAbsencesGetResponseItemProfile | null;
1080
+ "profile": ClassroomIndexAbsencesGetResponseItemProfile | null;
1215
1081
  "status": string;
1216
- "absence_reason"?: string | null;
1082
+ "absence_reason": string | null;
1217
1083
  "attendance_mode": "online" | "in_person";
1218
1084
  "online": boolean;
1219
- "attended_seconds"?: number | null;
1220
- "description"?: string | null;
1085
+ "attended_seconds": number | null;
1086
+ "description": string | null;
1221
1087
  "ratings": JsonValue;
1222
1088
  "created_at": string;
1223
1089
  "updated_at": string;
@@ -1235,39 +1101,22 @@ export interface ClassroomIndexAbsencesGetResponseData extends JsonObject {
1235
1101
  export interface ClassroomIndexAbsencesGetResponse extends ApiEnvelope<ClassroomIndexAbsencesGetResponseData> {
1236
1102
  }
1237
1103
  /** Backend response type: Branding. */
1238
- export interface BrandingShowGetResponseData extends JsonObject {
1239
- "title"?: string | null;
1240
- "localizations": Record<string, BackendJson<"BrandText">>;
1241
- "icon_asset_key"?: string | null;
1242
- "icon_url"?: string | null;
1243
- }
1244
- export interface BrandingShowGetResponse extends ApiEnvelope<BrandingShowGetResponseData> {
1245
- }
1104
+ export type BrandingShowGetResponseData = import("./branding.types.js").LmsBranding;
1105
+ export type BrandingShowGetResponse = import("@faiber/sdk-core").ApiEnvelope<import("./branding.types.js").LmsBranding>;
1246
1106
  /** Backend request type: Branding. */
1247
- export interface BrandingUpdatePutInput extends JsonObject {
1248
- "title"?: string | null;
1249
- "localizations": Record<string, BackendJson<"BrandText">>;
1250
- "icon_asset_key"?: string | null;
1251
- "icon_url"?: string | null;
1252
- }
1107
+ export type BrandingUpdatePutInput = import("./branding.types.js").LmsBrandingInput;
1253
1108
  /** Backend response type: Branding. */
1254
- export interface BrandingUpdatePutResponseData extends JsonObject {
1255
- "title"?: string | null;
1256
- "localizations": Record<string, BackendJson<"BrandText">>;
1257
- "icon_asset_key"?: string | null;
1258
- "icon_url"?: string | null;
1259
- }
1260
- export interface BrandingUpdatePutResponse extends ApiEnvelope<BrandingUpdatePutResponseData> {
1261
- }
1109
+ export type BrandingUpdatePutResponseData = import("./branding.types.js").LmsBranding;
1110
+ export type BrandingUpdatePutResponse = import("@faiber/sdk-core").ApiEnvelope<import("./branding.types.js").LmsBranding>;
1262
1111
  /** Backend request type: multipart/form-data. */
1263
1112
  export type BrandingUploadPostInput = FormData;
1264
1113
  /** Backend response type: serde_json::Value. */
1265
- export interface BrandingUploadPostResponse extends ApiEnvelope<JsonValue> {
1266
- }
1114
+ export type BrandingUploadPostResponseData = import("./wire.types.js").LmsBrandingUpload;
1115
+ export type BrandingUploadPostResponse = ApiEnvelope<import("./wire.types.js").LmsBrandingUpload>;
1267
1116
  /** Backend query type: PaginationQuery. */
1268
1117
  export interface ConfigIndexClassroomTypeGetQuery extends QueryParams {
1269
- "page_number"?: number | null;
1270
- "page_size"?: number | null;
1118
+ "page[number]"?: number | null;
1119
+ "page[size]"?: number | null;
1271
1120
  }
1272
1121
  /** Backend response type: crate::models::PagedResult<models::ClassroomTypeResponse>. */
1273
1122
  export interface ConfigIndexClassroomTypeGetResponseItem extends JsonObject {
@@ -1321,15 +1170,15 @@ export interface ConfigUpdateClassroomTypePatchResponse extends ApiEnvelope<Conf
1321
1170
  }
1322
1171
  /** Backend query type: PaginationQuery. */
1323
1172
  export interface ConfigIndexEducationDayGetQuery extends QueryParams {
1324
- "page_number"?: number | null;
1325
- "page_size"?: number | null;
1173
+ "page[number]"?: number | null;
1174
+ "page[size]"?: number | null;
1326
1175
  }
1327
1176
  /** Backend response type: crate::models::PagedResult<models::EducationDayResponse>. */
1328
1177
  export interface ConfigIndexEducationDayGetResponseItem extends JsonObject {
1329
1178
  "id": string;
1330
1179
  "day_date": string;
1331
1180
  "is_holiday": boolean;
1332
- "label"?: string | null;
1181
+ "label": string | null;
1333
1182
  "created_at": string;
1334
1183
  }
1335
1184
  export interface ConfigIndexEducationDayGetResponsePageMeta extends JsonObject {
@@ -1355,7 +1204,7 @@ export interface ConfigStoreEducationDayPostResponseData extends JsonObject {
1355
1204
  "id": string;
1356
1205
  "day_date": string;
1357
1206
  "is_holiday": boolean;
1358
- "label"?: string | null;
1207
+ "label": string | null;
1359
1208
  "created_at": string;
1360
1209
  }
1361
1210
  export interface ConfigStoreEducationDayPostResponse extends ApiEnvelope<ConfigStoreEducationDayPostResponseData> {
@@ -1365,7 +1214,7 @@ export interface ConfigShowEducationDayGetResponseData extends JsonObject {
1365
1214
  "id": string;
1366
1215
  "day_date": string;
1367
1216
  "is_holiday": boolean;
1368
- "label"?: string | null;
1217
+ "label": string | null;
1369
1218
  "created_at": string;
1370
1219
  }
1371
1220
  export interface ConfigShowEducationDayGetResponse extends ApiEnvelope<ConfigShowEducationDayGetResponseData> {
@@ -1381,15 +1230,15 @@ export interface ConfigUpdateEducationDayPatchResponseData extends JsonObject {
1381
1230
  "id": string;
1382
1231
  "day_date": string;
1383
1232
  "is_holiday": boolean;
1384
- "label"?: string | null;
1233
+ "label": string | null;
1385
1234
  "created_at": string;
1386
1235
  }
1387
1236
  export interface ConfigUpdateEducationDayPatchResponse extends ApiEnvelope<ConfigUpdateEducationDayPatchResponseData> {
1388
1237
  }
1389
1238
  /** Backend query type: PaginationQuery. */
1390
1239
  export interface ConfigIndexGradeGetQuery extends QueryParams {
1391
- "page_number"?: number | null;
1392
- "page_size"?: number | null;
1240
+ "page[number]"?: number | null;
1241
+ "page[size]"?: number | null;
1393
1242
  }
1394
1243
  /** Backend response type: crate::models::PagedResult<models::GradeResponse>. */
1395
1244
  export interface ConfigIndexGradeGetResponseItem extends JsonObject {
@@ -1449,14 +1298,14 @@ export interface ConfigUpdateGradePatchResponse extends ApiEnvelope<ConfigUpdate
1449
1298
  }
1450
1299
  /** Backend query type: PaginationQuery. */
1451
1300
  export interface ConfigIndexHolidayGetQuery extends QueryParams {
1452
- "page_number"?: number | null;
1453
- "page_size"?: number | null;
1301
+ "page[number]"?: number | null;
1302
+ "page[size]"?: number | null;
1454
1303
  }
1455
1304
  /** Backend response type: crate::models::PagedResult<models::HolidayResponse>. */
1456
1305
  export interface ConfigIndexHolidayGetResponseItem extends JsonObject {
1457
1306
  "id": string;
1458
1307
  "name": string;
1459
- "description"?: string | null;
1308
+ "description": string | null;
1460
1309
  "holiday_date": string;
1461
1310
  "sort_order": number;
1462
1311
  "status": string;
@@ -1487,7 +1336,7 @@ export interface ConfigStoreHolidayPostInput extends JsonObject {
1487
1336
  export interface ConfigStoreHolidayPostResponseData extends JsonObject {
1488
1337
  "id": string;
1489
1338
  "name": string;
1490
- "description"?: string | null;
1339
+ "description": string | null;
1491
1340
  "holiday_date": string;
1492
1341
  "sort_order": number;
1493
1342
  "status": string;
@@ -1500,7 +1349,7 @@ export interface ConfigStoreHolidayPostResponse extends ApiEnvelope<ConfigStoreH
1500
1349
  export interface ConfigShowHolidayGetResponseData extends JsonObject {
1501
1350
  "id": string;
1502
1351
  "name": string;
1503
- "description"?: string | null;
1352
+ "description": string | null;
1504
1353
  "holiday_date": string;
1505
1354
  "sort_order": number;
1506
1355
  "status": string;
@@ -1521,7 +1370,7 @@ export interface ConfigUpdateHolidayPatchInput extends JsonObject {
1521
1370
  export interface ConfigUpdateHolidayPatchResponseData extends JsonObject {
1522
1371
  "id": string;
1523
1372
  "name": string;
1524
- "description"?: string | null;
1373
+ "description": string | null;
1525
1374
  "holiday_date": string;
1526
1375
  "sort_order": number;
1527
1376
  "status": string;
@@ -1532,8 +1381,8 @@ export interface ConfigUpdateHolidayPatchResponse extends ApiEnvelope<ConfigUpda
1532
1381
  }
1533
1382
  /** Backend query type: PaginationQuery. */
1534
1383
  export interface ConfigIndexWeekendGetQuery extends QueryParams {
1535
- "page_number"?: number | null;
1536
- "page_size"?: number | null;
1384
+ "page[number]"?: number | null;
1385
+ "page[size]"?: number | null;
1537
1386
  }
1538
1387
  /** Backend response type: crate::models::PagedResult<models::WeekendResponse>. */
1539
1388
  export interface ConfigIndexWeekendGetResponseItem extends JsonObject {
@@ -1587,26 +1436,26 @@ export interface ConfigUpdateWeekendPatchResponse extends ApiEnvelope<ConfigUpda
1587
1436
  }
1588
1437
  /** Backend query type: CourseListQuery. */
1589
1438
  export interface CourseIndexCourseGetQuery extends QueryParams {
1590
- "page_number"?: number | null;
1591
- "page_size"?: number | null;
1439
+ "page[number]"?: number | null;
1440
+ "page[size]"?: number | null;
1592
1441
  "category_ids"?: string | null;
1593
1442
  "search"?: string | null;
1594
1443
  }
1595
1444
  /** Backend response type: crate::models::PagedResult<models::CourseResponse>. */
1596
1445
  export interface CourseIndexCourseGetResponseItem extends JsonObject {
1597
1446
  "id": string;
1598
- "category_id"?: string | null;
1447
+ "category_id": string | null;
1599
1448
  "name": string;
1600
- "title"?: string | null;
1601
- "description"?: string | null;
1602
- "cover_url"?: string | null;
1449
+ "title": string | null;
1450
+ "description": string | null;
1451
+ "cover_url": string | null;
1603
1452
  "sort_order": number;
1604
- "duration"?: string | null;
1605
- "passing_mark"?: number | null;
1453
+ "duration": string | null;
1454
+ "passing_mark": number | null;
1606
1455
  "certificate_template_ids": string[];
1607
- "price"?: string | null;
1608
- "in_person_price"?: string | null;
1609
- "online_price"?: string | null;
1456
+ "price": string | null;
1457
+ "in_person_price": string | null;
1458
+ "online_price": string | null;
1610
1459
  "status": string;
1611
1460
  "created_at": string;
1612
1461
  "updated_at": string;
@@ -1642,18 +1491,18 @@ export interface CourseStoreCoursePostInput extends JsonObject {
1642
1491
  /** Backend response type: models::CourseResponse. */
1643
1492
  export interface CourseStoreCoursePostResponseData extends JsonObject {
1644
1493
  "id": string;
1645
- "category_id"?: string | null;
1494
+ "category_id": string | null;
1646
1495
  "name": string;
1647
- "title"?: string | null;
1648
- "description"?: string | null;
1649
- "cover_url"?: string | null;
1496
+ "title": string | null;
1497
+ "description": string | null;
1498
+ "cover_url": string | null;
1650
1499
  "sort_order": number;
1651
- "duration"?: string | null;
1652
- "passing_mark"?: number | null;
1500
+ "duration": string | null;
1501
+ "passing_mark": number | null;
1653
1502
  "certificate_template_ids": string[];
1654
- "price"?: string | null;
1655
- "in_person_price"?: string | null;
1656
- "online_price"?: string | null;
1503
+ "price": string | null;
1504
+ "in_person_price": string | null;
1505
+ "online_price": string | null;
1657
1506
  "status": string;
1658
1507
  "created_at": string;
1659
1508
  "updated_at": string;
@@ -1662,25 +1511,25 @@ export interface CourseStoreCoursePostResponse extends ApiEnvelope<CourseStoreCo
1662
1511
  }
1663
1512
  /** Backend query type: PaginationQuery. */
1664
1513
  export interface CourseIndexSessionGetQuery extends QueryParams {
1665
- "page_number"?: number | null;
1666
- "page_size"?: number | null;
1514
+ "page[number]"?: number | null;
1515
+ "page[size]"?: number | null;
1667
1516
  }
1668
1517
  /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
1669
1518
  export interface CourseIndexSessionGetResponseItem extends JsonObject {
1670
1519
  "id": string;
1671
1520
  "course_id": string;
1672
1521
  "name": string;
1673
- "description"?: string | null;
1522
+ "description": string | null;
1674
1523
  "sort_order": number;
1675
1524
  "session_type": string;
1676
- "session_type_id"?: string | null;
1677
- "exam_id"?: string | null;
1678
- "duration_minutes"?: number | null;
1525
+ "session_type_id": string | null;
1526
+ "exam_id": string | null;
1527
+ "duration_minutes": number | null;
1679
1528
  "auto_unlock": boolean;
1680
- "info"?: string | null;
1681
- "video_type"?: string | null;
1682
- "external_url"?: string | null;
1683
- "drm_mixed_media_id"?: string | null;
1529
+ "info": string | null;
1530
+ "video_type": string | null;
1531
+ "external_url": string | null;
1532
+ "drm_mixed_media_id": string | null;
1684
1533
  "status": string;
1685
1534
  "created_at": string;
1686
1535
  "updated_at": string;
@@ -1719,17 +1568,17 @@ export interface CourseStoreSessionPostResponseData extends JsonObject {
1719
1568
  "id": string;
1720
1569
  "course_id": string;
1721
1570
  "name": string;
1722
- "description"?: string | null;
1571
+ "description": string | null;
1723
1572
  "sort_order": number;
1724
1573
  "session_type": string;
1725
- "session_type_id"?: string | null;
1726
- "exam_id"?: string | null;
1727
- "duration_minutes"?: number | null;
1574
+ "session_type_id": string | null;
1575
+ "exam_id": string | null;
1576
+ "duration_minutes": number | null;
1728
1577
  "auto_unlock": boolean;
1729
- "info"?: string | null;
1730
- "video_type"?: string | null;
1731
- "external_url"?: string | null;
1732
- "drm_mixed_media_id"?: string | null;
1578
+ "info": string | null;
1579
+ "video_type": string | null;
1580
+ "external_url": string | null;
1581
+ "drm_mixed_media_id": string | null;
1733
1582
  "status": string;
1734
1583
  "created_at": string;
1735
1584
  "updated_at": string;
@@ -1737,24 +1586,23 @@ export interface CourseStoreSessionPostResponseData extends JsonObject {
1737
1586
  export interface CourseStoreSessionPostResponse extends ApiEnvelope<CourseStoreSessionPostResponseData> {
1738
1587
  }
1739
1588
  /** Backend response type: serde_json::Value. */
1740
- export interface CourseDestroySessionDeleteResponse extends ApiEnvelope<JsonValue> {
1741
- }
1589
+ export type CourseDestroySessionDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
1742
1590
  /** Backend response type: models::SessionResponse. */
1743
1591
  export interface CourseShowSessionGetResponseData extends JsonObject {
1744
1592
  "id": string;
1745
1593
  "course_id": string;
1746
1594
  "name": string;
1747
- "description"?: string | null;
1595
+ "description": string | null;
1748
1596
  "sort_order": number;
1749
1597
  "session_type": string;
1750
- "session_type_id"?: string | null;
1751
- "exam_id"?: string | null;
1752
- "duration_minutes"?: number | null;
1598
+ "session_type_id": string | null;
1599
+ "exam_id": string | null;
1600
+ "duration_minutes": number | null;
1753
1601
  "auto_unlock": boolean;
1754
- "info"?: string | null;
1755
- "video_type"?: string | null;
1756
- "external_url"?: string | null;
1757
- "drm_mixed_media_id"?: string | null;
1602
+ "info": string | null;
1603
+ "video_type": string | null;
1604
+ "external_url": string | null;
1605
+ "drm_mixed_media_id": string | null;
1758
1606
  "status": string;
1759
1607
  "created_at": string;
1760
1608
  "updated_at": string;
@@ -1782,17 +1630,17 @@ export interface CourseUpdateSessionPatchResponseData extends JsonObject {
1782
1630
  "id": string;
1783
1631
  "course_id": string;
1784
1632
  "name": string;
1785
- "description"?: string | null;
1633
+ "description": string | null;
1786
1634
  "sort_order": number;
1787
1635
  "session_type": string;
1788
- "session_type_id"?: string | null;
1789
- "exam_id"?: string | null;
1790
- "duration_minutes"?: number | null;
1636
+ "session_type_id": string | null;
1637
+ "exam_id": string | null;
1638
+ "duration_minutes": number | null;
1791
1639
  "auto_unlock": boolean;
1792
- "info"?: string | null;
1793
- "video_type"?: string | null;
1794
- "external_url"?: string | null;
1795
- "drm_mixed_media_id"?: string | null;
1640
+ "info": string | null;
1641
+ "video_type": string | null;
1642
+ "external_url": string | null;
1643
+ "drm_mixed_media_id": string | null;
1796
1644
  "status": string;
1797
1645
  "created_at": string;
1798
1646
  "updated_at": string;
@@ -1800,23 +1648,22 @@ export interface CourseUpdateSessionPatchResponseData extends JsonObject {
1800
1648
  export interface CourseUpdateSessionPatchResponse extends ApiEnvelope<CourseUpdateSessionPatchResponseData> {
1801
1649
  }
1802
1650
  /** Backend response type: serde_json::Value. */
1803
- export interface CourseDestroyCourseDeleteResponse extends ApiEnvelope<JsonValue> {
1804
- }
1651
+ export type CourseDestroyCourseDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
1805
1652
  /** Backend response type: models::CourseResponse. */
1806
1653
  export interface CourseShowCourseGetResponseData extends JsonObject {
1807
1654
  "id": string;
1808
- "category_id"?: string | null;
1655
+ "category_id": string | null;
1809
1656
  "name": string;
1810
- "title"?: string | null;
1811
- "description"?: string | null;
1812
- "cover_url"?: string | null;
1657
+ "title": string | null;
1658
+ "description": string | null;
1659
+ "cover_url": string | null;
1813
1660
  "sort_order": number;
1814
- "duration"?: string | null;
1815
- "passing_mark"?: number | null;
1661
+ "duration": string | null;
1662
+ "passing_mark": number | null;
1816
1663
  "certificate_template_ids": string[];
1817
- "price"?: string | null;
1818
- "in_person_price"?: string | null;
1819
- "online_price"?: string | null;
1664
+ "price": string | null;
1665
+ "in_person_price": string | null;
1666
+ "online_price": string | null;
1820
1667
  "status": string;
1821
1668
  "created_at": string;
1822
1669
  "updated_at": string;
@@ -1842,18 +1689,18 @@ export interface CourseUpdateCoursePatchInput extends JsonObject {
1842
1689
  /** Backend response type: models::CourseResponse. */
1843
1690
  export interface CourseUpdateCoursePatchResponseData extends JsonObject {
1844
1691
  "id": string;
1845
- "category_id"?: string | null;
1692
+ "category_id": string | null;
1846
1693
  "name": string;
1847
- "title"?: string | null;
1848
- "description"?: string | null;
1849
- "cover_url"?: string | null;
1694
+ "title": string | null;
1695
+ "description": string | null;
1696
+ "cover_url": string | null;
1850
1697
  "sort_order": number;
1851
- "duration"?: string | null;
1852
- "passing_mark"?: number | null;
1698
+ "duration": string | null;
1699
+ "passing_mark": number | null;
1853
1700
  "certificate_template_ids": string[];
1854
- "price"?: string | null;
1855
- "in_person_price"?: string | null;
1856
- "online_price"?: string | null;
1701
+ "price": string | null;
1702
+ "in_person_price": string | null;
1703
+ "online_price": string | null;
1857
1704
  "status": string;
1858
1705
  "created_at": string;
1859
1706
  "updated_at": string;
@@ -1865,19 +1712,19 @@ export interface IntegrationBatchCoursesPostInput extends JsonObject {
1865
1712
  "ids"?: string[];
1866
1713
  }
1867
1714
  /** Backend response type: Value. */
1868
- export interface IntegrationBatchCoursesPostResponse extends ApiEnvelope<JsonValue> {
1869
- }
1715
+ export type IntegrationBatchCoursesPostResponseData = import("./wire.types.js").LmsBatchCourses;
1716
+ export type IntegrationBatchCoursesPostResponse = ApiEnvelope<import("./wire.types.js").LmsBatchCourses>;
1870
1717
  /** Backend query type: PaginationQuery. */
1871
1718
  export interface CourseIndexCategoryGetQuery extends QueryParams {
1872
- "page_number"?: number | null;
1873
- "page_size"?: number | null;
1719
+ "page[number]"?: number | null;
1720
+ "page[size]"?: number | null;
1874
1721
  }
1875
1722
  /** Backend response type: crate::models::PagedResult<models::CategoryResponse>. */
1876
1723
  export interface CourseIndexCategoryGetResponseItem extends JsonObject {
1877
1724
  "id": string;
1878
1725
  "name": string;
1879
- "description"?: string | null;
1880
- "image_url"?: string | null;
1726
+ "description": string | null;
1727
+ "image_url": string | null;
1881
1728
  "sort_order": number;
1882
1729
  "status": string;
1883
1730
  "created_at": string;
@@ -1907,8 +1754,8 @@ export interface CourseStoreCategoryPostInput extends JsonObject {
1907
1754
  export interface CourseStoreCategoryPostResponseData extends JsonObject {
1908
1755
  "id": string;
1909
1756
  "name": string;
1910
- "description"?: string | null;
1911
- "image_url"?: string | null;
1757
+ "description": string | null;
1758
+ "image_url": string | null;
1912
1759
  "sort_order": number;
1913
1760
  "status": string;
1914
1761
  "created_at": string;
@@ -1917,14 +1764,13 @@ export interface CourseStoreCategoryPostResponseData extends JsonObject {
1917
1764
  export interface CourseStoreCategoryPostResponse extends ApiEnvelope<CourseStoreCategoryPostResponseData> {
1918
1765
  }
1919
1766
  /** Backend response type: serde_json::Value. */
1920
- export interface CourseDestroyCategoryDeleteResponse extends ApiEnvelope<JsonValue> {
1921
- }
1767
+ export type CourseDestroyCategoryDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
1922
1768
  /** Backend response type: models::CategoryResponse. */
1923
1769
  export interface CourseShowCategoryGetResponseData extends JsonObject {
1924
1770
  "id": string;
1925
1771
  "name": string;
1926
- "description"?: string | null;
1927
- "image_url"?: string | null;
1772
+ "description": string | null;
1773
+ "image_url": string | null;
1928
1774
  "sort_order": number;
1929
1775
  "status": string;
1930
1776
  "created_at": string;
@@ -1944,8 +1790,8 @@ export interface CourseUpdateCategoryPatchInput extends JsonObject {
1944
1790
  export interface CourseUpdateCategoryPatchResponseData extends JsonObject {
1945
1791
  "id": string;
1946
1792
  "name": string;
1947
- "description"?: string | null;
1948
- "image_url"?: string | null;
1793
+ "description": string | null;
1794
+ "image_url": string | null;
1949
1795
  "sort_order": number;
1950
1796
  "status": string;
1951
1797
  "created_at": string;
@@ -1959,23 +1805,21 @@ export interface CourseReorderCategoriesPatchInput extends JsonObject {
1959
1805
  "over_id": string;
1960
1806
  }
1961
1807
  /** Backend response type: serde_json::Value. */
1962
- export interface CourseReorderCategoriesPatchResponse extends ApiEnvelope<JsonValue> {
1963
- }
1808
+ export type CourseReorderCategoriesPatchResponse = import("./wire.types.js").LmsEmptyMutationResponse;
1964
1809
  /** Backend request type: models::ReorderRequest. */
1965
1810
  export interface CourseReorderCoursesPatchInput extends JsonObject {
1966
1811
  "active_id": string;
1967
1812
  "over_id": string;
1968
1813
  }
1969
1814
  /** Backend response type: serde_json::Value. */
1970
- export interface CourseReorderCoursesPatchResponse extends ApiEnvelope<JsonValue> {
1971
- }
1815
+ export type CourseReorderCoursesPatchResponse = import("./wire.types.js").LmsEmptyMutationResponse;
1972
1816
  /** Backend request type: IdBatch. */
1973
1817
  export interface IntegrationBatchCourseSuccessorsPostInput extends JsonObject {
1974
1818
  "ids"?: string[];
1975
1819
  }
1976
1820
  /** Backend response type: Value. */
1977
- export interface IntegrationBatchCourseSuccessorsPostResponse extends ApiEnvelope<JsonValue> {
1978
- }
1821
+ export type IntegrationBatchCourseSuccessorsPostResponseData = import("./wire.types.js").LmsCourseSuccessors;
1822
+ export type IntegrationBatchCourseSuccessorsPostResponse = ApiEnvelope<import("./wire.types.js").LmsCourseSuccessors>;
1979
1823
  /** Backend query type: models::DashboardQuery. */
1980
1824
  export interface DashboardIndexGetQuery extends QueryParams {
1981
1825
  "mode"?: string | null;
@@ -2031,12 +1875,12 @@ export interface DrmRoutesIndexCompositionsGetResponse extends ApiEnvelope<DrmRo
2031
1875
  /** Backend response type: models::EvaluationContext. */
2032
1876
  export interface EvaluationGetContextGetResponseDataTeacherRatingsTargetsProfile extends JsonObject {
2033
1877
  "user_id": string;
2034
- "first_name"?: JsonValue | null;
2035
- "last_name"?: JsonValue | null;
2036
- "email"?: string | null;
2037
- "national_code"?: string | null;
2038
- "phone"?: string | null;
2039
- "gender"?: string | null;
1878
+ "first_name": JsonValue | null;
1879
+ "last_name": JsonValue | null;
1880
+ "email": string | null;
1881
+ "national_code": string | null;
1882
+ "phone": string | null;
1883
+ "gender": string | null;
2040
1884
  }
2041
1885
  export interface EvaluationGetContextGetResponseDataTeacherRatingsTargetsQuestions extends JsonObject {
2042
1886
  "stable_id": string;
@@ -2049,15 +1893,15 @@ export interface EvaluationGetContextGetResponseDataTeacherRatingsTargetsQuestio
2049
1893
  "description_fa": string;
2050
1894
  "allow_not_applicable": boolean;
2051
1895
  "enabled": boolean;
2052
- "archived"?: boolean;
1896
+ "archived": boolean;
2053
1897
  "sort_order": number;
2054
1898
  }
2055
1899
  export interface EvaluationGetContextGetResponseDataTeacherRatingsTargets extends JsonObject {
2056
1900
  "user_id": string;
2057
- "profile"?: EvaluationGetContextGetResponseDataTeacherRatingsTargetsProfile | null;
1901
+ "profile": EvaluationGetContextGetResponseDataTeacherRatingsTargetsProfile | null;
2058
1902
  "submitted": boolean;
2059
- "scores"?: JsonValue | null;
2060
- "description"?: string | null;
1903
+ "scores": JsonValue | null;
1904
+ "description": string | null;
2061
1905
  "questions": EvaluationGetContextGetResponseDataTeacherRatingsTargetsQuestions[];
2062
1906
  }
2063
1907
  export interface EvaluationGetContextGetResponseDataTeacherRatingsQuestions extends JsonObject {
@@ -2071,7 +1915,7 @@ export interface EvaluationGetContextGetResponseDataTeacherRatingsQuestions exte
2071
1915
  "description_fa": string;
2072
1916
  "allow_not_applicable": boolean;
2073
1917
  "enabled": boolean;
2074
- "archived"?: boolean;
1918
+ "archived": boolean;
2075
1919
  "sort_order": number;
2076
1920
  }
2077
1921
  export interface EvaluationGetContextGetResponseDataTeacherRatings extends JsonObject {
@@ -2092,15 +1936,15 @@ export interface EvaluationGetContextGetResponseDataStudentFeedbackQuestions ext
2092
1936
  "description_fa": string;
2093
1937
  "allow_not_applicable": boolean;
2094
1938
  "enabled": boolean;
2095
- "archived"?: boolean;
1939
+ "archived": boolean;
2096
1940
  "sort_order": number;
2097
1941
  }
2098
1942
  export interface EvaluationGetContextGetResponseDataStudentFeedback extends JsonObject {
2099
1943
  "enabled": boolean;
2100
1944
  "applicable": boolean;
2101
1945
  "submitted": boolean;
2102
- "scores"?: JsonValue | null;
2103
- "description"?: string | null;
1946
+ "scores": JsonValue | null;
1947
+ "description": string | null;
2104
1948
  "fields": string[];
2105
1949
  "questions": EvaluationGetContextGetResponseDataStudentFeedbackQuestions[];
2106
1950
  }
@@ -2113,12 +1957,7 @@ export interface EvaluationGetContextGetResponseData extends JsonObject {
2113
1957
  export interface EvaluationGetContextGetResponse extends ApiEnvelope<EvaluationGetContextGetResponseData> {
2114
1958
  }
2115
1959
  /** Backend request type: models::SubmitEvaluation. */
2116
- export interface EvaluationSubmitPostInput extends JsonObject {
2117
- "kind": string;
2118
- "target_user_id"?: string | null;
2119
- "scores": JsonValue;
2120
- "description"?: string | null;
2121
- }
1960
+ export type EvaluationSubmitPostInput = import("./wire.types.js").LmsSubmitEvaluationInput;
2122
1961
  /** Backend response type: models::SubmitEvaluationResponse. */
2123
1962
  export interface EvaluationSubmitPostResponseData extends JsonObject {
2124
1963
  "id": string;
@@ -2138,7 +1977,7 @@ export interface EvaluationGetSettingsGetResponseDataQuestions extends JsonObjec
2138
1977
  "description_fa": string;
2139
1978
  "allow_not_applicable": boolean;
2140
1979
  "enabled": boolean;
2141
- "archived"?: boolean;
1980
+ "archived": boolean;
2142
1981
  "sort_order": number;
2143
1982
  }
2144
1983
  export interface EvaluationGetSettingsGetResponseData extends JsonObject {
@@ -2179,7 +2018,7 @@ export interface EvaluationUpdateSettingsPutResponseDataQuestions extends JsonOb
2179
2018
  "description_fa": string;
2180
2019
  "allow_not_applicable": boolean;
2181
2020
  "enabled": boolean;
2182
- "archived"?: boolean;
2021
+ "archived": boolean;
2183
2022
  "sort_order": number;
2184
2023
  }
2185
2024
  export interface EvaluationUpdateSettingsPutResponseData extends JsonObject {
@@ -2191,8 +2030,8 @@ export interface EvaluationUpdateSettingsPutResponse extends ApiEnvelope<Evaluat
2191
2030
  }
2192
2031
  /** Backend query type: models::ExamListQuery. */
2193
2032
  export interface ExamIndexExamGetQuery extends QueryParams {
2194
- "page_number"?: number | null;
2195
- "page_size"?: number | null;
2033
+ "page[number]"?: number | null;
2034
+ "page[size]"?: number | null;
2196
2035
  "search"?: string | null;
2197
2036
  "status"?: string | null;
2198
2037
  "course_id"?: string | null;
@@ -2206,18 +2045,18 @@ export interface ExamIndexExamGetQuery extends QueryParams {
2206
2045
  /** Backend response type: crate::models::PagedResult<models::ExamResponse>. */
2207
2046
  export interface ExamIndexExamGetResponseItem extends JsonObject {
2208
2047
  "id": string;
2209
- "course_id"?: string | null;
2210
- "grade_id"?: string | null;
2048
+ "course_id": string | null;
2049
+ "grade_id": string | null;
2211
2050
  "name": string;
2212
- "description"?: string | null;
2213
- "info"?: string | null;
2214
- "cover_url"?: string | null;
2215
- "duration_minutes"?: number | null;
2216
- "passing_mark"?: number | null;
2217
- "questions_count"?: number | null;
2218
- "easy_count"?: number | null;
2219
- "medium_count"?: number | null;
2220
- "hard_count"?: number | null;
2051
+ "description": string | null;
2052
+ "info": string | null;
2053
+ "cover_url": string | null;
2054
+ "duration_minutes": number | null;
2055
+ "passing_mark": number | null;
2056
+ "questions_count": number | null;
2057
+ "easy_count": number | null;
2058
+ "medium_count": number | null;
2059
+ "hard_count": number | null;
2221
2060
  "selection_mode": string;
2222
2061
  "status": string;
2223
2062
  "created_at": string;
@@ -2255,18 +2094,18 @@ export interface ExamStoreExamPostInput extends JsonObject {
2255
2094
  /** Backend response type: models::ExamResponse. */
2256
2095
  export interface ExamStoreExamPostResponseData extends JsonObject {
2257
2096
  "id": string;
2258
- "course_id"?: string | null;
2259
- "grade_id"?: string | null;
2097
+ "course_id": string | null;
2098
+ "grade_id": string | null;
2260
2099
  "name": string;
2261
- "description"?: string | null;
2262
- "info"?: string | null;
2263
- "cover_url"?: string | null;
2264
- "duration_minutes"?: number | null;
2265
- "passing_mark"?: number | null;
2266
- "questions_count"?: number | null;
2267
- "easy_count"?: number | null;
2268
- "medium_count"?: number | null;
2269
- "hard_count"?: number | null;
2100
+ "description": string | null;
2101
+ "info": string | null;
2102
+ "cover_url": string | null;
2103
+ "duration_minutes": number | null;
2104
+ "passing_mark": number | null;
2105
+ "questions_count": number | null;
2106
+ "easy_count": number | null;
2107
+ "medium_count": number | null;
2108
+ "hard_count": number | null;
2270
2109
  "selection_mode": string;
2271
2110
  "status": string;
2272
2111
  "created_at": string;
@@ -2275,23 +2114,22 @@ export interface ExamStoreExamPostResponseData extends JsonObject {
2275
2114
  export interface ExamStoreExamPostResponse extends ApiEnvelope<ExamStoreExamPostResponseData> {
2276
2115
  }
2277
2116
  /** Backend response type: serde_json::Value. */
2278
- export interface ExamDestroyExamDeleteResponse extends ApiEnvelope<JsonValue> {
2279
- }
2117
+ export type ExamDestroyExamDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
2280
2118
  /** Backend response type: models::ExamResponse. */
2281
2119
  export interface ExamShowExamGetResponseData extends JsonObject {
2282
2120
  "id": string;
2283
- "course_id"?: string | null;
2284
- "grade_id"?: string | null;
2121
+ "course_id": string | null;
2122
+ "grade_id": string | null;
2285
2123
  "name": string;
2286
- "description"?: string | null;
2287
- "info"?: string | null;
2288
- "cover_url"?: string | null;
2289
- "duration_minutes"?: number | null;
2290
- "passing_mark"?: number | null;
2291
- "questions_count"?: number | null;
2292
- "easy_count"?: number | null;
2293
- "medium_count"?: number | null;
2294
- "hard_count"?: number | null;
2124
+ "description": string | null;
2125
+ "info": string | null;
2126
+ "cover_url": string | null;
2127
+ "duration_minutes": number | null;
2128
+ "passing_mark": number | null;
2129
+ "questions_count": number | null;
2130
+ "easy_count": number | null;
2131
+ "medium_count": number | null;
2132
+ "hard_count": number | null;
2295
2133
  "selection_mode": string;
2296
2134
  "status": string;
2297
2135
  "created_at": string;
@@ -2319,18 +2157,18 @@ export interface ExamUpdateExamPatchInput extends JsonObject {
2319
2157
  /** Backend response type: models::ExamResponse. */
2320
2158
  export interface ExamUpdateExamPatchResponseData extends JsonObject {
2321
2159
  "id": string;
2322
- "course_id"?: string | null;
2323
- "grade_id"?: string | null;
2160
+ "course_id": string | null;
2161
+ "grade_id": string | null;
2324
2162
  "name": string;
2325
- "description"?: string | null;
2326
- "info"?: string | null;
2327
- "cover_url"?: string | null;
2328
- "duration_minutes"?: number | null;
2329
- "passing_mark"?: number | null;
2330
- "questions_count"?: number | null;
2331
- "easy_count"?: number | null;
2332
- "medium_count"?: number | null;
2333
- "hard_count"?: number | null;
2163
+ "description": string | null;
2164
+ "info": string | null;
2165
+ "cover_url": string | null;
2166
+ "duration_minutes": number | null;
2167
+ "passing_mark": number | null;
2168
+ "questions_count": number | null;
2169
+ "easy_count": number | null;
2170
+ "medium_count": number | null;
2171
+ "hard_count": number | null;
2334
2172
  "selection_mode": string;
2335
2173
  "status": string;
2336
2174
  "created_at": string;
@@ -2340,8 +2178,8 @@ export interface ExamUpdateExamPatchResponse extends ApiEnvelope<ExamUpdateExamP
2340
2178
  }
2341
2179
  /** Backend query type: models::AttemptListQuery. */
2342
2180
  export interface ExamIndexAttemptGetQuery extends QueryParams {
2343
- "page_number"?: number | null;
2344
- "page_size"?: number | null;
2181
+ "page[number]"?: number | null;
2182
+ "page[size]"?: number | null;
2345
2183
  "status"?: string | null;
2346
2184
  "exam_session_id"?: string | null;
2347
2185
  "user_id"?: string | null;
@@ -2351,32 +2189,32 @@ export interface ExamIndexAttemptGetQuery extends QueryParams {
2351
2189
  /** Backend response type: crate::models::PagedResult<models::AttemptResponse>. */
2352
2190
  export interface ExamIndexAttemptGetResponseItemProfile extends JsonObject {
2353
2191
  "user_id": string;
2354
- "first_name"?: JsonValue | null;
2355
- "last_name"?: JsonValue | null;
2356
- "email"?: string | null;
2357
- "national_code"?: string | null;
2358
- "phone"?: string | null;
2359
- "gender"?: string | null;
2192
+ "first_name": JsonValue | null;
2193
+ "last_name": JsonValue | null;
2194
+ "email": string | null;
2195
+ "national_code": string | null;
2196
+ "phone": string | null;
2197
+ "gender": string | null;
2360
2198
  }
2361
2199
  export interface ExamIndexAttemptGetResponseItem extends JsonObject {
2362
2200
  "id": string;
2363
2201
  "exam_session_id": string;
2364
- "exam_id"?: string | null;
2365
- "exam_name"?: string | null;
2366
- "classroom_id"?: string | null;
2367
- "classroom_name"?: string | null;
2368
- "course_id"?: string | null;
2369
- "course_name"?: string | null;
2202
+ "exam_id": string | null;
2203
+ "exam_name": string | null;
2204
+ "classroom_id": string | null;
2205
+ "classroom_name": string | null;
2206
+ "course_id": string | null;
2207
+ "course_name": string | null;
2370
2208
  "user_id": string;
2371
- "profile"?: ExamIndexAttemptGetResponseItemProfile | null;
2372
- "score"?: number | null;
2373
- "teacher_score"?: number | null;
2374
- "description"?: string | null;
2209
+ "profile": ExamIndexAttemptGetResponseItemProfile | null;
2210
+ "score": number | null;
2211
+ "teacher_score": number | null;
2212
+ "description": string | null;
2375
2213
  "extend_time_minutes": number;
2376
- "deadline_at"?: string | null;
2214
+ "deadline_at": string | null;
2377
2215
  "status": string;
2378
- "started_at"?: string | null;
2379
- "finished_at"?: string | null;
2216
+ "started_at": string | null;
2217
+ "finished_at": string | null;
2380
2218
  "created_at": string;
2381
2219
  "updated_at": string;
2382
2220
  }
@@ -2395,32 +2233,32 @@ export interface ExamIndexAttemptGetResponse extends ApiEnvelope<ExamIndexAttemp
2395
2233
  /** Backend response type: models::AttemptResponse. */
2396
2234
  export interface ExamShowAttemptGetResponseDataProfile extends JsonObject {
2397
2235
  "user_id": string;
2398
- "first_name"?: JsonValue | null;
2399
- "last_name"?: JsonValue | null;
2400
- "email"?: string | null;
2401
- "national_code"?: string | null;
2402
- "phone"?: string | null;
2403
- "gender"?: string | null;
2236
+ "first_name": JsonValue | null;
2237
+ "last_name": JsonValue | null;
2238
+ "email": string | null;
2239
+ "national_code": string | null;
2240
+ "phone": string | null;
2241
+ "gender": string | null;
2404
2242
  }
2405
2243
  export interface ExamShowAttemptGetResponseData extends JsonObject {
2406
2244
  "id": string;
2407
2245
  "exam_session_id": string;
2408
- "exam_id"?: string | null;
2409
- "exam_name"?: string | null;
2410
- "classroom_id"?: string | null;
2411
- "classroom_name"?: string | null;
2412
- "course_id"?: string | null;
2413
- "course_name"?: string | null;
2246
+ "exam_id": string | null;
2247
+ "exam_name": string | null;
2248
+ "classroom_id": string | null;
2249
+ "classroom_name": string | null;
2250
+ "course_id": string | null;
2251
+ "course_name": string | null;
2414
2252
  "user_id": string;
2415
- "profile"?: ExamShowAttemptGetResponseDataProfile | null;
2416
- "score"?: number | null;
2417
- "teacher_score"?: number | null;
2418
- "description"?: string | null;
2253
+ "profile": ExamShowAttemptGetResponseDataProfile | null;
2254
+ "score": number | null;
2255
+ "teacher_score": number | null;
2256
+ "description": string | null;
2419
2257
  "extend_time_minutes": number;
2420
- "deadline_at"?: string | null;
2258
+ "deadline_at": string | null;
2421
2259
  "status": string;
2422
- "started_at"?: string | null;
2423
- "finished_at"?: string | null;
2260
+ "started_at": string | null;
2261
+ "finished_at": string | null;
2424
2262
  "created_at": string;
2425
2263
  "updated_at": string;
2426
2264
  }
@@ -2438,32 +2276,32 @@ export interface ExamUpdateAttemptPatchInput extends JsonObject {
2438
2276
  /** Backend response type: models::AttemptResponse. */
2439
2277
  export interface ExamUpdateAttemptPatchResponseDataProfile extends JsonObject {
2440
2278
  "user_id": string;
2441
- "first_name"?: JsonValue | null;
2442
- "last_name"?: JsonValue | null;
2443
- "email"?: string | null;
2444
- "national_code"?: string | null;
2445
- "phone"?: string | null;
2446
- "gender"?: string | null;
2279
+ "first_name": JsonValue | null;
2280
+ "last_name": JsonValue | null;
2281
+ "email": string | null;
2282
+ "national_code": string | null;
2283
+ "phone": string | null;
2284
+ "gender": string | null;
2447
2285
  }
2448
2286
  export interface ExamUpdateAttemptPatchResponseData extends JsonObject {
2449
2287
  "id": string;
2450
2288
  "exam_session_id": string;
2451
- "exam_id"?: string | null;
2452
- "exam_name"?: string | null;
2453
- "classroom_id"?: string | null;
2454
- "classroom_name"?: string | null;
2455
- "course_id"?: string | null;
2456
- "course_name"?: string | null;
2289
+ "exam_id": string | null;
2290
+ "exam_name": string | null;
2291
+ "classroom_id": string | null;
2292
+ "classroom_name": string | null;
2293
+ "course_id": string | null;
2294
+ "course_name": string | null;
2457
2295
  "user_id": string;
2458
- "profile"?: ExamUpdateAttemptPatchResponseDataProfile | null;
2459
- "score"?: number | null;
2460
- "teacher_score"?: number | null;
2461
- "description"?: string | null;
2296
+ "profile": ExamUpdateAttemptPatchResponseDataProfile | null;
2297
+ "score": number | null;
2298
+ "teacher_score": number | null;
2299
+ "description": string | null;
2462
2300
  "extend_time_minutes": number;
2463
- "deadline_at"?: string | null;
2301
+ "deadline_at": string | null;
2464
2302
  "status": string;
2465
- "started_at"?: string | null;
2466
- "finished_at"?: string | null;
2303
+ "started_at": string | null;
2304
+ "finished_at": string | null;
2467
2305
  "created_at": string;
2468
2306
  "updated_at": string;
2469
2307
  }
@@ -2484,12 +2322,12 @@ export interface ExamSaveAttemptAnswerPutResponse extends ApiEnvelope<ExamSaveAt
2484
2322
  /** Backend response type: models::AttemptDeliveryResponse. */
2485
2323
  export interface ExamShowAttemptDeliveryGetResponseDataProfile extends JsonObject {
2486
2324
  "user_id": string;
2487
- "first_name"?: JsonValue | null;
2488
- "last_name"?: JsonValue | null;
2489
- "email"?: string | null;
2490
- "national_code"?: string | null;
2491
- "phone"?: string | null;
2492
- "gender"?: string | null;
2325
+ "first_name": JsonValue | null;
2326
+ "last_name": JsonValue | null;
2327
+ "email": string | null;
2328
+ "national_code": string | null;
2329
+ "phone": string | null;
2330
+ "gender": string | null;
2493
2331
  }
2494
2332
  export interface ExamShowAttemptDeliveryGetResponseDataQuestions extends JsonObject {
2495
2333
  "position": number;
@@ -2499,37 +2337,37 @@ export interface ExamShowAttemptDeliveryGetResponseDataQuestions extends JsonObj
2499
2337
  "options": JsonValue;
2500
2338
  "points": number;
2501
2339
  "media": JsonValue;
2502
- "answer"?: JsonValue | null;
2503
- "answered_at"?: string | null;
2504
- "is_correct"?: boolean | null;
2505
- "awarded_score"?: number | null;
2340
+ "answer": JsonValue | null;
2341
+ "answered_at": string | null;
2342
+ "is_correct": boolean | null;
2343
+ "awarded_score": number | null;
2506
2344
  "correct_answer"?: string | null;
2507
2345
  }
2508
2346
  export interface ExamShowAttemptDeliveryGetResponseData extends JsonObject {
2509
2347
  "attempt_id": string;
2510
2348
  "exam_session_id": string;
2511
2349
  "user_id": string;
2512
- "profile"?: ExamShowAttemptDeliveryGetResponseDataProfile | null;
2350
+ "profile": ExamShowAttemptDeliveryGetResponseDataProfile | null;
2513
2351
  "exam_id": string;
2514
2352
  "exam_name": string;
2515
- "exam_description"?: string | null;
2516
- "exam_info"?: string | null;
2517
- "cover_url"?: string | null;
2518
- "classroom_id"?: string | null;
2519
- "classroom_name"?: string | null;
2353
+ "exam_description": string | null;
2354
+ "exam_info": string | null;
2355
+ "cover_url": string | null;
2356
+ "classroom_id": string | null;
2357
+ "classroom_name": string | null;
2520
2358
  "access": string;
2521
2359
  "state": string;
2522
2360
  "server_now": string;
2523
- "starts_at"?: string | null;
2524
- "closes_at"?: string | null;
2525
- "started_at"?: string | null;
2526
- "finished_at"?: string | null;
2527
- "duration_minutes"?: number | null;
2361
+ "starts_at": string | null;
2362
+ "closes_at": string | null;
2363
+ "started_at": string | null;
2364
+ "finished_at": string | null;
2365
+ "duration_minutes": number | null;
2528
2366
  "remaining_seconds": number;
2529
- "score"?: number | null;
2530
- "teacher_score"?: number | null;
2531
- "passing_mark"?: number | null;
2532
- "passed"?: boolean | null;
2367
+ "score": number | null;
2368
+ "teacher_score": number | null;
2369
+ "passing_mark": number | null;
2370
+ "passed": boolean | null;
2533
2371
  "answered_count": number;
2534
2372
  "correct_count": number;
2535
2373
  "incorrect_count": number;
@@ -2544,12 +2382,12 @@ export interface ExamShowAttemptDeliveryGetResponse extends ApiEnvelope<ExamShow
2544
2382
  /** Backend response type: models::AttemptDeliveryResponse. */
2545
2383
  export interface ExamStartAttemptPostResponseDataProfile extends JsonObject {
2546
2384
  "user_id": string;
2547
- "first_name"?: JsonValue | null;
2548
- "last_name"?: JsonValue | null;
2549
- "email"?: string | null;
2550
- "national_code"?: string | null;
2551
- "phone"?: string | null;
2552
- "gender"?: string | null;
2385
+ "first_name": JsonValue | null;
2386
+ "last_name": JsonValue | null;
2387
+ "email": string | null;
2388
+ "national_code": string | null;
2389
+ "phone": string | null;
2390
+ "gender": string | null;
2553
2391
  }
2554
2392
  export interface ExamStartAttemptPostResponseDataQuestions extends JsonObject {
2555
2393
  "position": number;
@@ -2559,37 +2397,37 @@ export interface ExamStartAttemptPostResponseDataQuestions extends JsonObject {
2559
2397
  "options": JsonValue;
2560
2398
  "points": number;
2561
2399
  "media": JsonValue;
2562
- "answer"?: JsonValue | null;
2563
- "answered_at"?: string | null;
2564
- "is_correct"?: boolean | null;
2565
- "awarded_score"?: number | null;
2400
+ "answer": JsonValue | null;
2401
+ "answered_at": string | null;
2402
+ "is_correct": boolean | null;
2403
+ "awarded_score": number | null;
2566
2404
  "correct_answer"?: string | null;
2567
2405
  }
2568
2406
  export interface ExamStartAttemptPostResponseData extends JsonObject {
2569
2407
  "attempt_id": string;
2570
2408
  "exam_session_id": string;
2571
2409
  "user_id": string;
2572
- "profile"?: ExamStartAttemptPostResponseDataProfile | null;
2410
+ "profile": ExamStartAttemptPostResponseDataProfile | null;
2573
2411
  "exam_id": string;
2574
2412
  "exam_name": string;
2575
- "exam_description"?: string | null;
2576
- "exam_info"?: string | null;
2577
- "cover_url"?: string | null;
2578
- "classroom_id"?: string | null;
2579
- "classroom_name"?: string | null;
2413
+ "exam_description": string | null;
2414
+ "exam_info": string | null;
2415
+ "cover_url": string | null;
2416
+ "classroom_id": string | null;
2417
+ "classroom_name": string | null;
2580
2418
  "access": string;
2581
2419
  "state": string;
2582
2420
  "server_now": string;
2583
- "starts_at"?: string | null;
2584
- "closes_at"?: string | null;
2585
- "started_at"?: string | null;
2586
- "finished_at"?: string | null;
2587
- "duration_minutes"?: number | null;
2421
+ "starts_at": string | null;
2422
+ "closes_at": string | null;
2423
+ "started_at": string | null;
2424
+ "finished_at": string | null;
2425
+ "duration_minutes": number | null;
2588
2426
  "remaining_seconds": number;
2589
- "score"?: number | null;
2590
- "teacher_score"?: number | null;
2591
- "passing_mark"?: number | null;
2592
- "passed"?: boolean | null;
2427
+ "score": number | null;
2428
+ "teacher_score": number | null;
2429
+ "passing_mark": number | null;
2430
+ "passed": boolean | null;
2593
2431
  "answered_count": number;
2594
2432
  "correct_count": number;
2595
2433
  "incorrect_count": number;
@@ -2604,12 +2442,12 @@ export interface ExamStartAttemptPostResponse extends ApiEnvelope<ExamStartAttem
2604
2442
  /** Backend response type: models::AttemptDeliveryResponse. */
2605
2443
  export interface ExamSubmitAttemptPostResponseDataProfile extends JsonObject {
2606
2444
  "user_id": string;
2607
- "first_name"?: JsonValue | null;
2608
- "last_name"?: JsonValue | null;
2609
- "email"?: string | null;
2610
- "national_code"?: string | null;
2611
- "phone"?: string | null;
2612
- "gender"?: string | null;
2445
+ "first_name": JsonValue | null;
2446
+ "last_name": JsonValue | null;
2447
+ "email": string | null;
2448
+ "national_code": string | null;
2449
+ "phone": string | null;
2450
+ "gender": string | null;
2613
2451
  }
2614
2452
  export interface ExamSubmitAttemptPostResponseDataQuestions extends JsonObject {
2615
2453
  "position": number;
@@ -2619,37 +2457,37 @@ export interface ExamSubmitAttemptPostResponseDataQuestions extends JsonObject {
2619
2457
  "options": JsonValue;
2620
2458
  "points": number;
2621
2459
  "media": JsonValue;
2622
- "answer"?: JsonValue | null;
2623
- "answered_at"?: string | null;
2624
- "is_correct"?: boolean | null;
2625
- "awarded_score"?: number | null;
2460
+ "answer": JsonValue | null;
2461
+ "answered_at": string | null;
2462
+ "is_correct": boolean | null;
2463
+ "awarded_score": number | null;
2626
2464
  "correct_answer"?: string | null;
2627
2465
  }
2628
2466
  export interface ExamSubmitAttemptPostResponseData extends JsonObject {
2629
2467
  "attempt_id": string;
2630
2468
  "exam_session_id": string;
2631
2469
  "user_id": string;
2632
- "profile"?: ExamSubmitAttemptPostResponseDataProfile | null;
2470
+ "profile": ExamSubmitAttemptPostResponseDataProfile | null;
2633
2471
  "exam_id": string;
2634
2472
  "exam_name": string;
2635
- "exam_description"?: string | null;
2636
- "exam_info"?: string | null;
2637
- "cover_url"?: string | null;
2638
- "classroom_id"?: string | null;
2639
- "classroom_name"?: string | null;
2473
+ "exam_description": string | null;
2474
+ "exam_info": string | null;
2475
+ "cover_url": string | null;
2476
+ "classroom_id": string | null;
2477
+ "classroom_name": string | null;
2640
2478
  "access": string;
2641
2479
  "state": string;
2642
2480
  "server_now": string;
2643
- "starts_at"?: string | null;
2644
- "closes_at"?: string | null;
2645
- "started_at"?: string | null;
2646
- "finished_at"?: string | null;
2647
- "duration_minutes"?: number | null;
2481
+ "starts_at": string | null;
2482
+ "closes_at": string | null;
2483
+ "started_at": string | null;
2484
+ "finished_at": string | null;
2485
+ "duration_minutes": number | null;
2648
2486
  "remaining_seconds": number;
2649
- "score"?: number | null;
2650
- "teacher_score"?: number | null;
2651
- "passing_mark"?: number | null;
2652
- "passed"?: boolean | null;
2487
+ "score": number | null;
2488
+ "teacher_score": number | null;
2489
+ "passing_mark": number | null;
2490
+ "passed": boolean | null;
2653
2491
  "answered_count": number;
2654
2492
  "correct_count": number;
2655
2493
  "incorrect_count": number;
@@ -2663,22 +2501,22 @@ export interface ExamSubmitAttemptPostResponse extends ApiEnvelope<ExamSubmitAtt
2663
2501
  }
2664
2502
  /** Backend query type: models::QuestionListQuery. */
2665
2503
  export interface ExamIndexQuestionGetQuery extends QueryParams {
2666
- "page_number"?: number | null;
2667
- "page_size"?: number | null;
2504
+ "page[number]"?: number | null;
2505
+ "page[size]"?: number | null;
2668
2506
  "exam_id"?: string | null;
2669
2507
  }
2670
2508
  /** Backend response type: crate::models::PagedResult<models::QuestionResponse>. */
2671
2509
  export interface ExamIndexQuestionGetResponseItem extends JsonObject {
2672
2510
  "id": string;
2673
- "exam_id"?: string | null;
2511
+ "exam_id": string | null;
2674
2512
  "question_text": string;
2675
2513
  "question_type": string;
2676
- "options"?: BackendJson<"sea_orm::prelude::Json"> | null;
2677
- "correct_answer"?: string | null;
2514
+ "options": JsonValue | null;
2515
+ "correct_answer": string | null;
2678
2516
  "sort_order": number;
2679
2517
  "difficulty": string;
2680
2518
  "points": number;
2681
- "media": BackendJson<"sea_orm::prelude::Json">;
2519
+ "media": JsonValue;
2682
2520
  "status": string;
2683
2521
  "created_at": string;
2684
2522
  "updated_at": string;
@@ -2700,26 +2538,26 @@ export interface ExamStoreQuestionPostInput extends JsonObject {
2700
2538
  "exam_id"?: string | null;
2701
2539
  "question_text": string;
2702
2540
  "question_type": string;
2703
- "options"?: BackendJson<"sea_orm::prelude::Json"> | null;
2541
+ "options"?: JsonValue | null;
2704
2542
  "correct_answer"?: string | null;
2705
2543
  "sort_order": number;
2706
2544
  "difficulty"?: string | null;
2707
2545
  "points"?: number | null;
2708
- "media"?: BackendJson<"sea_orm::prelude::Json"> | null;
2546
+ "media"?: JsonValue | null;
2709
2547
  "status"?: string | null;
2710
2548
  }
2711
2549
  /** Backend response type: models::QuestionResponse. */
2712
2550
  export interface ExamStoreQuestionPostResponseData extends JsonObject {
2713
2551
  "id": string;
2714
- "exam_id"?: string | null;
2552
+ "exam_id": string | null;
2715
2553
  "question_text": string;
2716
2554
  "question_type": string;
2717
- "options"?: BackendJson<"sea_orm::prelude::Json"> | null;
2718
- "correct_answer"?: string | null;
2555
+ "options": JsonValue | null;
2556
+ "correct_answer": string | null;
2719
2557
  "sort_order": number;
2720
2558
  "difficulty": string;
2721
2559
  "points": number;
2722
- "media": BackendJson<"sea_orm::prelude::Json">;
2560
+ "media": JsonValue;
2723
2561
  "status": string;
2724
2562
  "created_at": string;
2725
2563
  "updated_at": string;
@@ -2727,20 +2565,19 @@ export interface ExamStoreQuestionPostResponseData extends JsonObject {
2727
2565
  export interface ExamStoreQuestionPostResponse extends ApiEnvelope<ExamStoreQuestionPostResponseData> {
2728
2566
  }
2729
2567
  /** Backend response type: serde_json::Value. */
2730
- export interface ExamDestroyQuestionDeleteResponse extends ApiEnvelope<JsonValue> {
2731
- }
2568
+ export type ExamDestroyQuestionDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
2732
2569
  /** Backend response type: models::QuestionResponse. */
2733
2570
  export interface ExamShowQuestionGetResponseData extends JsonObject {
2734
2571
  "id": string;
2735
- "exam_id"?: string | null;
2572
+ "exam_id": string | null;
2736
2573
  "question_text": string;
2737
2574
  "question_type": string;
2738
- "options"?: BackendJson<"sea_orm::prelude::Json"> | null;
2739
- "correct_answer"?: string | null;
2575
+ "options": JsonValue | null;
2576
+ "correct_answer": string | null;
2740
2577
  "sort_order": number;
2741
2578
  "difficulty": string;
2742
2579
  "points": number;
2743
- "media": BackendJson<"sea_orm::prelude::Json">;
2580
+ "media": JsonValue;
2744
2581
  "status": string;
2745
2582
  "created_at": string;
2746
2583
  "updated_at": string;
@@ -2752,26 +2589,26 @@ export interface ExamUpdateQuestionPatchInput extends JsonObject {
2752
2589
  "exam_id"?: string | null;
2753
2590
  "question_text"?: string | null;
2754
2591
  "question_type"?: string | null;
2755
- "options"?: BackendJson<"sea_orm::prelude::Json"> | null;
2592
+ "options"?: JsonValue | null;
2756
2593
  "correct_answer"?: string | null;
2757
2594
  "sort_order"?: number | null;
2758
2595
  "difficulty"?: string | null;
2759
2596
  "points"?: number | null;
2760
- "media"?: BackendJson<"sea_orm::prelude::Json"> | null;
2597
+ "media"?: JsonValue | null;
2761
2598
  "status"?: string | null;
2762
2599
  }
2763
2600
  /** Backend response type: models::QuestionResponse. */
2764
2601
  export interface ExamUpdateQuestionPatchResponseData extends JsonObject {
2765
2602
  "id": string;
2766
- "exam_id"?: string | null;
2603
+ "exam_id": string | null;
2767
2604
  "question_text": string;
2768
2605
  "question_type": string;
2769
- "options"?: BackendJson<"sea_orm::prelude::Json"> | null;
2770
- "correct_answer"?: string | null;
2606
+ "options": JsonValue | null;
2607
+ "correct_answer": string | null;
2771
2608
  "sort_order": number;
2772
2609
  "difficulty": string;
2773
2610
  "points": number;
2774
- "media": BackendJson<"sea_orm::prelude::Json">;
2611
+ "media": JsonValue;
2775
2612
  "status": string;
2776
2613
  "created_at": string;
2777
2614
  "updated_at": string;
@@ -2780,8 +2617,8 @@ export interface ExamUpdateQuestionPatchResponse extends ApiEnvelope<ExamUpdateQ
2780
2617
  }
2781
2618
  /** Backend query type: models::SessionListQuery. */
2782
2619
  export interface ExamIndexSessionGetQuery extends QueryParams {
2783
- "page_number"?: number | null;
2784
- "page_size"?: number | null;
2620
+ "page[number]"?: number | null;
2621
+ "page[size]"?: number | null;
2785
2622
  "search"?: string | null;
2786
2623
  "status"?: string | null;
2787
2624
  "exam_id"?: string | null;
@@ -2797,60 +2634,60 @@ export interface ExamIndexSessionGetQuery extends QueryParams {
2797
2634
  /** Backend response type: crate::models::PagedResult<models::SessionResponse>. */
2798
2635
  export interface ExamIndexSessionGetResponseItemTeacherProfile extends JsonObject {
2799
2636
  "user_id": string;
2800
- "first_name"?: JsonValue | null;
2801
- "last_name"?: JsonValue | null;
2802
- "email"?: string | null;
2803
- "national_code"?: string | null;
2804
- "phone"?: string | null;
2805
- "gender"?: string | null;
2637
+ "first_name": JsonValue | null;
2638
+ "last_name": JsonValue | null;
2639
+ "email": string | null;
2640
+ "national_code": string | null;
2641
+ "phone": string | null;
2642
+ "gender": string | null;
2806
2643
  }
2807
2644
  export interface ExamIndexSessionGetResponseItemConsultantProfile extends JsonObject {
2808
2645
  "user_id": string;
2809
- "first_name"?: JsonValue | null;
2810
- "last_name"?: JsonValue | null;
2811
- "email"?: string | null;
2812
- "national_code"?: string | null;
2813
- "phone"?: string | null;
2814
- "gender"?: string | null;
2646
+ "first_name": JsonValue | null;
2647
+ "last_name": JsonValue | null;
2648
+ "email": string | null;
2649
+ "national_code": string | null;
2650
+ "phone": string | null;
2651
+ "gender": string | null;
2815
2652
  }
2816
2653
  export interface ExamIndexSessionGetResponseItemSupportProfile extends JsonObject {
2817
2654
  "user_id": string;
2818
- "first_name"?: JsonValue | null;
2819
- "last_name"?: JsonValue | null;
2820
- "email"?: string | null;
2821
- "national_code"?: string | null;
2822
- "phone"?: string | null;
2823
- "gender"?: string | null;
2655
+ "first_name": JsonValue | null;
2656
+ "last_name": JsonValue | null;
2657
+ "email": string | null;
2658
+ "national_code": string | null;
2659
+ "phone": string | null;
2660
+ "gender": string | null;
2824
2661
  }
2825
2662
  export interface ExamIndexSessionGetResponseItem extends JsonObject {
2826
2663
  "id": string;
2827
2664
  "exam_id": string;
2828
- "exam_name"?: string | null;
2829
- "classroom_id"?: string | null;
2830
- "classroom_name"?: string | null;
2831
- "classroom_session_id"?: string | null;
2832
- "name"?: string | null;
2833
- "description"?: string | null;
2834
- "info"?: string | null;
2835
- "duration_minutes"?: number | null;
2836
- "questions_count"?: number | null;
2837
- "easy_count"?: number | null;
2838
- "medium_count"?: number | null;
2839
- "hard_count"?: number | null;
2665
+ "exam_name": string | null;
2666
+ "classroom_id": string | null;
2667
+ "classroom_name": string | null;
2668
+ "classroom_session_id": string | null;
2669
+ "name": string | null;
2670
+ "description": string | null;
2671
+ "info": string | null;
2672
+ "duration_minutes": number | null;
2673
+ "questions_count": number | null;
2674
+ "easy_count": number | null;
2675
+ "medium_count": number | null;
2676
+ "hard_count": number | null;
2840
2677
  "selection_mode": string;
2841
- "teacher_user_id"?: string | null;
2842
- "teacher_profile"?: ExamIndexSessionGetResponseItemTeacherProfile | null;
2843
- "consultant_user_id"?: string | null;
2844
- "consultant_profile"?: ExamIndexSessionGetResponseItemConsultantProfile | null;
2845
- "support_user_id"?: string | null;
2846
- "support_profile"?: ExamIndexSessionGetResponseItemSupportProfile | null;
2847
- "starts_at"?: string | null;
2848
- "ends_at"?: string | null;
2678
+ "teacher_user_id": string | null;
2679
+ "teacher_profile": ExamIndexSessionGetResponseItemTeacherProfile | null;
2680
+ "consultant_user_id": string | null;
2681
+ "consultant_profile": ExamIndexSessionGetResponseItemConsultantProfile | null;
2682
+ "support_user_id": string | null;
2683
+ "support_profile": ExamIndexSessionGetResponseItemSupportProfile | null;
2684
+ "starts_at": string | null;
2685
+ "ends_at": string | null;
2849
2686
  "status": string;
2850
2687
  "attempts_total": number;
2851
2688
  "attempts_active": number;
2852
2689
  "attempts_completed": number;
2853
- "average_score"?: number | null;
2690
+ "average_score": number | null;
2854
2691
  "created_at": string;
2855
2692
  "updated_at": string;
2856
2693
  }
@@ -2890,208 +2727,188 @@ export interface ExamStoreSessionPostInput extends JsonObject {
2890
2727
  /** Backend response type: models::SessionResponse. */
2891
2728
  export interface ExamStoreSessionPostResponseDataTeacherProfile extends JsonObject {
2892
2729
  "user_id": string;
2893
- "first_name"?: JsonValue | null;
2894
- "last_name"?: JsonValue | null;
2895
- "email"?: string | null;
2896
- "national_code"?: string | null;
2897
- "phone"?: string | null;
2898
- "gender"?: string | null;
2730
+ "first_name": JsonValue | null;
2731
+ "last_name": JsonValue | null;
2732
+ "email": string | null;
2733
+ "national_code": string | null;
2734
+ "phone": string | null;
2735
+ "gender": string | null;
2899
2736
  }
2900
2737
  export interface ExamStoreSessionPostResponseDataConsultantProfile extends JsonObject {
2901
2738
  "user_id": string;
2902
- "first_name"?: JsonValue | null;
2903
- "last_name"?: JsonValue | null;
2904
- "email"?: string | null;
2905
- "national_code"?: string | null;
2906
- "phone"?: string | null;
2907
- "gender"?: string | null;
2739
+ "first_name": JsonValue | null;
2740
+ "last_name": JsonValue | null;
2741
+ "email": string | null;
2742
+ "national_code": string | null;
2743
+ "phone": string | null;
2744
+ "gender": string | null;
2908
2745
  }
2909
2746
  export interface ExamStoreSessionPostResponseDataSupportProfile extends JsonObject {
2910
2747
  "user_id": string;
2911
- "first_name"?: JsonValue | null;
2912
- "last_name"?: JsonValue | null;
2913
- "email"?: string | null;
2914
- "national_code"?: string | null;
2915
- "phone"?: string | null;
2916
- "gender"?: string | null;
2748
+ "first_name": JsonValue | null;
2749
+ "last_name": JsonValue | null;
2750
+ "email": string | null;
2751
+ "national_code": string | null;
2752
+ "phone": string | null;
2753
+ "gender": string | null;
2917
2754
  }
2918
2755
  export interface ExamStoreSessionPostResponseData extends JsonObject {
2919
2756
  "id": string;
2920
2757
  "exam_id": string;
2921
- "exam_name"?: string | null;
2922
- "classroom_id"?: string | null;
2923
- "classroom_name"?: string | null;
2924
- "classroom_session_id"?: string | null;
2925
- "name"?: string | null;
2926
- "description"?: string | null;
2927
- "info"?: string | null;
2928
- "duration_minutes"?: number | null;
2929
- "questions_count"?: number | null;
2930
- "easy_count"?: number | null;
2931
- "medium_count"?: number | null;
2932
- "hard_count"?: number | null;
2758
+ "exam_name": string | null;
2759
+ "classroom_id": string | null;
2760
+ "classroom_name": string | null;
2761
+ "classroom_session_id": string | null;
2762
+ "name": string | null;
2763
+ "description": string | null;
2764
+ "info": string | null;
2765
+ "duration_minutes": number | null;
2766
+ "questions_count": number | null;
2767
+ "easy_count": number | null;
2768
+ "medium_count": number | null;
2769
+ "hard_count": number | null;
2933
2770
  "selection_mode": string;
2934
- "teacher_user_id"?: string | null;
2935
- "teacher_profile"?: ExamStoreSessionPostResponseDataTeacherProfile | null;
2936
- "consultant_user_id"?: string | null;
2937
- "consultant_profile"?: ExamStoreSessionPostResponseDataConsultantProfile | null;
2938
- "support_user_id"?: string | null;
2939
- "support_profile"?: ExamStoreSessionPostResponseDataSupportProfile | null;
2940
- "starts_at"?: string | null;
2941
- "ends_at"?: string | null;
2771
+ "teacher_user_id": string | null;
2772
+ "teacher_profile": ExamStoreSessionPostResponseDataTeacherProfile | null;
2773
+ "consultant_user_id": string | null;
2774
+ "consultant_profile": ExamStoreSessionPostResponseDataConsultantProfile | null;
2775
+ "support_user_id": string | null;
2776
+ "support_profile": ExamStoreSessionPostResponseDataSupportProfile | null;
2777
+ "starts_at": string | null;
2778
+ "ends_at": string | null;
2942
2779
  "status": string;
2943
2780
  "attempts_total": number;
2944
2781
  "attempts_active": number;
2945
2782
  "attempts_completed": number;
2946
- "average_score"?: number | null;
2783
+ "average_score": number | null;
2947
2784
  "created_at": string;
2948
2785
  "updated_at": string;
2949
2786
  }
2950
2787
  export interface ExamStoreSessionPostResponse extends ApiEnvelope<ExamStoreSessionPostResponseData> {
2951
2788
  }
2952
2789
  /** Backend response type: serde_json::Value. */
2953
- export interface ExamDestroySessionDeleteResponse extends ApiEnvelope<JsonValue> {
2954
- }
2790
+ export type ExamDestroySessionDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
2955
2791
  /** Backend response type: models::SessionResponse. */
2956
2792
  export interface ExamShowSessionGetResponseDataTeacherProfile extends JsonObject {
2957
2793
  "user_id": string;
2958
- "first_name"?: JsonValue | null;
2959
- "last_name"?: JsonValue | null;
2960
- "email"?: string | null;
2961
- "national_code"?: string | null;
2962
- "phone"?: string | null;
2963
- "gender"?: string | null;
2794
+ "first_name": JsonValue | null;
2795
+ "last_name": JsonValue | null;
2796
+ "email": string | null;
2797
+ "national_code": string | null;
2798
+ "phone": string | null;
2799
+ "gender": string | null;
2964
2800
  }
2965
2801
  export interface ExamShowSessionGetResponseDataConsultantProfile extends JsonObject {
2966
2802
  "user_id": string;
2967
- "first_name"?: JsonValue | null;
2968
- "last_name"?: JsonValue | null;
2969
- "email"?: string | null;
2970
- "national_code"?: string | null;
2971
- "phone"?: string | null;
2972
- "gender"?: string | null;
2803
+ "first_name": JsonValue | null;
2804
+ "last_name": JsonValue | null;
2805
+ "email": string | null;
2806
+ "national_code": string | null;
2807
+ "phone": string | null;
2808
+ "gender": string | null;
2973
2809
  }
2974
2810
  export interface ExamShowSessionGetResponseDataSupportProfile extends JsonObject {
2975
2811
  "user_id": string;
2976
- "first_name"?: JsonValue | null;
2977
- "last_name"?: JsonValue | null;
2978
- "email"?: string | null;
2979
- "national_code"?: string | null;
2980
- "phone"?: string | null;
2981
- "gender"?: string | null;
2812
+ "first_name": JsonValue | null;
2813
+ "last_name": JsonValue | null;
2814
+ "email": string | null;
2815
+ "national_code": string | null;
2816
+ "phone": string | null;
2817
+ "gender": string | null;
2982
2818
  }
2983
2819
  export interface ExamShowSessionGetResponseData extends JsonObject {
2984
2820
  "id": string;
2985
2821
  "exam_id": string;
2986
- "exam_name"?: string | null;
2987
- "classroom_id"?: string | null;
2988
- "classroom_name"?: string | null;
2989
- "classroom_session_id"?: string | null;
2990
- "name"?: string | null;
2991
- "description"?: string | null;
2992
- "info"?: string | null;
2993
- "duration_minutes"?: number | null;
2994
- "questions_count"?: number | null;
2995
- "easy_count"?: number | null;
2996
- "medium_count"?: number | null;
2997
- "hard_count"?: number | null;
2822
+ "exam_name": string | null;
2823
+ "classroom_id": string | null;
2824
+ "classroom_name": string | null;
2825
+ "classroom_session_id": string | null;
2826
+ "name": string | null;
2827
+ "description": string | null;
2828
+ "info": string | null;
2829
+ "duration_minutes": number | null;
2830
+ "questions_count": number | null;
2831
+ "easy_count": number | null;
2832
+ "medium_count": number | null;
2833
+ "hard_count": number | null;
2998
2834
  "selection_mode": string;
2999
- "teacher_user_id"?: string | null;
3000
- "teacher_profile"?: ExamShowSessionGetResponseDataTeacherProfile | null;
3001
- "consultant_user_id"?: string | null;
3002
- "consultant_profile"?: ExamShowSessionGetResponseDataConsultantProfile | null;
3003
- "support_user_id"?: string | null;
3004
- "support_profile"?: ExamShowSessionGetResponseDataSupportProfile | null;
3005
- "starts_at"?: string | null;
3006
- "ends_at"?: string | null;
2835
+ "teacher_user_id": string | null;
2836
+ "teacher_profile": ExamShowSessionGetResponseDataTeacherProfile | null;
2837
+ "consultant_user_id": string | null;
2838
+ "consultant_profile": ExamShowSessionGetResponseDataConsultantProfile | null;
2839
+ "support_user_id": string | null;
2840
+ "support_profile": ExamShowSessionGetResponseDataSupportProfile | null;
2841
+ "starts_at": string | null;
2842
+ "ends_at": string | null;
3007
2843
  "status": string;
3008
2844
  "attempts_total": number;
3009
2845
  "attempts_active": number;
3010
2846
  "attempts_completed": number;
3011
- "average_score"?: number | null;
2847
+ "average_score": number | null;
3012
2848
  "created_at": string;
3013
2849
  "updated_at": string;
3014
2850
  }
3015
2851
  export interface ExamShowSessionGetResponse extends ApiEnvelope<ExamShowSessionGetResponseData> {
3016
2852
  }
3017
2853
  /** Backend request type: models::UpdateSessionRequest. */
3018
- export interface ExamUpdateSessionPatchInput extends JsonObject {
3019
- "exam_id"?: string | null;
3020
- "classroom_id"?: BackendJson<"PatchField<Uuid>">;
3021
- "classroom_session_id"?: BackendJson<"PatchField<Uuid>">;
3022
- "name"?: BackendJson<"PatchField<String>">;
3023
- "description"?: BackendJson<"PatchField<String>">;
3024
- "info"?: BackendJson<"PatchField<String>">;
3025
- "duration_minutes"?: BackendJson<"PatchField<i32>">;
3026
- "questions_count"?: BackendJson<"PatchField<i32>">;
3027
- "easy_count"?: BackendJson<"PatchField<i32>">;
3028
- "medium_count"?: BackendJson<"PatchField<i32>">;
3029
- "hard_count"?: BackendJson<"PatchField<i32>">;
3030
- "selection_mode"?: string | null;
3031
- "teacher_user_id"?: BackendJson<"PatchField<String>">;
3032
- "consultant_user_id"?: BackendJson<"PatchField<String>">;
3033
- "support_user_id"?: BackendJson<"PatchField<String>">;
3034
- "starts_at"?: BackendJson<"PatchField<String>">;
3035
- "ends_at"?: BackendJson<"PatchField<String>">;
3036
- "status"?: string | null;
3037
- }
2854
+ export type ExamUpdateSessionPatchInput = import("./types.js").UpdateExamSessionInput;
3038
2855
  /** Backend response type: models::SessionResponse. */
3039
2856
  export interface ExamUpdateSessionPatchResponseDataTeacherProfile extends JsonObject {
3040
2857
  "user_id": string;
3041
- "first_name"?: JsonValue | null;
3042
- "last_name"?: JsonValue | null;
3043
- "email"?: string | null;
3044
- "national_code"?: string | null;
3045
- "phone"?: string | null;
3046
- "gender"?: string | null;
2858
+ "first_name": JsonValue | null;
2859
+ "last_name": JsonValue | null;
2860
+ "email": string | null;
2861
+ "national_code": string | null;
2862
+ "phone": string | null;
2863
+ "gender": string | null;
3047
2864
  }
3048
2865
  export interface ExamUpdateSessionPatchResponseDataConsultantProfile extends JsonObject {
3049
2866
  "user_id": string;
3050
- "first_name"?: JsonValue | null;
3051
- "last_name"?: JsonValue | null;
3052
- "email"?: string | null;
3053
- "national_code"?: string | null;
3054
- "phone"?: string | null;
3055
- "gender"?: string | null;
2867
+ "first_name": JsonValue | null;
2868
+ "last_name": JsonValue | null;
2869
+ "email": string | null;
2870
+ "national_code": string | null;
2871
+ "phone": string | null;
2872
+ "gender": string | null;
3056
2873
  }
3057
2874
  export interface ExamUpdateSessionPatchResponseDataSupportProfile extends JsonObject {
3058
2875
  "user_id": string;
3059
- "first_name"?: JsonValue | null;
3060
- "last_name"?: JsonValue | null;
3061
- "email"?: string | null;
3062
- "national_code"?: string | null;
3063
- "phone"?: string | null;
3064
- "gender"?: string | null;
2876
+ "first_name": JsonValue | null;
2877
+ "last_name": JsonValue | null;
2878
+ "email": string | null;
2879
+ "national_code": string | null;
2880
+ "phone": string | null;
2881
+ "gender": string | null;
3065
2882
  }
3066
2883
  export interface ExamUpdateSessionPatchResponseData extends JsonObject {
3067
2884
  "id": string;
3068
2885
  "exam_id": string;
3069
- "exam_name"?: string | null;
3070
- "classroom_id"?: string | null;
3071
- "classroom_name"?: string | null;
3072
- "classroom_session_id"?: string | null;
3073
- "name"?: string | null;
3074
- "description"?: string | null;
3075
- "info"?: string | null;
3076
- "duration_minutes"?: number | null;
3077
- "questions_count"?: number | null;
3078
- "easy_count"?: number | null;
3079
- "medium_count"?: number | null;
3080
- "hard_count"?: number | null;
2886
+ "exam_name": string | null;
2887
+ "classroom_id": string | null;
2888
+ "classroom_name": string | null;
2889
+ "classroom_session_id": string | null;
2890
+ "name": string | null;
2891
+ "description": string | null;
2892
+ "info": string | null;
2893
+ "duration_minutes": number | null;
2894
+ "questions_count": number | null;
2895
+ "easy_count": number | null;
2896
+ "medium_count": number | null;
2897
+ "hard_count": number | null;
3081
2898
  "selection_mode": string;
3082
- "teacher_user_id"?: string | null;
3083
- "teacher_profile"?: ExamUpdateSessionPatchResponseDataTeacherProfile | null;
3084
- "consultant_user_id"?: string | null;
3085
- "consultant_profile"?: ExamUpdateSessionPatchResponseDataConsultantProfile | null;
3086
- "support_user_id"?: string | null;
3087
- "support_profile"?: ExamUpdateSessionPatchResponseDataSupportProfile | null;
3088
- "starts_at"?: string | null;
3089
- "ends_at"?: string | null;
2899
+ "teacher_user_id": string | null;
2900
+ "teacher_profile": ExamUpdateSessionPatchResponseDataTeacherProfile | null;
2901
+ "consultant_user_id": string | null;
2902
+ "consultant_profile": ExamUpdateSessionPatchResponseDataConsultantProfile | null;
2903
+ "support_user_id": string | null;
2904
+ "support_profile": ExamUpdateSessionPatchResponseDataSupportProfile | null;
2905
+ "starts_at": string | null;
2906
+ "ends_at": string | null;
3090
2907
  "status": string;
3091
2908
  "attempts_total": number;
3092
2909
  "attempts_active": number;
3093
2910
  "attempts_completed": number;
3094
- "average_score"?: number | null;
2911
+ "average_score": number | null;
3095
2912
  "created_at": string;
3096
2913
  "updated_at": string;
3097
2914
  }
@@ -3099,8 +2916,8 @@ export interface ExamUpdateSessionPatchResponse extends ApiEnvelope<ExamUpdateSe
3099
2916
  }
3100
2917
  /** Backend query type: models::HomeworkBankListQuery. */
3101
2918
  export interface HomeworkIndexBankGetQuery extends QueryParams {
3102
- "page_number"?: number | null;
3103
- "page_size"?: number | null;
2919
+ "page[number]"?: number | null;
2920
+ "page[size]"?: number | null;
3104
2921
  "search"?: string | null;
3105
2922
  "status"?: string | null;
3106
2923
  "teacher_user_id"?: string | null;
@@ -3109,16 +2926,16 @@ export interface HomeworkIndexBankGetQuery extends QueryParams {
3109
2926
  /** Backend response type: crate::models::PagedResult<models::HomeworkBankResponse>. */
3110
2927
  export interface HomeworkIndexBankGetResponseItem extends JsonObject {
3111
2928
  "id": string;
3112
- "course_id"?: string | null;
3113
- "course_name"?: string | null;
3114
- "grade_id"?: string | null;
3115
- "teacher_grade_id"?: string | null;
2929
+ "course_id": string | null;
2930
+ "course_name": string | null;
2931
+ "grade_id": string | null;
2932
+ "teacher_grade_id": string | null;
3116
2933
  "name": string;
3117
- "title"?: string | null;
3118
- "description"?: string | null;
2934
+ "title": string | null;
2935
+ "description": string | null;
3119
2936
  "status": string;
3120
2937
  "sort_order": number;
3121
- "difficulty"?: string | null;
2938
+ "difficulty": string | null;
3122
2939
  "points": number;
3123
2940
  "created_at": string;
3124
2941
  "updated_at": string;
@@ -3151,16 +2968,16 @@ export interface HomeworkStoreBankPostInput extends JsonObject {
3151
2968
  /** Backend response type: models::HomeworkBankResponse. */
3152
2969
  export interface HomeworkStoreBankPostResponseData extends JsonObject {
3153
2970
  "id": string;
3154
- "course_id"?: string | null;
3155
- "course_name"?: string | null;
3156
- "grade_id"?: string | null;
3157
- "teacher_grade_id"?: string | null;
2971
+ "course_id": string | null;
2972
+ "course_name": string | null;
2973
+ "grade_id": string | null;
2974
+ "teacher_grade_id": string | null;
3158
2975
  "name": string;
3159
- "title"?: string | null;
3160
- "description"?: string | null;
2976
+ "title": string | null;
2977
+ "description": string | null;
3161
2978
  "status": string;
3162
2979
  "sort_order": number;
3163
- "difficulty"?: string | null;
2980
+ "difficulty": string | null;
3164
2981
  "points": number;
3165
2982
  "created_at": string;
3166
2983
  "updated_at": string;
@@ -3169,8 +2986,8 @@ export interface HomeworkStoreBankPostResponse extends ApiEnvelope<HomeworkStore
3169
2986
  }
3170
2987
  /** Backend query type: models::BankHomeworkListQuery. */
3171
2988
  export interface HomeworkIndexBankHomeworkGetQuery extends QueryParams {
3172
- "page_number"?: number | null;
3173
- "page_size"?: number | null;
2989
+ "page[number]"?: number | null;
2990
+ "page[size]"?: number | null;
3174
2991
  "search"?: string | null;
3175
2992
  "status"?: string | null;
3176
2993
  "question_type"?: string | null;
@@ -3181,12 +2998,12 @@ export interface HomeworkIndexBankHomeworkGetResponseItem extends JsonObject {
3181
2998
  "id": string;
3182
2999
  "homework_id": string;
3183
3000
  "name": string;
3184
- "bank_name"?: string | null;
3001
+ "bank_name": string | null;
3185
3002
  "assignable": boolean;
3186
- "assignment_block_reason"?: string | null;
3003
+ "assignment_block_reason": string | null;
3187
3004
  "question_text": string;
3188
- "description"?: string | null;
3189
- "answer"?: string | null;
3005
+ "description": string | null;
3006
+ "answer": string | null;
3190
3007
  "question_type": string;
3191
3008
  "kind": string;
3192
3009
  "points": number;
@@ -3228,12 +3045,12 @@ export interface HomeworkStoreBankHomeworkPostResponseData extends JsonObject {
3228
3045
  "id": string;
3229
3046
  "homework_id": string;
3230
3047
  "name": string;
3231
- "bank_name"?: string | null;
3048
+ "bank_name": string | null;
3232
3049
  "assignable": boolean;
3233
- "assignment_block_reason"?: string | null;
3050
+ "assignment_block_reason": string | null;
3234
3051
  "question_text": string;
3235
- "description"?: string | null;
3236
- "answer"?: string | null;
3052
+ "description": string | null;
3053
+ "answer": string | null;
3237
3054
  "question_type": string;
3238
3055
  "kind": string;
3239
3056
  "points": number;
@@ -3247,19 +3064,18 @@ export interface HomeworkStoreBankHomeworkPostResponseData extends JsonObject {
3247
3064
  export interface HomeworkStoreBankHomeworkPostResponse extends ApiEnvelope<HomeworkStoreBankHomeworkPostResponseData> {
3248
3065
  }
3249
3066
  /** Backend response type: serde_json::Value. */
3250
- export interface HomeworkDestroyBankHomeworkDeleteResponse extends ApiEnvelope<JsonValue> {
3251
- }
3067
+ export type HomeworkDestroyBankHomeworkDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
3252
3068
  /** Backend response type: models::QuestionResponse. */
3253
3069
  export interface HomeworkShowBankHomeworkGetResponseData extends JsonObject {
3254
3070
  "id": string;
3255
3071
  "homework_id": string;
3256
3072
  "name": string;
3257
- "bank_name"?: string | null;
3073
+ "bank_name": string | null;
3258
3074
  "assignable": boolean;
3259
- "assignment_block_reason"?: string | null;
3075
+ "assignment_block_reason": string | null;
3260
3076
  "question_text": string;
3261
- "description"?: string | null;
3262
- "answer"?: string | null;
3077
+ "description": string | null;
3078
+ "answer": string | null;
3263
3079
  "question_type": string;
3264
3080
  "kind": string;
3265
3081
  "points": number;
@@ -3291,12 +3107,12 @@ export interface HomeworkUpdateBankHomeworkPatchResponseData extends JsonObject
3291
3107
  "id": string;
3292
3108
  "homework_id": string;
3293
3109
  "name": string;
3294
- "bank_name"?: string | null;
3110
+ "bank_name": string | null;
3295
3111
  "assignable": boolean;
3296
- "assignment_block_reason"?: string | null;
3112
+ "assignment_block_reason": string | null;
3297
3113
  "question_text": string;
3298
- "description"?: string | null;
3299
- "answer"?: string | null;
3114
+ "description": string | null;
3115
+ "answer": string | null;
3300
3116
  "question_type": string;
3301
3117
  "kind": string;
3302
3118
  "points": number;
@@ -3310,21 +3126,20 @@ export interface HomeworkUpdateBankHomeworkPatchResponseData extends JsonObject
3310
3126
  export interface HomeworkUpdateBankHomeworkPatchResponse extends ApiEnvelope<HomeworkUpdateBankHomeworkPatchResponseData> {
3311
3127
  }
3312
3128
  /** Backend response type: serde_json::Value. */
3313
- export interface HomeworkDestroyBankDeleteResponse extends ApiEnvelope<JsonValue> {
3314
- }
3129
+ export type HomeworkDestroyBankDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
3315
3130
  /** Backend response type: models::HomeworkBankResponse. */
3316
3131
  export interface HomeworkShowBankGetResponseData extends JsonObject {
3317
3132
  "id": string;
3318
- "course_id"?: string | null;
3319
- "course_name"?: string | null;
3320
- "grade_id"?: string | null;
3321
- "teacher_grade_id"?: string | null;
3133
+ "course_id": string | null;
3134
+ "course_name": string | null;
3135
+ "grade_id": string | null;
3136
+ "teacher_grade_id": string | null;
3322
3137
  "name": string;
3323
- "title"?: string | null;
3324
- "description"?: string | null;
3138
+ "title": string | null;
3139
+ "description": string | null;
3325
3140
  "status": string;
3326
3141
  "sort_order": number;
3327
- "difficulty"?: string | null;
3142
+ "difficulty": string | null;
3328
3143
  "points": number;
3329
3144
  "created_at": string;
3330
3145
  "updated_at": string;
@@ -3347,16 +3162,16 @@ export interface HomeworkUpdateBankPatchInput extends JsonObject {
3347
3162
  /** Backend response type: models::HomeworkBankResponse. */
3348
3163
  export interface HomeworkUpdateBankPatchResponseData extends JsonObject {
3349
3164
  "id": string;
3350
- "course_id"?: string | null;
3351
- "course_name"?: string | null;
3352
- "grade_id"?: string | null;
3353
- "teacher_grade_id"?: string | null;
3165
+ "course_id": string | null;
3166
+ "course_name": string | null;
3167
+ "grade_id": string | null;
3168
+ "teacher_grade_id": string | null;
3354
3169
  "name": string;
3355
- "title"?: string | null;
3356
- "description"?: string | null;
3170
+ "title": string | null;
3171
+ "description": string | null;
3357
3172
  "status": string;
3358
3173
  "sort_order": number;
3359
- "difficulty"?: string | null;
3174
+ "difficulty": string | null;
3360
3175
  "points": number;
3361
3176
  "created_at": string;
3362
3177
  "updated_at": string;
@@ -3365,8 +3180,8 @@ export interface HomeworkUpdateBankPatchResponse extends ApiEnvelope<HomeworkUpd
3365
3180
  }
3366
3181
  /** Backend query type: models::HomeworkListQuery. */
3367
3182
  export interface HomeworkIndexHomeworkGetQuery extends QueryParams {
3368
- "page_number"?: number | null;
3369
- "page_size"?: number | null;
3183
+ "page[number]"?: number | null;
3184
+ "page[size]"?: number | null;
3370
3185
  "search"?: string | null;
3371
3186
  "status"?: string | null;
3372
3187
  "homework_bank_id"?: string | null;
@@ -3381,17 +3196,17 @@ export interface HomeworkIndexHomeworkGetQuery extends QueryParams {
3381
3196
  /** Backend response type: crate::models::PagedResult<models::HomeworkResponse>. */
3382
3197
  export interface HomeworkIndexHomeworkGetResponseItem extends JsonObject {
3383
3198
  "id": string;
3384
- "homework_bank_id"?: string | null;
3385
- "course_id"?: string | null;
3386
- "course_name"?: string | null;
3387
- "grade_id"?: string | null;
3388
- "teacher_grade_id"?: string | null;
3199
+ "homework_bank_id": string | null;
3200
+ "course_id": string | null;
3201
+ "course_name": string | null;
3202
+ "grade_id": string | null;
3203
+ "teacher_grade_id": string | null;
3389
3204
  "name": string;
3390
- "title"?: string | null;
3391
- "description"?: string | null;
3205
+ "title": string | null;
3206
+ "description": string | null;
3392
3207
  "status": string;
3393
3208
  "sort_order": number;
3394
- "difficulty"?: string | null;
3209
+ "difficulty": string | null;
3395
3210
  "points": number;
3396
3211
  "created_at": string;
3397
3212
  "updated_at": string;
@@ -3425,17 +3240,17 @@ export interface HomeworkStoreHomeworkPostInput extends JsonObject {
3425
3240
  /** Backend response type: models::HomeworkResponse. */
3426
3241
  export interface HomeworkStoreHomeworkPostResponseData extends JsonObject {
3427
3242
  "id": string;
3428
- "homework_bank_id"?: string | null;
3429
- "course_id"?: string | null;
3430
- "course_name"?: string | null;
3431
- "grade_id"?: string | null;
3432
- "teacher_grade_id"?: string | null;
3243
+ "homework_bank_id": string | null;
3244
+ "course_id": string | null;
3245
+ "course_name": string | null;
3246
+ "grade_id": string | null;
3247
+ "teacher_grade_id": string | null;
3433
3248
  "name": string;
3434
- "title"?: string | null;
3435
- "description"?: string | null;
3249
+ "title": string | null;
3250
+ "description": string | null;
3436
3251
  "status": string;
3437
3252
  "sort_order": number;
3438
- "difficulty"?: string | null;
3253
+ "difficulty": string | null;
3439
3254
  "points": number;
3440
3255
  "created_at": string;
3441
3256
  "updated_at": string;
@@ -3443,22 +3258,21 @@ export interface HomeworkStoreHomeworkPostResponseData extends JsonObject {
3443
3258
  export interface HomeworkStoreHomeworkPostResponse extends ApiEnvelope<HomeworkStoreHomeworkPostResponseData> {
3444
3259
  }
3445
3260
  /** Backend response type: serde_json::Value. */
3446
- export interface HomeworkDestroyHomeworkDeleteResponse extends ApiEnvelope<JsonValue> {
3447
- }
3261
+ export type HomeworkDestroyHomeworkDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
3448
3262
  /** Backend response type: models::HomeworkResponse. */
3449
3263
  export interface HomeworkShowHomeworkGetResponseData extends JsonObject {
3450
3264
  "id": string;
3451
- "homework_bank_id"?: string | null;
3452
- "course_id"?: string | null;
3453
- "course_name"?: string | null;
3454
- "grade_id"?: string | null;
3455
- "teacher_grade_id"?: string | null;
3265
+ "homework_bank_id": string | null;
3266
+ "course_id": string | null;
3267
+ "course_name": string | null;
3268
+ "grade_id": string | null;
3269
+ "teacher_grade_id": string | null;
3456
3270
  "name": string;
3457
- "title"?: string | null;
3458
- "description"?: string | null;
3271
+ "title": string | null;
3272
+ "description": string | null;
3459
3273
  "status": string;
3460
3274
  "sort_order": number;
3461
- "difficulty"?: string | null;
3275
+ "difficulty": string | null;
3462
3276
  "points": number;
3463
3277
  "created_at": string;
3464
3278
  "updated_at": string;
@@ -3482,17 +3296,17 @@ export interface HomeworkUpdateHomeworkPatchInput extends JsonObject {
3482
3296
  /** Backend response type: models::HomeworkResponse. */
3483
3297
  export interface HomeworkUpdateHomeworkPatchResponseData extends JsonObject {
3484
3298
  "id": string;
3485
- "homework_bank_id"?: string | null;
3486
- "course_id"?: string | null;
3487
- "course_name"?: string | null;
3488
- "grade_id"?: string | null;
3489
- "teacher_grade_id"?: string | null;
3299
+ "homework_bank_id": string | null;
3300
+ "course_id": string | null;
3301
+ "course_name": string | null;
3302
+ "grade_id": string | null;
3303
+ "teacher_grade_id": string | null;
3490
3304
  "name": string;
3491
- "title"?: string | null;
3492
- "description"?: string | null;
3305
+ "title": string | null;
3306
+ "description": string | null;
3493
3307
  "status": string;
3494
3308
  "sort_order": number;
3495
- "difficulty"?: string | null;
3309
+ "difficulty": string | null;
3496
3310
  "points": number;
3497
3311
  "created_at": string;
3498
3312
  "updated_at": string;
@@ -3501,8 +3315,8 @@ export interface HomeworkUpdateHomeworkPatchResponse extends ApiEnvelope<Homewor
3501
3315
  }
3502
3316
  /** Backend query type: models::AssignmentListQuery. */
3503
3317
  export interface HomeworkIndexAssignmentGetQuery extends QueryParams {
3504
- "page_number"?: number | null;
3505
- "page_size"?: number | null;
3318
+ "page[number]"?: number | null;
3319
+ "page[size]"?: number | null;
3506
3320
  "status"?: string | null;
3507
3321
  "homework_id"?: string | null;
3508
3322
  "course_id"?: string | null;
@@ -3518,66 +3332,66 @@ export interface HomeworkIndexAssignmentGetQuery extends QueryParams {
3518
3332
  /** Backend response type: crate::models::PagedResult<models::AssignmentResponse>. */
3519
3333
  export interface HomeworkIndexAssignmentGetResponseItemProfile extends JsonObject {
3520
3334
  "user_id": string;
3521
- "first_name"?: JsonValue | null;
3522
- "last_name"?: JsonValue | null;
3523
- "email"?: string | null;
3524
- "national_code"?: string | null;
3525
- "phone"?: string | null;
3526
- "gender"?: string | null;
3335
+ "first_name": JsonValue | null;
3336
+ "last_name": JsonValue | null;
3337
+ "email": string | null;
3338
+ "national_code": string | null;
3339
+ "phone": string | null;
3340
+ "gender": string | null;
3527
3341
  }
3528
3342
  export interface HomeworkIndexAssignmentGetResponseItemTeacherProfile extends JsonObject {
3529
3343
  "user_id": string;
3530
- "first_name"?: JsonValue | null;
3531
- "last_name"?: JsonValue | null;
3532
- "email"?: string | null;
3533
- "national_code"?: string | null;
3534
- "phone"?: string | null;
3535
- "gender"?: string | null;
3344
+ "first_name": JsonValue | null;
3345
+ "last_name": JsonValue | null;
3346
+ "email": string | null;
3347
+ "national_code": string | null;
3348
+ "phone": string | null;
3349
+ "gender": string | null;
3536
3350
  }
3537
3351
  export interface HomeworkIndexAssignmentGetResponseItemConsultantProfile extends JsonObject {
3538
3352
  "user_id": string;
3539
- "first_name"?: JsonValue | null;
3540
- "last_name"?: JsonValue | null;
3541
- "email"?: string | null;
3542
- "national_code"?: string | null;
3543
- "phone"?: string | null;
3544
- "gender"?: string | null;
3353
+ "first_name": JsonValue | null;
3354
+ "last_name": JsonValue | null;
3355
+ "email": string | null;
3356
+ "national_code": string | null;
3357
+ "phone": string | null;
3358
+ "gender": string | null;
3545
3359
  }
3546
3360
  export interface HomeworkIndexAssignmentGetResponseItemSupportProfile extends JsonObject {
3547
3361
  "user_id": string;
3548
- "first_name"?: JsonValue | null;
3549
- "last_name"?: JsonValue | null;
3550
- "email"?: string | null;
3551
- "national_code"?: string | null;
3552
- "phone"?: string | null;
3553
- "gender"?: string | null;
3362
+ "first_name": JsonValue | null;
3363
+ "last_name": JsonValue | null;
3364
+ "email": string | null;
3365
+ "national_code": string | null;
3366
+ "phone": string | null;
3367
+ "gender": string | null;
3554
3368
  }
3555
3369
  export interface HomeworkIndexAssignmentGetResponseItem extends JsonObject {
3556
3370
  "id": string;
3557
3371
  "homework_id": string;
3558
- "homework_question_id"?: string | null;
3559
- "homework_name"?: string | null;
3560
- "homework"?: import("./types.js").Homework | null;
3561
- "homework_question"?: import("./types.js").HomeworkQuestion | null;
3562
- "course_id"?: string | null;
3563
- "classroom_id"?: string | null;
3564
- "classroom_name"?: string | null;
3565
- "user_id"?: string | null;
3566
- "profile"?: HomeworkIndexAssignmentGetResponseItemProfile | null;
3567
- "teacher_user_id"?: string | null;
3568
- "teacher_profile"?: HomeworkIndexAssignmentGetResponseItemTeacherProfile | null;
3569
- "consultant_user_id"?: string | null;
3570
- "consultant_profile"?: HomeworkIndexAssignmentGetResponseItemConsultantProfile | null;
3571
- "support_user_id"?: string | null;
3572
- "support_profile"?: HomeworkIndexAssignmentGetResponseItemSupportProfile | null;
3573
- "chat_conversation_id"?: string | null;
3574
- "due_at"?: string | null;
3372
+ "homework_question_id": string | null;
3373
+ "homework_name": string | null;
3374
+ "homework": import("./types.js").Homework | null;
3375
+ "homework_question": import("./types.js").HomeworkQuestion | null;
3376
+ "course_id": string | null;
3377
+ "classroom_id": string | null;
3378
+ "classroom_name": string | null;
3379
+ "user_id": string | null;
3380
+ "profile": HomeworkIndexAssignmentGetResponseItemProfile | null;
3381
+ "teacher_user_id": string | null;
3382
+ "teacher_profile": HomeworkIndexAssignmentGetResponseItemTeacherProfile | null;
3383
+ "consultant_user_id": string | null;
3384
+ "consultant_profile": HomeworkIndexAssignmentGetResponseItemConsultantProfile | null;
3385
+ "support_user_id": string | null;
3386
+ "support_profile": HomeworkIndexAssignmentGetResponseItemSupportProfile | null;
3387
+ "chat_conversation_id": string | null;
3388
+ "due_at": string | null;
3575
3389
  "status": string;
3576
- "answer_text"?: string | null;
3577
- "description"?: string | null;
3578
- "score"?: number | null;
3579
- "active_until"?: string | null;
3580
- "resolved_at"?: string | null;
3390
+ "answer_text": string | null;
3391
+ "description": string | null;
3392
+ "score": number | null;
3393
+ "active_until": string | null;
3394
+ "resolved_at": string | null;
3581
3395
  "created_at": string;
3582
3396
  "updated_at": string;
3583
3397
  }
@@ -3594,152 +3408,140 @@ export interface HomeworkIndexAssignmentGetResponseData extends JsonObject {
3594
3408
  export interface HomeworkIndexAssignmentGetResponse extends ApiEnvelope<HomeworkIndexAssignmentGetResponseData> {
3595
3409
  }
3596
3410
  /** Backend request type: models::CreateAssignmentRequest. */
3597
- export interface HomeworkStoreAssignmentPostInput extends JsonObject {
3598
- "homework_id": string;
3599
- "classroom_id"?: string | null;
3600
- "user_id"?: string | null;
3601
- "teacher_user_id"?: string | null;
3602
- "consultant_user_id"?: string | null;
3603
- "support_user_id"?: string | null;
3604
- "due_at"?: string | null;
3605
- "status": string;
3606
- "answer_text"?: string | null;
3607
- "score"?: number | null;
3608
- }
3411
+ export type HomeworkStoreAssignmentPostInput = import("./wire.types.js").LmsCreateAssignmentInput;
3609
3412
  /** Backend response type: models::AssignmentResponse. */
3610
3413
  export interface HomeworkStoreAssignmentPostResponseDataProfile extends JsonObject {
3611
3414
  "user_id": string;
3612
- "first_name"?: JsonValue | null;
3613
- "last_name"?: JsonValue | null;
3614
- "email"?: string | null;
3615
- "national_code"?: string | null;
3616
- "phone"?: string | null;
3617
- "gender"?: string | null;
3415
+ "first_name": JsonValue | null;
3416
+ "last_name": JsonValue | null;
3417
+ "email": string | null;
3418
+ "national_code": string | null;
3419
+ "phone": string | null;
3420
+ "gender": string | null;
3618
3421
  }
3619
3422
  export interface HomeworkStoreAssignmentPostResponseDataTeacherProfile extends JsonObject {
3620
3423
  "user_id": string;
3621
- "first_name"?: JsonValue | null;
3622
- "last_name"?: JsonValue | null;
3623
- "email"?: string | null;
3624
- "national_code"?: string | null;
3625
- "phone"?: string | null;
3626
- "gender"?: string | null;
3424
+ "first_name": JsonValue | null;
3425
+ "last_name": JsonValue | null;
3426
+ "email": string | null;
3427
+ "national_code": string | null;
3428
+ "phone": string | null;
3429
+ "gender": string | null;
3627
3430
  }
3628
3431
  export interface HomeworkStoreAssignmentPostResponseDataConsultantProfile extends JsonObject {
3629
3432
  "user_id": string;
3630
- "first_name"?: JsonValue | null;
3631
- "last_name"?: JsonValue | null;
3632
- "email"?: string | null;
3633
- "national_code"?: string | null;
3634
- "phone"?: string | null;
3635
- "gender"?: string | null;
3433
+ "first_name": JsonValue | null;
3434
+ "last_name": JsonValue | null;
3435
+ "email": string | null;
3436
+ "national_code": string | null;
3437
+ "phone": string | null;
3438
+ "gender": string | null;
3636
3439
  }
3637
3440
  export interface HomeworkStoreAssignmentPostResponseDataSupportProfile extends JsonObject {
3638
3441
  "user_id": string;
3639
- "first_name"?: JsonValue | null;
3640
- "last_name"?: JsonValue | null;
3641
- "email"?: string | null;
3642
- "national_code"?: string | null;
3643
- "phone"?: string | null;
3644
- "gender"?: string | null;
3442
+ "first_name": JsonValue | null;
3443
+ "last_name": JsonValue | null;
3444
+ "email": string | null;
3445
+ "national_code": string | null;
3446
+ "phone": string | null;
3447
+ "gender": string | null;
3645
3448
  }
3646
3449
  export interface HomeworkStoreAssignmentPostResponseData extends JsonObject {
3647
3450
  "id": string;
3648
3451
  "homework_id": string;
3649
- "homework_question_id"?: string | null;
3650
- "homework_name"?: string | null;
3651
- "homework"?: import("./types.js").Homework | null;
3652
- "homework_question"?: import("./types.js").HomeworkQuestion | null;
3653
- "course_id"?: string | null;
3654
- "classroom_id"?: string | null;
3655
- "classroom_name"?: string | null;
3656
- "user_id"?: string | null;
3657
- "profile"?: HomeworkStoreAssignmentPostResponseDataProfile | null;
3658
- "teacher_user_id"?: string | null;
3659
- "teacher_profile"?: HomeworkStoreAssignmentPostResponseDataTeacherProfile | null;
3660
- "consultant_user_id"?: string | null;
3661
- "consultant_profile"?: HomeworkStoreAssignmentPostResponseDataConsultantProfile | null;
3662
- "support_user_id"?: string | null;
3663
- "support_profile"?: HomeworkStoreAssignmentPostResponseDataSupportProfile | null;
3664
- "chat_conversation_id"?: string | null;
3665
- "due_at"?: string | null;
3452
+ "homework_question_id": string | null;
3453
+ "homework_name": string | null;
3454
+ "homework": import("./types.js").Homework | null;
3455
+ "homework_question": import("./types.js").HomeworkQuestion | null;
3456
+ "course_id": string | null;
3457
+ "classroom_id": string | null;
3458
+ "classroom_name": string | null;
3459
+ "user_id": string | null;
3460
+ "profile": HomeworkStoreAssignmentPostResponseDataProfile | null;
3461
+ "teacher_user_id": string | null;
3462
+ "teacher_profile": HomeworkStoreAssignmentPostResponseDataTeacherProfile | null;
3463
+ "consultant_user_id": string | null;
3464
+ "consultant_profile": HomeworkStoreAssignmentPostResponseDataConsultantProfile | null;
3465
+ "support_user_id": string | null;
3466
+ "support_profile": HomeworkStoreAssignmentPostResponseDataSupportProfile | null;
3467
+ "chat_conversation_id": string | null;
3468
+ "due_at": string | null;
3666
3469
  "status": string;
3667
- "answer_text"?: string | null;
3668
- "description"?: string | null;
3669
- "score"?: number | null;
3670
- "active_until"?: string | null;
3671
- "resolved_at"?: string | null;
3470
+ "answer_text": string | null;
3471
+ "description": string | null;
3472
+ "score": number | null;
3473
+ "active_until": string | null;
3474
+ "resolved_at": string | null;
3672
3475
  "created_at": string;
3673
3476
  "updated_at": string;
3674
3477
  }
3675
3478
  export interface HomeworkStoreAssignmentPostResponse extends ApiEnvelope<HomeworkStoreAssignmentPostResponseData> {
3676
3479
  }
3677
3480
  /** Backend response type: serde_json::Value. */
3678
- export interface HomeworkDestroyAssignmentDeleteResponse extends ApiEnvelope<JsonValue> {
3679
- }
3481
+ export type HomeworkDestroyAssignmentDeleteResponse = import("./wire.types.js").LmsEmptyMutationResponse;
3680
3482
  /** Backend response type: models::AssignmentResponse. */
3681
3483
  export interface HomeworkShowAssignmentGetResponseDataProfile extends JsonObject {
3682
3484
  "user_id": string;
3683
- "first_name"?: JsonValue | null;
3684
- "last_name"?: JsonValue | null;
3685
- "email"?: string | null;
3686
- "national_code"?: string | null;
3687
- "phone"?: string | null;
3688
- "gender"?: string | null;
3485
+ "first_name": JsonValue | null;
3486
+ "last_name": JsonValue | null;
3487
+ "email": string | null;
3488
+ "national_code": string | null;
3489
+ "phone": string | null;
3490
+ "gender": string | null;
3689
3491
  }
3690
3492
  export interface HomeworkShowAssignmentGetResponseDataTeacherProfile extends JsonObject {
3691
3493
  "user_id": string;
3692
- "first_name"?: JsonValue | null;
3693
- "last_name"?: JsonValue | null;
3694
- "email"?: string | null;
3695
- "national_code"?: string | null;
3696
- "phone"?: string | null;
3697
- "gender"?: string | null;
3494
+ "first_name": JsonValue | null;
3495
+ "last_name": JsonValue | null;
3496
+ "email": string | null;
3497
+ "national_code": string | null;
3498
+ "phone": string | null;
3499
+ "gender": string | null;
3698
3500
  }
3699
3501
  export interface HomeworkShowAssignmentGetResponseDataConsultantProfile extends JsonObject {
3700
3502
  "user_id": string;
3701
- "first_name"?: JsonValue | null;
3702
- "last_name"?: JsonValue | null;
3703
- "email"?: string | null;
3704
- "national_code"?: string | null;
3705
- "phone"?: string | null;
3706
- "gender"?: string | null;
3503
+ "first_name": JsonValue | null;
3504
+ "last_name": JsonValue | null;
3505
+ "email": string | null;
3506
+ "national_code": string | null;
3507
+ "phone": string | null;
3508
+ "gender": string | null;
3707
3509
  }
3708
3510
  export interface HomeworkShowAssignmentGetResponseDataSupportProfile extends JsonObject {
3709
3511
  "user_id": string;
3710
- "first_name"?: JsonValue | null;
3711
- "last_name"?: JsonValue | null;
3712
- "email"?: string | null;
3713
- "national_code"?: string | null;
3714
- "phone"?: string | null;
3715
- "gender"?: string | null;
3512
+ "first_name": JsonValue | null;
3513
+ "last_name": JsonValue | null;
3514
+ "email": string | null;
3515
+ "national_code": string | null;
3516
+ "phone": string | null;
3517
+ "gender": string | null;
3716
3518
  }
3717
3519
  export interface HomeworkShowAssignmentGetResponseData extends JsonObject {
3718
3520
  "id": string;
3719
3521
  "homework_id": string;
3720
- "homework_question_id"?: string | null;
3721
- "homework_name"?: string | null;
3722
- "homework"?: import("./types.js").Homework | null;
3723
- "homework_question"?: import("./types.js").HomeworkQuestion | null;
3724
- "course_id"?: string | null;
3725
- "classroom_id"?: string | null;
3726
- "classroom_name"?: string | null;
3727
- "user_id"?: string | null;
3728
- "profile"?: HomeworkShowAssignmentGetResponseDataProfile | null;
3729
- "teacher_user_id"?: string | null;
3730
- "teacher_profile"?: HomeworkShowAssignmentGetResponseDataTeacherProfile | null;
3731
- "consultant_user_id"?: string | null;
3732
- "consultant_profile"?: HomeworkShowAssignmentGetResponseDataConsultantProfile | null;
3733
- "support_user_id"?: string | null;
3734
- "support_profile"?: HomeworkShowAssignmentGetResponseDataSupportProfile | null;
3735
- "chat_conversation_id"?: string | null;
3736
- "due_at"?: string | null;
3522
+ "homework_question_id": string | null;
3523
+ "homework_name": string | null;
3524
+ "homework": import("./types.js").Homework | null;
3525
+ "homework_question": import("./types.js").HomeworkQuestion | null;
3526
+ "course_id": string | null;
3527
+ "classroom_id": string | null;
3528
+ "classroom_name": string | null;
3529
+ "user_id": string | null;
3530
+ "profile": HomeworkShowAssignmentGetResponseDataProfile | null;
3531
+ "teacher_user_id": string | null;
3532
+ "teacher_profile": HomeworkShowAssignmentGetResponseDataTeacherProfile | null;
3533
+ "consultant_user_id": string | null;
3534
+ "consultant_profile": HomeworkShowAssignmentGetResponseDataConsultantProfile | null;
3535
+ "support_user_id": string | null;
3536
+ "support_profile": HomeworkShowAssignmentGetResponseDataSupportProfile | null;
3537
+ "chat_conversation_id": string | null;
3538
+ "due_at": string | null;
3737
3539
  "status": string;
3738
- "answer_text"?: string | null;
3739
- "description"?: string | null;
3740
- "score"?: number | null;
3741
- "active_until"?: string | null;
3742
- "resolved_at"?: string | null;
3540
+ "answer_text": string | null;
3541
+ "description": string | null;
3542
+ "score": number | null;
3543
+ "active_until": string | null;
3544
+ "resolved_at": string | null;
3743
3545
  "created_at": string;
3744
3546
  "updated_at": string;
3745
3547
  }
@@ -3764,66 +3566,66 @@ export interface HomeworkUpdateAssignmentPatchInput extends JsonObject {
3764
3566
  /** Backend response type: models::AssignmentResponse. */
3765
3567
  export interface HomeworkUpdateAssignmentPatchResponseDataProfile extends JsonObject {
3766
3568
  "user_id": string;
3767
- "first_name"?: JsonValue | null;
3768
- "last_name"?: JsonValue | null;
3769
- "email"?: string | null;
3770
- "national_code"?: string | null;
3771
- "phone"?: string | null;
3772
- "gender"?: string | null;
3569
+ "first_name": JsonValue | null;
3570
+ "last_name": JsonValue | null;
3571
+ "email": string | null;
3572
+ "national_code": string | null;
3573
+ "phone": string | null;
3574
+ "gender": string | null;
3773
3575
  }
3774
3576
  export interface HomeworkUpdateAssignmentPatchResponseDataTeacherProfile extends JsonObject {
3775
3577
  "user_id": string;
3776
- "first_name"?: JsonValue | null;
3777
- "last_name"?: JsonValue | null;
3778
- "email"?: string | null;
3779
- "national_code"?: string | null;
3780
- "phone"?: string | null;
3781
- "gender"?: string | null;
3578
+ "first_name": JsonValue | null;
3579
+ "last_name": JsonValue | null;
3580
+ "email": string | null;
3581
+ "national_code": string | null;
3582
+ "phone": string | null;
3583
+ "gender": string | null;
3782
3584
  }
3783
3585
  export interface HomeworkUpdateAssignmentPatchResponseDataConsultantProfile extends JsonObject {
3784
3586
  "user_id": string;
3785
- "first_name"?: JsonValue | null;
3786
- "last_name"?: JsonValue | null;
3787
- "email"?: string | null;
3788
- "national_code"?: string | null;
3789
- "phone"?: string | null;
3790
- "gender"?: string | null;
3587
+ "first_name": JsonValue | null;
3588
+ "last_name": JsonValue | null;
3589
+ "email": string | null;
3590
+ "national_code": string | null;
3591
+ "phone": string | null;
3592
+ "gender": string | null;
3791
3593
  }
3792
3594
  export interface HomeworkUpdateAssignmentPatchResponseDataSupportProfile extends JsonObject {
3793
3595
  "user_id": string;
3794
- "first_name"?: JsonValue | null;
3795
- "last_name"?: JsonValue | null;
3796
- "email"?: string | null;
3797
- "national_code"?: string | null;
3798
- "phone"?: string | null;
3799
- "gender"?: string | null;
3596
+ "first_name": JsonValue | null;
3597
+ "last_name": JsonValue | null;
3598
+ "email": string | null;
3599
+ "national_code": string | null;
3600
+ "phone": string | null;
3601
+ "gender": string | null;
3800
3602
  }
3801
3603
  export interface HomeworkUpdateAssignmentPatchResponseData extends JsonObject {
3802
3604
  "id": string;
3803
3605
  "homework_id": string;
3804
- "homework_question_id"?: string | null;
3805
- "homework_name"?: string | null;
3806
- "homework"?: import("./types.js").Homework | null;
3807
- "homework_question"?: import("./types.js").HomeworkQuestion | null;
3808
- "course_id"?: string | null;
3809
- "classroom_id"?: string | null;
3810
- "classroom_name"?: string | null;
3811
- "user_id"?: string | null;
3812
- "profile"?: HomeworkUpdateAssignmentPatchResponseDataProfile | null;
3813
- "teacher_user_id"?: string | null;
3814
- "teacher_profile"?: HomeworkUpdateAssignmentPatchResponseDataTeacherProfile | null;
3815
- "consultant_user_id"?: string | null;
3816
- "consultant_profile"?: HomeworkUpdateAssignmentPatchResponseDataConsultantProfile | null;
3817
- "support_user_id"?: string | null;
3818
- "support_profile"?: HomeworkUpdateAssignmentPatchResponseDataSupportProfile | null;
3819
- "chat_conversation_id"?: string | null;
3820
- "due_at"?: string | null;
3606
+ "homework_question_id": string | null;
3607
+ "homework_name": string | null;
3608
+ "homework": import("./types.js").Homework | null;
3609
+ "homework_question": import("./types.js").HomeworkQuestion | null;
3610
+ "course_id": string | null;
3611
+ "classroom_id": string | null;
3612
+ "classroom_name": string | null;
3613
+ "user_id": string | null;
3614
+ "profile": HomeworkUpdateAssignmentPatchResponseDataProfile | null;
3615
+ "teacher_user_id": string | null;
3616
+ "teacher_profile": HomeworkUpdateAssignmentPatchResponseDataTeacherProfile | null;
3617
+ "consultant_user_id": string | null;
3618
+ "consultant_profile": HomeworkUpdateAssignmentPatchResponseDataConsultantProfile | null;
3619
+ "support_user_id": string | null;
3620
+ "support_profile": HomeworkUpdateAssignmentPatchResponseDataSupportProfile | null;
3621
+ "chat_conversation_id": string | null;
3622
+ "due_at": string | null;
3821
3623
  "status": string;
3822
- "answer_text"?: string | null;
3823
- "description"?: string | null;
3824
- "score"?: number | null;
3825
- "active_until"?: string | null;
3826
- "resolved_at"?: string | null;
3624
+ "answer_text": string | null;
3625
+ "description": string | null;
3626
+ "score": number | null;
3627
+ "active_until": string | null;
3628
+ "resolved_at": string | null;
3827
3629
  "created_at": string;
3828
3630
  "updated_at": string;
3829
3631
  }
@@ -3831,8 +3633,8 @@ export interface HomeworkUpdateAssignmentPatchResponse extends ApiEnvelope<Homew
3831
3633
  }
3832
3634
  /** Backend query type: models::AssignmentListQuery. */
3833
3635
  export interface HomeworkIndexCurrentTermAssignmentGetQuery extends QueryParams {
3834
- "page_number"?: number | null;
3835
- "page_size"?: number | null;
3636
+ "page[number]"?: number | null;
3637
+ "page[size]"?: number | null;
3836
3638
  "status"?: string | null;
3837
3639
  "homework_id"?: string | null;
3838
3640
  "course_id"?: string | null;
@@ -3848,66 +3650,66 @@ export interface HomeworkIndexCurrentTermAssignmentGetQuery extends QueryParams
3848
3650
  /** Backend response type: crate::models::PagedResult<models::AssignmentResponse>. */
3849
3651
  export interface HomeworkIndexCurrentTermAssignmentGetResponseItemProfile extends JsonObject {
3850
3652
  "user_id": string;
3851
- "first_name"?: JsonValue | null;
3852
- "last_name"?: JsonValue | null;
3853
- "email"?: string | null;
3854
- "national_code"?: string | null;
3855
- "phone"?: string | null;
3856
- "gender"?: string | null;
3653
+ "first_name": JsonValue | null;
3654
+ "last_name": JsonValue | null;
3655
+ "email": string | null;
3656
+ "national_code": string | null;
3657
+ "phone": string | null;
3658
+ "gender": string | null;
3857
3659
  }
3858
3660
  export interface HomeworkIndexCurrentTermAssignmentGetResponseItemTeacherProfile extends JsonObject {
3859
3661
  "user_id": string;
3860
- "first_name"?: JsonValue | null;
3861
- "last_name"?: JsonValue | null;
3862
- "email"?: string | null;
3863
- "national_code"?: string | null;
3864
- "phone"?: string | null;
3865
- "gender"?: string | null;
3662
+ "first_name": JsonValue | null;
3663
+ "last_name": JsonValue | null;
3664
+ "email": string | null;
3665
+ "national_code": string | null;
3666
+ "phone": string | null;
3667
+ "gender": string | null;
3866
3668
  }
3867
3669
  export interface HomeworkIndexCurrentTermAssignmentGetResponseItemConsultantProfile extends JsonObject {
3868
3670
  "user_id": string;
3869
- "first_name"?: JsonValue | null;
3870
- "last_name"?: JsonValue | null;
3871
- "email"?: string | null;
3872
- "national_code"?: string | null;
3873
- "phone"?: string | null;
3874
- "gender"?: string | null;
3671
+ "first_name": JsonValue | null;
3672
+ "last_name": JsonValue | null;
3673
+ "email": string | null;
3674
+ "national_code": string | null;
3675
+ "phone": string | null;
3676
+ "gender": string | null;
3875
3677
  }
3876
3678
  export interface HomeworkIndexCurrentTermAssignmentGetResponseItemSupportProfile extends JsonObject {
3877
3679
  "user_id": string;
3878
- "first_name"?: JsonValue | null;
3879
- "last_name"?: JsonValue | null;
3880
- "email"?: string | null;
3881
- "national_code"?: string | null;
3882
- "phone"?: string | null;
3883
- "gender"?: string | null;
3680
+ "first_name": JsonValue | null;
3681
+ "last_name": JsonValue | null;
3682
+ "email": string | null;
3683
+ "national_code": string | null;
3684
+ "phone": string | null;
3685
+ "gender": string | null;
3884
3686
  }
3885
3687
  export interface HomeworkIndexCurrentTermAssignmentGetResponseItem extends JsonObject {
3886
3688
  "id": string;
3887
3689
  "homework_id": string;
3888
- "homework_question_id"?: string | null;
3889
- "homework_name"?: string | null;
3890
- "homework"?: import("./types.js").Homework | null;
3891
- "homework_question"?: import("./types.js").HomeworkQuestion | null;
3892
- "course_id"?: string | null;
3893
- "classroom_id"?: string | null;
3894
- "classroom_name"?: string | null;
3895
- "user_id"?: string | null;
3896
- "profile"?: HomeworkIndexCurrentTermAssignmentGetResponseItemProfile | null;
3897
- "teacher_user_id"?: string | null;
3898
- "teacher_profile"?: HomeworkIndexCurrentTermAssignmentGetResponseItemTeacherProfile | null;
3899
- "consultant_user_id"?: string | null;
3900
- "consultant_profile"?: HomeworkIndexCurrentTermAssignmentGetResponseItemConsultantProfile | null;
3901
- "support_user_id"?: string | null;
3902
- "support_profile"?: HomeworkIndexCurrentTermAssignmentGetResponseItemSupportProfile | null;
3903
- "chat_conversation_id"?: string | null;
3904
- "due_at"?: string | null;
3690
+ "homework_question_id": string | null;
3691
+ "homework_name": string | null;
3692
+ "homework": import("./types.js").Homework | null;
3693
+ "homework_question": import("./types.js").HomeworkQuestion | null;
3694
+ "course_id": string | null;
3695
+ "classroom_id": string | null;
3696
+ "classroom_name": string | null;
3697
+ "user_id": string | null;
3698
+ "profile": HomeworkIndexCurrentTermAssignmentGetResponseItemProfile | null;
3699
+ "teacher_user_id": string | null;
3700
+ "teacher_profile": HomeworkIndexCurrentTermAssignmentGetResponseItemTeacherProfile | null;
3701
+ "consultant_user_id": string | null;
3702
+ "consultant_profile": HomeworkIndexCurrentTermAssignmentGetResponseItemConsultantProfile | null;
3703
+ "support_user_id": string | null;
3704
+ "support_profile": HomeworkIndexCurrentTermAssignmentGetResponseItemSupportProfile | null;
3705
+ "chat_conversation_id": string | null;
3706
+ "due_at": string | null;
3905
3707
  "status": string;
3906
- "answer_text"?: string | null;
3907
- "description"?: string | null;
3908
- "score"?: number | null;
3909
- "active_until"?: string | null;
3910
- "resolved_at"?: string | null;
3708
+ "answer_text": string | null;
3709
+ "description": string | null;
3710
+ "score": number | null;
3711
+ "active_until": string | null;
3712
+ "resolved_at": string | null;
3911
3713
  "created_at": string;
3912
3714
  "updated_at": string;
3913
3715
  }
@@ -3925,8 +3727,8 @@ export interface HomeworkIndexCurrentTermAssignmentGetResponse extends ApiEnvelo
3925
3727
  }
3926
3728
  /** Backend query type: models::QuestionListQuery. */
3927
3729
  export interface HomeworkIndexQuestionGetQuery extends QueryParams {
3928
- "page_number"?: number | null;
3929
- "page_size"?: number | null;
3730
+ "page[number]"?: number | null;
3731
+ "page[size]"?: number | null;
3930
3732
  "homework_id"?: string | null;
3931
3733
  "search"?: string | null;
3932
3734
  "status"?: string | null;
@@ -3938,12 +3740,12 @@ export interface HomeworkIndexQuestionGetResponseItem extends JsonObject {
3938
3740
  "id": string;
3939
3741
  "homework_id": string;
3940
3742
  "name": string;
3941
- "bank_name"?: string | null;
3743
+ "bank_name": string | null;
3942
3744
  "assignable": boolean;
3943
- "assignment_block_reason"?: string | null;
3745
+ "assignment_block_reason": string | null;
3944
3746
  "question_text": string;
3945
- "description"?: string | null;
3946
- "answer"?: string | null;
3747
+ "description": string | null;
3748
+ "answer": string | null;
3947
3749
  "question_type": string;
3948
3750
  "kind": string;
3949
3751
  "points": number;
@@ -3986,12 +3788,12 @@ export interface HomeworkStoreQuestionPostResponseData extends JsonObject {
3986
3788
  "id": string;
3987
3789
  "homework_id": string;
3988
3790
  "name": string;
3989
- "bank_name"?: string | null;
3791
+ "bank_name": string | null;
3990
3792
  "assignable": boolean;
3991
- "assignment_block_reason"?: string | null;
3793
+ "assignment_block_reason": string | null;
3992
3794
  "question_text": string;
3993
- "description"?: string | null;
3994
- "answer"?: string | null;
3795
+ "description": string | null;
3796
+ "answer": string | null;
3995
3797
  "question_type": string;
3996
3798
  "kind": string;
3997
3799
  "points": number;
@@ -4009,12 +3811,12 @@ export interface HomeworkShowQuestionGetResponseData extends JsonObject {
4009
3811
  "id": string;
4010
3812
  "homework_id": string;
4011
3813
  "name": string;
4012
- "bank_name"?: string | null;
3814
+ "bank_name": string | null;
4013
3815
  "assignable": boolean;
4014
- "assignment_block_reason"?: string | null;
3816
+ "assignment_block_reason": string | null;
4015
3817
  "question_text": string;
4016
- "description"?: string | null;
4017
- "answer"?: string | null;
3818
+ "description": string | null;
3819
+ "answer": string | null;
4018
3820
  "question_type": string;
4019
3821
  "kind": string;
4020
3822
  "points": number;
@@ -4047,12 +3849,12 @@ export interface HomeworkUpdateQuestionPatchResponseData extends JsonObject {
4047
3849
  "id": string;
4048
3850
  "homework_id": string;
4049
3851
  "name": string;
4050
- "bank_name"?: string | null;
3852
+ "bank_name": string | null;
4051
3853
  "assignable": boolean;
4052
- "assignment_block_reason"?: string | null;
3854
+ "assignment_block_reason": string | null;
4053
3855
  "question_text": string;
4054
- "description"?: string | null;
4055
- "answer"?: string | null;
3856
+ "description": string | null;
3857
+ "answer": string | null;
4056
3858
  "question_type": string;
4057
3859
  "kind": string;
4058
3860
  "points": number;
@@ -4070,15 +3872,26 @@ export type TransferTransferUserDataPostInput = import("./types.js").TransferUse
4070
3872
  /** Backend response type: TransferUserDataResponse. */
4071
3873
  export type TransferTransferUserDataPostResponse = import("./types.js").TransferUserDataResponse;
4072
3874
  /** Backend response type: infera_flow_sdk::FlowIntegrationResponse. */
4073
- export interface IntegrationFlowIntegrationShowGetResponse extends ApiEnvelope<BackendJson<"infera_flow_sdk::FlowIntegrationResponse">> {
4074
- }
3875
+ export type IntegrationFlowIntegrationShowGetResponseData = import("./wire.types.js").LmsFlowIntegration;
3876
+ export type IntegrationFlowIntegrationShowGetResponse = ApiEnvelope<import("./wire.types.js").LmsFlowIntegration>;
4075
3877
  /** Backend request type: LegacyIdBatch. */
4076
3878
  export interface IntegrationResolveLegacyIdsPostInput extends JsonObject {
4077
3879
  "courses"?: number[];
4078
3880
  "classrooms"?: number[];
4079
3881
  }
4080
3882
  /** Backend response type: Value. */
4081
- export interface IntegrationResolveLegacyIdsPostResponse extends ApiEnvelope<JsonValue> {
3883
+ export type IntegrationResolveLegacyIdsPostResponseData = import("./wire.types.js").LmsLegacyResolution;
3884
+ export type IntegrationResolveLegacyIdsPostResponse = ApiEnvelope<import("./wire.types.js").LmsLegacyResolution>;
3885
+ /** Backend request type: RelationshipRequest. */
3886
+ export interface NotificationsRelationshipPostInput extends JsonObject {
3887
+ "first_user_id": string;
3888
+ "second_user_id": string;
3889
+ }
3890
+ /** Backend response type: RelationshipResponse. */
3891
+ export interface NotificationsRelationshipPostResponseData extends JsonObject {
3892
+ "allowed": boolean;
3893
+ }
3894
+ export interface NotificationsRelationshipPostResponse extends ApiEnvelope<NotificationsRelationshipPostResponseData> {
4082
3895
  }
4083
3896
  /** Backend response type: Value. */
4084
3897
  export type InteractiveCatalogGetResponse = import("./interactive.js").LearningEnvelope<import("./interactive.js").LearningCatalogItem[]>;
@@ -4130,17 +3943,16 @@ export interface MediaUploadImagePostResponseData extends JsonObject {
4130
3943
  export interface MediaUploadImagePostResponse extends ApiEnvelope<MediaUploadImagePostResponseData> {
4131
3944
  }
4132
3945
  /** Backend response type: raw-response. */
4133
- export interface MediaDownloadImageGetResponse extends ApiEnvelope<JsonValue> {
4134
- }
4135
- /** Backend query type: ReviewedIntegrationQuery. */
3946
+ export type MediaDownloadImageGetResponse = ArrayBuffer | Uint8Array;
3947
+ /** Backend query type: RulesQuery. */
4136
3948
  export type ModIndexGetQuery = import("./notification-settings.js").NotificationRuleQuery;
4137
- /** Backend response type: api. */
3949
+ /** Backend response type: Vec<NotificationRule>. */
4138
3950
  export type ModIndexGetResponse = import("./notification-settings.js").LmsNotificationResponse<import("./notification-settings.js").StudentNotificationRule[]>;
4139
- /** Backend request type: ReviewedIntegrationInput. */
3951
+ /** Backend request type: UpdateRule. */
4140
3952
  export type ModUpdatePutInput = import("./notification-settings.js").UpdateNotificationRule;
4141
- /** Backend response type: api. */
3953
+ /** Backend response type: NotificationRule. */
4142
3954
  export type ModUpdatePutResponse = import("./notification-settings.js").LmsNotificationResponse<import("./notification-settings.js").StudentNotificationRule>;
4143
- /** Backend response type: api. */
3955
+ /** Backend response type: RulePreview. */
4144
3956
  export type ModPreviewPostResponse = import("./notification-settings.js").LmsNotificationResponse<import("./notification-settings.js").NotificationRulePreview>;
4145
3957
  /** Backend query type: ProfileSearchQuery. */
4146
3958
  export interface ProfileRoutesIndexGetQuery extends QueryParams {
@@ -4151,12 +3963,12 @@ export interface ProfileRoutesIndexGetQuery extends QueryParams {
4151
3963
  /** Backend response type: PagedResult<ProfileSummary>. */
4152
3964
  export interface ProfileRoutesIndexGetResponseItem extends JsonObject {
4153
3965
  "user_id": string;
4154
- "first_name"?: JsonValue | null;
4155
- "last_name"?: JsonValue | null;
4156
- "email"?: string | null;
4157
- "national_code"?: string | null;
4158
- "phone"?: string | null;
4159
- "gender"?: string | null;
3966
+ "first_name": JsonValue | null;
3967
+ "last_name": JsonValue | null;
3968
+ "email": string | null;
3969
+ "national_code": string | null;
3970
+ "phone": string | null;
3971
+ "gender": string | null;
4160
3972
  }
4161
3973
  export interface ProfileRoutesIndexGetResponsePageMeta extends JsonObject {
4162
3974
  "page": number;
@@ -4171,39 +3983,32 @@ export interface ProfileRoutesIndexGetResponseData extends JsonObject {
4171
3983
  export interface ProfileRoutesIndexGetResponse extends ApiEnvelope<ProfileRoutesIndexGetResponseData> {
4172
3984
  }
4173
3985
  /** Backend response type: Option<ProfileSummary>. */
4174
- export interface ProfileRoutesShowGetResponse extends ApiEnvelope<BackendJson<"ProfileSummary"> | null> {
4175
- }
4176
- /** Backend response type: Branding. */
4177
- export interface BrandingPublicShowGetResponseData extends JsonObject {
4178
- "title"?: string | null;
4179
- "localizations": Record<string, BackendJson<"BrandText">>;
4180
- "icon_asset_key"?: string | null;
4181
- "icon_url"?: string | null;
4182
- }
4183
- export interface BrandingPublicShowGetResponse extends ApiEnvelope<BrandingPublicShowGetResponseData> {
4184
- }
3986
+ export type ProfileRoutesShowGetResponseData = import("./wire.types.js").LmsProfileSummary | null;
3987
+ export type ProfileRoutesShowGetResponse = ApiEnvelope<import("./wire.types.js").LmsProfileSummary | null>;
3988
+ /** Backend response type: PublicBranding. */
3989
+ export type BrandingPublicShowGetResponseData = import("./branding.types.js").LmsPublicBranding;
3990
+ export type BrandingPublicShowGetResponse = import("@faiber/sdk-core").ApiEnvelope<import("./branding.types.js").LmsPublicBranding>;
4185
3991
  /** Backend response type: raw-response. */
4186
- export interface BrandingAssetGetResponse extends ApiEnvelope<JsonValue> {
4187
- }
3992
+ export type BrandingAssetGetResponse = ArrayBuffer | Uint8Array;
4188
3993
  /** Backend response type: models::PublicCertificateResponse. */
4189
3994
  export type CertificateVerifyCertificateGetResponse = import("./types.js").PublicCertificateResponse;
4190
3995
  /** Backend response type: raw-response. */
4191
3996
  export type CertificateRenderCertificateImageGetResponse = import("./types.js").CertificateSvgResponse;
4192
3997
  /** Backend query type: models::AssignedStudentsQuery. */
4193
3998
  export interface ReportAssignedChatContactsGetQuery extends QueryParams {
4194
- "page_number"?: number | null;
4195
- "page_size"?: number | null;
3999
+ "page[number]"?: number | null;
4000
+ "page[size]"?: number | null;
4196
4001
  "search"?: string | null;
4197
4002
  }
4198
4003
  /** Backend response type: crate::models::PagedResult<models::AssignedChatContact>. */
4199
4004
  export interface ReportAssignedChatContactsGetResponseItem extends JsonObject {
4200
4005
  "user_id": string;
4201
- "first_name"?: JsonValue | null;
4202
- "last_name"?: JsonValue | null;
4203
- "email"?: string | null;
4204
- "national_code"?: string | null;
4205
- "phone"?: string | null;
4206
- "gender"?: string | null;
4006
+ "first_name": JsonValue | null;
4007
+ "last_name": JsonValue | null;
4008
+ "email": string | null;
4009
+ "national_code": string | null;
4010
+ "phone": string | null;
4011
+ "gender": string | null;
4207
4012
  "contact_role": string;
4208
4013
  }
4209
4014
  export interface ReportAssignedChatContactsGetResponsePageMeta extends JsonObject {
@@ -4220,19 +4025,19 @@ export interface ReportAssignedChatContactsGetResponse extends ApiEnvelope<Repor
4220
4025
  }
4221
4026
  /** Backend query type: models::AssignedStudentsQuery. */
4222
4027
  export interface ReportAssignedStudentsGetQuery extends QueryParams {
4223
- "page_number"?: number | null;
4224
- "page_size"?: number | null;
4028
+ "page[number]"?: number | null;
4029
+ "page[size]"?: number | null;
4225
4030
  "search"?: string | null;
4226
4031
  }
4227
4032
  /** Backend response type: crate::models::PagedResult<crate::profile::ProfileSummary>. */
4228
4033
  export interface ReportAssignedStudentsGetResponseItem extends JsonObject {
4229
4034
  "user_id": string;
4230
- "first_name"?: JsonValue | null;
4231
- "last_name"?: JsonValue | null;
4232
- "email"?: string | null;
4233
- "national_code"?: string | null;
4234
- "phone"?: string | null;
4235
- "gender"?: string | null;
4035
+ "first_name": JsonValue | null;
4036
+ "last_name": JsonValue | null;
4037
+ "email": string | null;
4038
+ "national_code": string | null;
4039
+ "phone": string | null;
4040
+ "gender": string | null;
4236
4041
  }
4237
4042
  export interface ReportAssignedStudentsGetResponsePageMeta extends JsonObject {
4238
4043
  "page": number;
@@ -4255,31 +4060,31 @@ export interface ReportClassroomsGetQuery extends QueryParams {
4255
4060
  /** Backend response type: Vec<models::ClassroomReport>. */
4256
4061
  export interface ReportClassroomsGetResponseItemTeacherProfile extends JsonObject {
4257
4062
  "user_id": string;
4258
- "first_name"?: JsonValue | null;
4259
- "last_name"?: JsonValue | null;
4260
- "email"?: string | null;
4261
- "national_code"?: string | null;
4262
- "phone"?: string | null;
4263
- "gender"?: string | null;
4063
+ "first_name": JsonValue | null;
4064
+ "last_name": JsonValue | null;
4065
+ "email": string | null;
4066
+ "national_code": string | null;
4067
+ "phone": string | null;
4068
+ "gender": string | null;
4264
4069
  }
4265
4070
  export interface ReportClassroomsGetResponseItemConsultantProfile extends JsonObject {
4266
4071
  "user_id": string;
4267
- "first_name"?: JsonValue | null;
4268
- "last_name"?: JsonValue | null;
4269
- "email"?: string | null;
4270
- "national_code"?: string | null;
4271
- "phone"?: string | null;
4272
- "gender"?: string | null;
4072
+ "first_name": JsonValue | null;
4073
+ "last_name": JsonValue | null;
4074
+ "email": string | null;
4075
+ "national_code": string | null;
4076
+ "phone": string | null;
4077
+ "gender": string | null;
4273
4078
  }
4274
4079
  export interface ReportClassroomsGetResponseItem extends JsonObject {
4275
4080
  "classroom_id": string;
4276
4081
  "course_id": string;
4277
4082
  "name": string;
4278
4083
  "status": string;
4279
- "teacher_user_id"?: string | null;
4280
- "teacher_profile"?: ReportClassroomsGetResponseItemTeacherProfile | null;
4281
- "consultant_user_id"?: string | null;
4282
- "consultant_profile"?: ReportClassroomsGetResponseItemConsultantProfile | null;
4084
+ "teacher_user_id": string | null;
4085
+ "teacher_profile": ReportClassroomsGetResponseItemTeacherProfile | null;
4086
+ "consultant_user_id": string | null;
4087
+ "consultant_profile": ReportClassroomsGetResponseItemConsultantProfile | null;
4283
4088
  "student_count": number;
4284
4089
  "session_count": number;
4285
4090
  "completed_session_count": number;
@@ -4298,16 +4103,16 @@ export interface ReportConsultantsGetQuery extends QueryParams {
4298
4103
  /** Backend response type: Vec<models::ConsultantReport>. */
4299
4104
  export interface ReportConsultantsGetResponseItemConsultantProfile extends JsonObject {
4300
4105
  "user_id": string;
4301
- "first_name"?: JsonValue | null;
4302
- "last_name"?: JsonValue | null;
4303
- "email"?: string | null;
4304
- "national_code"?: string | null;
4305
- "phone"?: string | null;
4306
- "gender"?: string | null;
4106
+ "first_name": JsonValue | null;
4107
+ "last_name": JsonValue | null;
4108
+ "email": string | null;
4109
+ "national_code": string | null;
4110
+ "phone": string | null;
4111
+ "gender": string | null;
4307
4112
  }
4308
4113
  export interface ReportConsultantsGetResponseItem extends JsonObject {
4309
4114
  "consultant_user_id": string;
4310
- "consultant_profile"?: ReportConsultantsGetResponseItemConsultantProfile | null;
4115
+ "consultant_profile": ReportConsultantsGetResponseItemConsultantProfile | null;
4311
4116
  "classroom_count": number;
4312
4117
  "active_classroom_count": number;
4313
4118
  "student_count": number;
@@ -4326,16 +4131,17 @@ export interface ReportCoursesGetQuery extends QueryParams {
4326
4131
  "status"?: string | null;
4327
4132
  }
4328
4133
  /** Backend response type: Vec<models::CourseReport>. */
4329
- export type ReportCoursesGetResponse = import("./types.js").AcademyCoursesResponse;
4134
+ export type ReportCoursesGetResponseData = import("./wire.types.js").LmsCourseReport[];
4135
+ export type ReportCoursesGetResponse = ApiEnvelope<import("./wire.types.js").LmsCourseReport[]>;
4330
4136
  /** Backend response type: Vec<crate::profile::ProfileSummary>. */
4331
4137
  export interface ReportMyStudentsGetResponseItem extends JsonObject {
4332
4138
  "user_id": string;
4333
- "first_name"?: JsonValue | null;
4334
- "last_name"?: JsonValue | null;
4335
- "email"?: string | null;
4336
- "national_code"?: string | null;
4337
- "phone"?: string | null;
4338
- "gender"?: string | null;
4139
+ "first_name": JsonValue | null;
4140
+ "last_name": JsonValue | null;
4141
+ "email": string | null;
4142
+ "national_code": string | null;
4143
+ "phone": string | null;
4144
+ "gender": string | null;
4339
4145
  }
4340
4146
  export interface ReportMyStudentsGetResponse extends ApiEnvelope<ReportMyStudentsGetResponseItem[]> {
4341
4147
  }
@@ -4347,27 +4153,8 @@ export interface ReportStudentSummaryGetQuery extends QueryParams {
4347
4153
  "student_user_id"?: string | null;
4348
4154
  }
4349
4155
  /** Backend response type: models::StudentReport. */
4350
- export interface ReportStudentSummaryGetResponseDataProfile extends JsonObject {
4351
- "user_id": string;
4352
- "first_name"?: JsonValue | null;
4353
- "last_name"?: JsonValue | null;
4354
- "email"?: string | null;
4355
- "national_code"?: string | null;
4356
- "phone"?: string | null;
4357
- "gender"?: string | null;
4358
- }
4359
- export interface ReportStudentSummaryGetResponseData extends JsonObject {
4360
- "courses"?: JsonValue[] | null;
4361
- "user_id": string;
4362
- "profile"?: ReportStudentSummaryGetResponseDataProfile | null;
4363
- "classroom_count": number;
4364
- "session_count": number;
4365
- "attendance_count": number;
4366
- "absence_count": number;
4367
- "attendance_rate": number;
4368
- }
4369
- export interface ReportStudentSummaryGetResponse extends ApiEnvelope<ReportStudentSummaryGetResponseData> {
4370
- }
4156
+ export type ReportStudentSummaryGetResponseData = import("./wire.types.js").LmsStudentReport;
4157
+ export type ReportStudentSummaryGetResponse = ApiEnvelope<import("./wire.types.js").LmsStudentReport>;
4371
4158
  /** Backend query type: models::ReportQuery. */
4372
4159
  export interface ReportStudentsGetQuery extends QueryParams {
4373
4160
  "from"?: string | null;
@@ -4375,27 +4162,8 @@ export interface ReportStudentsGetQuery extends QueryParams {
4375
4162
  "status"?: string | null;
4376
4163
  }
4377
4164
  /** Backend response type: Vec<models::StudentReport>. */
4378
- export interface ReportStudentsGetResponseItemProfile extends JsonObject {
4379
- "user_id": string;
4380
- "first_name"?: JsonValue | null;
4381
- "last_name"?: JsonValue | null;
4382
- "email"?: string | null;
4383
- "national_code"?: string | null;
4384
- "phone"?: string | null;
4385
- "gender"?: string | null;
4386
- }
4387
- export interface ReportStudentsGetResponseItem extends JsonObject {
4388
- "courses"?: JsonValue[] | null;
4389
- "user_id": string;
4390
- "profile"?: ReportStudentsGetResponseItemProfile | null;
4391
- "classroom_count": number;
4392
- "session_count": number;
4393
- "attendance_count": number;
4394
- "absence_count": number;
4395
- "attendance_rate": number;
4396
- }
4397
- export interface ReportStudentsGetResponse extends ApiEnvelope<ReportStudentsGetResponseItem[]> {
4398
- }
4165
+ export type ReportStudentsGetResponseData = import("./wire.types.js").LmsStudentReport[];
4166
+ export type ReportStudentsGetResponse = ApiEnvelope<import("./wire.types.js").LmsStudentReport[]>;
4399
4167
  /** Backend query type: models::ReportQuery. */
4400
4168
  export interface ReportTeachersGetQuery extends QueryParams {
4401
4169
  "from"?: string | null;
@@ -4405,16 +4173,16 @@ export interface ReportTeachersGetQuery extends QueryParams {
4405
4173
  /** Backend response type: Vec<models::TeacherReport>. */
4406
4174
  export interface ReportTeachersGetResponseItemTeacherProfile extends JsonObject {
4407
4175
  "user_id": string;
4408
- "first_name"?: JsonValue | null;
4409
- "last_name"?: JsonValue | null;
4410
- "email"?: string | null;
4411
- "national_code"?: string | null;
4412
- "phone"?: string | null;
4413
- "gender"?: string | null;
4176
+ "first_name": JsonValue | null;
4177
+ "last_name": JsonValue | null;
4178
+ "email": string | null;
4179
+ "national_code": string | null;
4180
+ "phone": string | null;
4181
+ "gender": string | null;
4414
4182
  }
4415
4183
  export interface ReportTeachersGetResponseItem extends JsonObject {
4416
4184
  "teacher_user_id": string;
4417
- "teacher_profile"?: ReportTeachersGetResponseItemTeacherProfile | null;
4185
+ "teacher_profile": ReportTeachersGetResponseItemTeacherProfile | null;
4418
4186
  "classroom_count": number;
4419
4187
  "active_classroom_count": number;
4420
4188
  "student_count": number;
@@ -4437,7 +4205,8 @@ export interface ServiceCheckLicenceGetResponseData extends JsonObject {
4437
4205
  }
4438
4206
  export interface ServiceCheckLicenceGetResponse extends ApiEnvelope<ServiceCheckLicenceGetResponseData> {
4439
4207
  }
4440
- /** Backend response type: api. */
4441
- export interface RouterStatusRouteGetResponse extends ApiEnvelope<JsonValue> {
4442
- }
4208
+ /** Backend response type: HealthResponse. */
4209
+ export type RouterStatusRouteGetResponse = import("@faiber/sdk-core").ServiceHealthResponse;
4210
+ /** Backend response type: HealthResponse. */
4211
+ export type RouterUpGetResponse = import("@faiber/sdk-core").ServiceHealthResponse;
4443
4212
  //# sourceMappingURL=operations.types.d.ts.map