academe-kit 0.3.7 → 0.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,515 @@
1
+ import type { AcademeApiClient } from "./index";
2
+ import type { components } from "../types/academe-api";
3
+ type CreateGroupDto = components["schemas"]["CreateGroupDto"];
4
+ type UpdateGroupDto = components["schemas"]["UpdateGroupDto"];
5
+ type AssignUserToGroupDto = components["schemas"]["AssignUserToGroupDto"];
6
+ export declare function createGroupService(apiClient: AcademeApiClient): {
7
+ /**
8
+ * List all groups
9
+ */
10
+ getAll(): Promise<import("openapi-fetch").FetchResponse<{
11
+ parameters: {
12
+ query?: never;
13
+ header?: never;
14
+ path?: never;
15
+ cookie?: never;
16
+ };
17
+ requestBody?: never;
18
+ responses: {
19
+ 200: {
20
+ headers: {
21
+ [name: string]: unknown;
22
+ };
23
+ content: {
24
+ "application/json": {
25
+ status?: string;
26
+ data?: components["schemas"]["Group"][];
27
+ };
28
+ };
29
+ };
30
+ 401: components["responses"]["Unauthorized"];
31
+ 500: components["responses"]["ServerError"];
32
+ };
33
+ }, import("openapi-fetch").FetchOptions<{
34
+ parameters: {
35
+ query?: never;
36
+ header?: never;
37
+ path?: never;
38
+ cookie?: never;
39
+ };
40
+ requestBody?: never;
41
+ responses: {
42
+ 200: {
43
+ headers: {
44
+ [name: string]: unknown;
45
+ };
46
+ content: {
47
+ "application/json": {
48
+ status?: string;
49
+ data?: components["schemas"]["Group"][];
50
+ };
51
+ };
52
+ };
53
+ 401: components["responses"]["Unauthorized"];
54
+ 500: components["responses"]["ServerError"];
55
+ };
56
+ }> | undefined, `${string}/${string}`>>;
57
+ /**
58
+ * Get group by ID
59
+ */
60
+ getById(id: string): Promise<import("openapi-fetch").FetchResponse<{
61
+ parameters: {
62
+ query?: never;
63
+ header?: never;
64
+ path: {
65
+ id: components["parameters"]["id"];
66
+ };
67
+ cookie?: never;
68
+ };
69
+ requestBody?: never;
70
+ responses: {
71
+ 200: {
72
+ headers: {
73
+ [name: string]: unknown;
74
+ };
75
+ content: {
76
+ "application/json": {
77
+ status?: string;
78
+ data?: components["schemas"]["Group"];
79
+ };
80
+ };
81
+ };
82
+ 400: components["responses"]["BadRequest"];
83
+ 401: components["responses"]["Unauthorized"];
84
+ 404: components["responses"]["NotFound"];
85
+ 500: components["responses"]["ServerError"];
86
+ };
87
+ }, {
88
+ params: {
89
+ path: {
90
+ id: string;
91
+ };
92
+ };
93
+ }, `${string}/${string}`>>;
94
+ /**
95
+ * Create a new group
96
+ */
97
+ create(data: CreateGroupDto): Promise<import("openapi-fetch").FetchResponse<{
98
+ parameters: {
99
+ query?: never;
100
+ header?: never;
101
+ path?: never;
102
+ cookie?: never;
103
+ };
104
+ requestBody: {
105
+ content: {
106
+ "application/json": {
107
+ name: string;
108
+ isDefault?: boolean;
109
+ type?: "student" | "teacher" | "school-director" | "other";
110
+ };
111
+ };
112
+ };
113
+ responses: {
114
+ 201: {
115
+ headers: {
116
+ [name: string]: unknown;
117
+ };
118
+ content: {
119
+ "application/json": {
120
+ status?: string;
121
+ data?: components["schemas"]["Group"];
122
+ message?: string;
123
+ };
124
+ };
125
+ };
126
+ 400: components["responses"]["BadRequest"];
127
+ 401: components["responses"]["Unauthorized"];
128
+ 409: {
129
+ headers: {
130
+ [name: string]: unknown;
131
+ };
132
+ content: {
133
+ "application/json": components["schemas"]["Error"];
134
+ };
135
+ };
136
+ 500: components["responses"]["ServerError"];
137
+ };
138
+ }, {
139
+ body: {
140
+ name: string;
141
+ isDefault: boolean;
142
+ type: "student" | "teacher" | "school-director" | "other";
143
+ };
144
+ }, `${string}/${string}`>>;
145
+ /**
146
+ * Update group
147
+ */
148
+ update(id: string, data: UpdateGroupDto): Promise<import("openapi-fetch").FetchResponse<{
149
+ parameters: {
150
+ query?: never;
151
+ header?: never;
152
+ path: {
153
+ id: components["parameters"]["id"];
154
+ };
155
+ cookie?: never;
156
+ };
157
+ requestBody: {
158
+ content: {
159
+ "application/json": {
160
+ name?: string;
161
+ isDefault?: boolean;
162
+ type?: "student" | "teacher" | "school-director" | "other";
163
+ };
164
+ };
165
+ };
166
+ responses: {
167
+ 200: {
168
+ headers: {
169
+ [name: string]: unknown;
170
+ };
171
+ content: {
172
+ "application/json": {
173
+ status?: string;
174
+ data?: components["schemas"]["Group"];
175
+ message?: string;
176
+ };
177
+ };
178
+ };
179
+ 400: components["responses"]["BadRequest"];
180
+ 401: components["responses"]["Unauthorized"];
181
+ 404: components["responses"]["NotFound"];
182
+ 500: components["responses"]["ServerError"];
183
+ };
184
+ }, {
185
+ params: {
186
+ path: {
187
+ id: string;
188
+ };
189
+ };
190
+ body: {
191
+ name?: string;
192
+ isDefault?: boolean;
193
+ type?: "student" | "teacher" | "school-director" | "other";
194
+ };
195
+ }, `${string}/${string}`>>;
196
+ /**
197
+ * Delete group
198
+ */
199
+ delete(id: string): Promise<import("openapi-fetch").FetchResponse<{
200
+ parameters: {
201
+ query?: never;
202
+ header?: never;
203
+ path: {
204
+ id: components["parameters"]["id"];
205
+ };
206
+ cookie?: never;
207
+ };
208
+ requestBody?: never;
209
+ responses: {
210
+ 200: {
211
+ headers: {
212
+ [name: string]: unknown;
213
+ };
214
+ content: {
215
+ "application/json": {
216
+ status?: string;
217
+ message?: string;
218
+ };
219
+ };
220
+ };
221
+ 400: components["responses"]["BadRequest"];
222
+ 401: components["responses"]["Unauthorized"];
223
+ 404: components["responses"]["NotFound"];
224
+ 500: components["responses"]["ServerError"];
225
+ };
226
+ }, {
227
+ params: {
228
+ path: {
229
+ id: string;
230
+ };
231
+ };
232
+ }, `${string}/${string}`>>;
233
+ /**
234
+ * Get group users
235
+ */
236
+ getUsers(id: string): Promise<import("openapi-fetch").FetchResponse<{
237
+ parameters: {
238
+ query?: never;
239
+ header?: never;
240
+ path: {
241
+ id: components["parameters"]["id"];
242
+ };
243
+ cookie?: never;
244
+ };
245
+ requestBody?: never;
246
+ responses: {
247
+ 200: {
248
+ headers: {
249
+ [name: string]: unknown;
250
+ };
251
+ content: {
252
+ "application/json": {
253
+ status?: string;
254
+ data?: components["schemas"]["User"][];
255
+ };
256
+ };
257
+ };
258
+ 400: components["responses"]["BadRequest"];
259
+ 401: components["responses"]["Unauthorized"];
260
+ 404: components["responses"]["NotFound"];
261
+ 500: components["responses"]["ServerError"];
262
+ };
263
+ }, {
264
+ params: {
265
+ path: {
266
+ id: string;
267
+ };
268
+ };
269
+ }, `${string}/${string}`>>;
270
+ /**
271
+ * Get group roles
272
+ */
273
+ getRoles(id: string): Promise<import("openapi-fetch").FetchResponse<{
274
+ parameters: {
275
+ query?: never;
276
+ header?: never;
277
+ path: {
278
+ id: components["parameters"]["id"];
279
+ };
280
+ cookie?: never;
281
+ };
282
+ requestBody?: never;
283
+ responses: {
284
+ 200: {
285
+ headers: {
286
+ [name: string]: unknown;
287
+ };
288
+ content: {
289
+ "application/json": {
290
+ status?: string;
291
+ data?: components["schemas"]["Role"][];
292
+ };
293
+ };
294
+ };
295
+ 400: components["responses"]["BadRequest"];
296
+ 401: components["responses"]["Unauthorized"];
297
+ 404: components["responses"]["NotFound"];
298
+ 500: components["responses"]["ServerError"];
299
+ };
300
+ }, {
301
+ params: {
302
+ path: {
303
+ id: string;
304
+ };
305
+ };
306
+ }, `${string}/${string}`>>;
307
+ /**
308
+ * Assign user to group
309
+ */
310
+ assignUser(data: AssignUserToGroupDto): Promise<import("openapi-fetch").FetchResponse<{
311
+ parameters: {
312
+ query?: never;
313
+ header?: never;
314
+ path?: never;
315
+ cookie?: never;
316
+ };
317
+ requestBody: {
318
+ content: {
319
+ "application/json": components["schemas"]["AssignUserToGroupDto"];
320
+ };
321
+ };
322
+ responses: {
323
+ 200: {
324
+ headers: {
325
+ [name: string]: unknown;
326
+ };
327
+ content: {
328
+ "application/json": {
329
+ status?: string;
330
+ message?: string;
331
+ };
332
+ };
333
+ };
334
+ 400: components["responses"]["BadRequest"];
335
+ 401: components["responses"]["Unauthorized"];
336
+ 404: components["responses"]["NotFound"];
337
+ 500: components["responses"]["ServerError"];
338
+ };
339
+ }, {
340
+ body: {
341
+ userId: string;
342
+ groupId: string;
343
+ assignedBy?: string;
344
+ };
345
+ }, `${string}/${string}`>>;
346
+ /**
347
+ * Remove user from group
348
+ */
349
+ removeUser(groupId: string, userId: string): Promise<import("openapi-fetch").FetchResponse<{
350
+ parameters: {
351
+ query?: never;
352
+ header?: never;
353
+ path: {
354
+ groupId: string;
355
+ userId: string;
356
+ };
357
+ cookie?: never;
358
+ };
359
+ requestBody?: never;
360
+ responses: {
361
+ 200: {
362
+ headers: {
363
+ [name: string]: unknown;
364
+ };
365
+ content: {
366
+ "application/json": {
367
+ status?: string;
368
+ message?: string;
369
+ };
370
+ };
371
+ };
372
+ 400: components["responses"]["BadRequest"];
373
+ 401: components["responses"]["Unauthorized"];
374
+ 404: components["responses"]["NotFound"];
375
+ 500: components["responses"]["ServerError"];
376
+ };
377
+ }, {
378
+ params: {
379
+ path: {
380
+ groupId: string;
381
+ userId: string;
382
+ };
383
+ };
384
+ }, `${string}/${string}`>>;
385
+ /**
386
+ * Assign role to group
387
+ */
388
+ assignRole(groupId: string, roleId: string): Promise<import("openapi-fetch").FetchResponse<{
389
+ parameters: {
390
+ query?: never;
391
+ header?: never;
392
+ path?: never;
393
+ cookie?: never;
394
+ };
395
+ requestBody: {
396
+ content: {
397
+ "application/json": {
398
+ groupId: string;
399
+ roleId: string;
400
+ };
401
+ };
402
+ };
403
+ responses: {
404
+ 201: {
405
+ headers: {
406
+ [name: string]: unknown;
407
+ };
408
+ content: {
409
+ "application/json": {
410
+ status?: string;
411
+ message?: string;
412
+ };
413
+ };
414
+ };
415
+ 400: components["responses"]["BadRequest"];
416
+ 401: components["responses"]["Unauthorized"];
417
+ 500: components["responses"]["ServerError"];
418
+ };
419
+ }, {
420
+ body: {
421
+ groupId: string;
422
+ roleId: string;
423
+ };
424
+ }, `${string}/${string}`>>;
425
+ /**
426
+ * Delete group role
427
+ */
428
+ deleteRole(id: string): Promise<import("openapi-fetch").FetchResponse<{
429
+ parameters: {
430
+ query?: never;
431
+ header?: never;
432
+ path: {
433
+ id: components["parameters"]["id"];
434
+ };
435
+ cookie?: never;
436
+ };
437
+ requestBody?: never;
438
+ responses: {
439
+ 200: {
440
+ headers: {
441
+ [name: string]: unknown;
442
+ };
443
+ content: {
444
+ "application/json": {
445
+ status?: string;
446
+ message?: string;
447
+ };
448
+ };
449
+ };
450
+ 400: components["responses"]["BadRequest"];
451
+ 401: components["responses"]["Unauthorized"];
452
+ 404: components["responses"]["NotFound"];
453
+ 500: components["responses"]["ServerError"];
454
+ };
455
+ }, {
456
+ params: {
457
+ path: {
458
+ id: string;
459
+ };
460
+ };
461
+ }, `${string}/${string}`>>;
462
+ /**
463
+ * Update group role
464
+ */
465
+ updateRole(id: string, data: {
466
+ groupId?: string;
467
+ roleId?: string;
468
+ }): Promise<import("openapi-fetch").FetchResponse<{
469
+ parameters: {
470
+ query?: never;
471
+ header?: never;
472
+ path: {
473
+ id: components["parameters"]["id"];
474
+ };
475
+ cookie?: never;
476
+ };
477
+ requestBody: {
478
+ content: {
479
+ "application/json": {
480
+ groupId?: string;
481
+ roleId?: string;
482
+ };
483
+ };
484
+ };
485
+ responses: {
486
+ 200: {
487
+ headers: {
488
+ [name: string]: unknown;
489
+ };
490
+ content: {
491
+ "application/json": {
492
+ status?: string;
493
+ message?: string;
494
+ };
495
+ };
496
+ };
497
+ 400: components["responses"]["BadRequest"];
498
+ 401: components["responses"]["Unauthorized"];
499
+ 404: components["responses"]["NotFound"];
500
+ 500: components["responses"]["ServerError"];
501
+ };
502
+ }, {
503
+ params: {
504
+ path: {
505
+ id: string;
506
+ };
507
+ };
508
+ body: {
509
+ groupId?: string;
510
+ roleId?: string;
511
+ };
512
+ }, `${string}/${string}`>>;
513
+ };
514
+ export type GroupService = ReturnType<typeof createGroupService>;
515
+ export {};
@@ -1,13 +1,13 @@
1
- import type { AcademeApiClient } from './index';
2
- import type { components, paths } from '../types/academe-api';
3
- type CreateInstitutionGroupDto = components['schemas']['CreateInstitutionGroupDto'];
4
- type UpdateInstitutionGroupDto = components['schemas']['UpdateInstitutionGroupDto'];
5
- type CreateInstitutionClassroomDto = components['schemas']['CreateInstitutionClassroomDto'];
6
- type UpdateInstitutionClassroomDto = components['schemas']['UpdateInstitutionClassroomDto'];
7
- type CreateInstitutionRegistrationDto = components['schemas']['CreateInstitutionRegistrationDto'];
8
- type UpdateInstitutionRegistrationDto = components['schemas']['UpdateInstitutionRegistrationDto'];
9
- type AssignClassroomDto = components['schemas']['AssignClassroomDto'];
10
- type GetInstitutionUsersQuery = paths['/institutions/{institutionId}/users']['get']['parameters']['query'];
1
+ import type { AcademeApiClient } from "./index";
2
+ import type { components, paths } from "../types/academe-api";
3
+ type CreateSeatsDto = components["schemas"]["CreateSeatsDto"];
4
+ type UpdateSeatsDto = components["schemas"]["UpdateSeatsDto"];
5
+ type CreateInstitutionClassroomDto = components["schemas"]["CreateInstitutionClassroomDto"];
6
+ type UpdateInstitutionClassroomDto = components["schemas"]["UpdateInstitutionClassroomDto"];
7
+ type CreateInstitutionRegistrationDto = components["schemas"]["CreateInstitutionRegistrationDto"];
8
+ type UpdateInstitutionRegistrationDto = components["schemas"]["UpdateInstitutionRegistrationDto"];
9
+ type AssignClassroomDto = components["schemas"]["AssignClassroomDto"];
10
+ type GetInstitutionUsersQuery = paths["/institutions/{institutionId}/users"]["get"]["parameters"]["query"];
11
11
  export declare function createInstitutionService(apiClient: AcademeApiClient): {
12
12
  getAll(): Promise<import("openapi-fetch").FetchResponse<{
13
13
  parameters: {
@@ -118,7 +118,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
118
118
  };
119
119
  };
120
120
  }, `${string}/${string}`>>;
121
- getGroups(institutionId: string): Promise<import("openapi-fetch").FetchResponse<{
121
+ getSeats(institutionId: string): Promise<import("openapi-fetch").FetchResponse<{
122
122
  parameters: {
123
123
  query?: never;
124
124
  header?: never;
@@ -136,7 +136,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
136
136
  content: {
137
137
  "application/json": {
138
138
  status?: string;
139
- data?: components["schemas"]["InstitutionGroup"][];
139
+ data?: components["schemas"]["Seats"][];
140
140
  };
141
141
  };
142
142
  };
@@ -151,7 +151,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
151
151
  };
152
152
  };
153
153
  }, `${string}/${string}`>>;
154
- addGroup(institutionId: string, data: CreateInstitutionGroupDto): Promise<import("openapi-fetch").FetchResponse<{
154
+ addSeats(institutionId: string, data: CreateSeatsDto): Promise<import("openapi-fetch").FetchResponse<{
155
155
  parameters: {
156
156
  query?: never;
157
157
  header?: never;
@@ -162,7 +162,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
162
162
  };
163
163
  requestBody: {
164
164
  content: {
165
- "application/json": components["schemas"]["CreateInstitutionGroupDto"];
165
+ "application/json": components["schemas"]["CreateSeatsDto"];
166
166
  };
167
167
  };
168
168
  responses: {
@@ -173,7 +173,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
173
173
  content: {
174
174
  "application/json": {
175
175
  status?: string;
176
- data?: components["schemas"]["InstitutionGroup"];
176
+ data?: components["schemas"]["Seats"];
177
177
  };
178
178
  };
179
179
  };
@@ -191,10 +191,11 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
191
191
  };
192
192
  body: {
193
193
  groupId: string;
194
+ productId: string;
194
195
  availableQuantity: number;
195
196
  };
196
197
  }, `${string}/${string}`>>;
197
- removeGroup(institutionId: string, groupId: string): Promise<import("openapi-fetch").FetchResponse<{
198
+ removeSeats(institutionId: string, groupId: string): Promise<import("openapi-fetch").FetchResponse<{
198
199
  parameters: {
199
200
  query?: never;
200
201
  header?: never;
@@ -225,7 +226,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
225
226
  };
226
227
  };
227
228
  }, `${string}/${string}`>>;
228
- updateGroup(institutionId: string, groupId: string, data: UpdateInstitutionGroupDto): Promise<import("openapi-fetch").FetchResponse<{
229
+ updateSeats(institutionId: string, groupId: string, data: UpdateSeatsDto): Promise<import("openapi-fetch").FetchResponse<{
229
230
  parameters: {
230
231
  query?: never;
231
232
  header?: never;
@@ -237,7 +238,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
237
238
  };
238
239
  requestBody: {
239
240
  content: {
240
- "application/json": components["schemas"]["UpdateInstitutionGroupDto"];
241
+ "application/json": components["schemas"]["UpdateSeatsDto"];
241
242
  };
242
243
  };
243
244
  responses: {
@@ -248,7 +249,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
248
249
  content: {
249
250
  "application/json": {
250
251
  status?: string;
251
- data?: components["schemas"]["InstitutionGroup"];
252
+ data?: components["schemas"]["Seats"];
252
253
  };
253
254
  };
254
255
  };
@@ -471,6 +472,9 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
471
472
  hasCertificates?: boolean;
472
473
  hasGuardian?: boolean;
473
474
  search?: string;
475
+ startDate?: string;
476
+ endDate?: string;
477
+ seatId?: string;
474
478
  page?: number;
475
479
  limit?: number;
476
480
  };
@@ -507,6 +511,9 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
507
511
  hasCertificates?: boolean;
508
512
  hasGuardian?: boolean;
509
513
  search?: string;
514
+ startDate?: string;
515
+ endDate?: string;
516
+ seatId?: string;
510
517
  page?: number;
511
518
  limit?: number;
512
519
  } | undefined;
@@ -655,6 +662,7 @@ export declare function createInstitutionService(apiClient: AcademeApiClient): {
655
662
  };
656
663
  body: {
657
664
  userId: string;
665
+ seatCode: string;
658
666
  institutionClassroomId?: string | null;
659
667
  isActive: boolean;
660
668
  };