@unisource/sdk 0.1.2 → 0.3.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.
package/dist/index.d.mts CHANGED
@@ -1,6 +1,9 @@
1
1
  import { z } from "zod";
2
2
 
3
- //#region src/index.d.ts
3
+ //#region src/primitives.d.ts
4
+ declare const nonEmptyString: z.ZodString;
5
+ declare const positiveInt: z.ZodNumber;
6
+ declare const unixTimestamp: z.ZodNumber;
4
7
  declare const FILES_DEFAULT_LIMIT = 25;
5
8
  declare const FILES_MAX_LIMIT = 100;
6
9
  declare const uploadDestinationSchema: z.ZodEnum<{
@@ -19,11 +22,14 @@ declare const apiErrorSchema: z.ZodObject<{
19
22
  message: z.ZodString;
20
23
  }, z.core.$strip>;
21
24
  type ApiError = z.infer<typeof apiErrorSchema>;
25
+ //#endregion
26
+ //#region src/uploads.d.ts
22
27
  declare const uploadR2InitRequestSchema: z.ZodObject<{
23
28
  filename: z.ZodString;
24
29
  size: z.ZodNumber;
25
30
  mime_type: z.ZodString;
26
- bucket: z.ZodOptional<z.ZodString>;
31
+ folder_id: z.ZodOptional<z.ZodString>;
32
+ is_main_storage: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
27
33
  }, z.core.$strip>;
28
34
  type UploadR2InitRequest = z.infer<typeof uploadR2InitRequestSchema>;
29
35
  declare const uploadR2InitResponseSchema: z.ZodObject<{
@@ -39,6 +45,8 @@ declare const uploadAppwriteInitRequestSchema: z.ZodObject<{
39
45
  filename: z.ZodString;
40
46
  size: z.ZodNumber;
41
47
  mime_type: z.ZodString;
48
+ folder_id: z.ZodOptional<z.ZodString>;
49
+ is_main_storage: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
42
50
  }, z.core.$strip>;
43
51
  type UploadAppwriteInitRequest = z.infer<typeof uploadAppwriteInitRequestSchema>;
44
52
  declare const uploadAppwriteInitResponseSchema: z.ZodObject<{
@@ -53,6 +61,7 @@ declare const uploadAppwriteInitResponseSchema: z.ZodObject<{
53
61
  type UploadAppwriteInitResponse = z.infer<typeof uploadAppwriteInitResponseSchema>;
54
62
  declare const uploadLifecycleRequestSchema: z.ZodObject<{
55
63
  upload_id: z.ZodString;
64
+ is_main_storage: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
56
65
  }, z.core.$strip>;
57
66
  type UploadLifecycleRequest = z.infer<typeof uploadLifecycleRequestSchema>;
58
67
  declare const uploadCompleteResponseSchema: z.ZodObject<{
@@ -67,8 +76,11 @@ declare const uploadFailResponseSchema: z.ZodObject<{
67
76
  status: z.ZodLiteral<"failed">;
68
77
  }, z.core.$strip>;
69
78
  type UploadFailResponse = z.infer<typeof uploadFailResponseSchema>;
70
- declare const fileRecordSchema: z.ZodObject<{
79
+ /** Raw upload record — returned by admin `/files` endpoints. */
80
+ declare const uploadRecordSchema: z.ZodObject<{
71
81
  id: z.ZodString;
82
+ service_id: z.ZodString;
83
+ user_id: z.ZodNullable<z.ZodString>;
72
84
  filename: z.ZodString;
73
85
  size: z.ZodNumber;
74
86
  mime_type: z.ZodString;
@@ -76,8 +88,6 @@ declare const fileRecordSchema: z.ZodObject<{
76
88
  appwrite: "appwrite";
77
89
  r2: "r2";
78
90
  }>;
79
- storage_key: z.ZodString;
80
- bucket: z.ZodString;
81
91
  status: z.ZodEnum<{
82
92
  completed: "completed";
83
93
  failed: "failed";
@@ -87,24 +97,12 @@ declare const fileRecordSchema: z.ZodObject<{
87
97
  created_at: z.ZodNumber;
88
98
  updated_at: z.ZodNumber;
89
99
  }, z.core.$strip>;
90
- type FileRecord = z.infer<typeof fileRecordSchema>;
91
- declare const filesListQuerySchema: z.ZodObject<{
92
- limit: z.ZodOptional<z.ZodNumber>;
93
- cursor: z.ZodOptional<z.ZodString>;
94
- destination: z.ZodOptional<z.ZodEnum<{
95
- appwrite: "appwrite";
96
- r2: "r2";
97
- }>>;
98
- status: z.ZodOptional<z.ZodEnum<{
99
- completed: "completed";
100
- failed: "failed";
101
- pending: "pending";
102
- }>>;
103
- }, z.core.$strip>;
104
- type FilesListQuery = z.infer<typeof filesListQuerySchema>;
105
- declare const filesListResponseSchema: z.ZodObject<{
100
+ type UploadRecord = z.infer<typeof uploadRecordSchema>;
101
+ declare const uploadsListResponseSchema: z.ZodObject<{
106
102
  items: z.ZodArray<z.ZodObject<{
107
103
  id: z.ZodString;
104
+ service_id: z.ZodString;
105
+ user_id: z.ZodNullable<z.ZodString>;
108
106
  filename: z.ZodString;
109
107
  size: z.ZodNumber;
110
108
  mime_type: z.ZodString;
@@ -112,8 +110,6 @@ declare const filesListResponseSchema: z.ZodObject<{
112
110
  appwrite: "appwrite";
113
111
  r2: "r2";
114
112
  }>;
115
- storage_key: z.ZodString;
116
- bucket: z.ZodString;
117
113
  status: z.ZodEnum<{
118
114
  completed: "completed";
119
115
  failed: "failed";
@@ -126,10 +122,12 @@ declare const filesListResponseSchema: z.ZodObject<{
126
122
  next_cursor: z.ZodNullable<z.ZodString>;
127
123
  limit: z.ZodNumber;
128
124
  }, z.core.$strip>;
129
- type FilesListResponse = z.infer<typeof filesListResponseSchema>;
130
- declare const fileDetailsResponseSchema: z.ZodObject<{
131
- file: z.ZodObject<{
125
+ type UploadsListResponse = z.infer<typeof uploadsListResponseSchema>;
126
+ declare const uploadRecordDetailResponseSchema: z.ZodObject<{
127
+ upload: z.ZodObject<{
132
128
  id: z.ZodString;
129
+ service_id: z.ZodString;
130
+ user_id: z.ZodNullable<z.ZodString>;
133
131
  filename: z.ZodString;
134
132
  size: z.ZodNumber;
135
133
  mime_type: z.ZodString;
@@ -137,8 +135,6 @@ declare const fileDetailsResponseSchema: z.ZodObject<{
137
135
  appwrite: "appwrite";
138
136
  r2: "r2";
139
137
  }>;
140
- storage_key: z.ZodString;
141
- bucket: z.ZodString;
142
138
  status: z.ZodEnum<{
143
139
  completed: "completed";
144
140
  failed: "failed";
@@ -149,7 +145,87 @@ declare const fileDetailsResponseSchema: z.ZodObject<{
149
145
  updated_at: z.ZodNumber;
150
146
  }, z.core.$strip>;
151
147
  }, z.core.$strip>;
152
- type FileDetailsResponse = z.infer<typeof fileDetailsResponseSchema>;
148
+ type UploadRecordDetailResponse = z.infer<typeof uploadRecordDetailResponseSchema>;
149
+ //#endregion
150
+ //#region src/fileRecords.d.ts
151
+ /**
152
+ * A confirmed file record owned by a user.
153
+ * Internal fields (storage_key, bucket) are intentionally excluded from the public API.
154
+ */
155
+ declare const fileRecordSchema: z.ZodObject<{
156
+ id: z.ZodString;
157
+ service_id: z.ZodString;
158
+ user_id: z.ZodString;
159
+ folder_id: z.ZodNullable<z.ZodString>;
160
+ upload_id: z.ZodNullable<z.ZodString>;
161
+ filename: z.ZodString;
162
+ size: z.ZodNumber;
163
+ mime_type: z.ZodString;
164
+ storage_destination: z.ZodEnum<{
165
+ appwrite: "appwrite";
166
+ r2: "r2";
167
+ }>;
168
+ is_trashed: z.ZodBoolean;
169
+ trashed_at: z.ZodNullable<z.ZodNumber>;
170
+ created_at: z.ZodNumber;
171
+ updated_at: z.ZodNumber;
172
+ }, z.core.$strip>;
173
+ type FileRecord = z.infer<typeof fileRecordSchema>;
174
+ declare const fileRecordsListQuerySchema: z.ZodObject<{
175
+ folder_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
176
+ is_trashed: z.ZodOptional<z.ZodBoolean>;
177
+ cursor: z.ZodOptional<z.ZodString>;
178
+ limit: z.ZodOptional<z.ZodNumber>;
179
+ }, z.core.$strip>;
180
+ type FileRecordsListQuery = z.infer<typeof fileRecordsListQuerySchema>;
181
+ declare const fileRecordsListResponseSchema: z.ZodObject<{
182
+ items: z.ZodArray<z.ZodObject<{
183
+ id: z.ZodString;
184
+ service_id: z.ZodString;
185
+ user_id: z.ZodString;
186
+ folder_id: z.ZodNullable<z.ZodString>;
187
+ upload_id: z.ZodNullable<z.ZodString>;
188
+ filename: z.ZodString;
189
+ size: z.ZodNumber;
190
+ mime_type: z.ZodString;
191
+ storage_destination: z.ZodEnum<{
192
+ appwrite: "appwrite";
193
+ r2: "r2";
194
+ }>;
195
+ is_trashed: z.ZodBoolean;
196
+ trashed_at: z.ZodNullable<z.ZodNumber>;
197
+ created_at: z.ZodNumber;
198
+ updated_at: z.ZodNumber;
199
+ }, z.core.$strip>>;
200
+ next_cursor: z.ZodNullable<z.ZodString>;
201
+ limit: z.ZodNumber;
202
+ }, z.core.$strip>;
203
+ type FileRecordsListResponse = z.infer<typeof fileRecordsListResponseSchema>;
204
+ declare const fileRecordDetailResponseSchema: z.ZodObject<{
205
+ file: z.ZodObject<{
206
+ id: z.ZodString;
207
+ service_id: z.ZodString;
208
+ user_id: z.ZodString;
209
+ folder_id: z.ZodNullable<z.ZodString>;
210
+ upload_id: z.ZodNullable<z.ZodString>;
211
+ filename: z.ZodString;
212
+ size: z.ZodNumber;
213
+ mime_type: z.ZodString;
214
+ storage_destination: z.ZodEnum<{
215
+ appwrite: "appwrite";
216
+ r2: "r2";
217
+ }>;
218
+ is_trashed: z.ZodBoolean;
219
+ trashed_at: z.ZodNullable<z.ZodNumber>;
220
+ created_at: z.ZodNumber;
221
+ updated_at: z.ZodNumber;
222
+ }, z.core.$strip>;
223
+ }, z.core.$strip>;
224
+ type FileRecordDetailResponse = z.infer<typeof fileRecordDetailResponseSchema>;
225
+ declare const fileMoveRequestSchema: z.ZodObject<{
226
+ folder_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
227
+ }, z.core.$strip>;
228
+ type FileMoveRequest = z.infer<typeof fileMoveRequestSchema>;
153
229
  declare const fileDownloadUrlResponseSchema: z.ZodObject<{
154
230
  upload_id: z.ZodString;
155
231
  destination: z.ZodEnum<{
@@ -162,13 +238,780 @@ declare const fileDownloadUrlResponseSchema: z.ZodObject<{
162
238
  type FileDownloadUrlResponse = z.infer<typeof fileDownloadUrlResponseSchema>;
163
239
  declare const fileDeleteResponseSchema: z.ZodObject<{
164
240
  success: z.ZodLiteral<true>;
165
- upload_id: z.ZodString;
166
- destination: z.ZodEnum<{
167
- appwrite: "appwrite";
168
- r2: "r2";
169
- }>;
170
- storage_not_found: z.ZodBoolean;
241
+ id: z.ZodString;
242
+ permanent: z.ZodBoolean;
171
243
  }, z.core.$strip>;
172
244
  type FileDeleteResponse = z.infer<typeof fileDeleteResponseSchema>;
245
+ declare const fileRestoreResponseSchema: z.ZodObject<{
246
+ success: z.ZodLiteral<true>;
247
+ id: z.ZodString;
248
+ }, z.core.$strip>;
249
+ type FileRestoreResponse = z.infer<typeof fileRestoreResponseSchema>;
250
+ declare const fileUpdateRequestSchema: z.ZodObject<{
251
+ filename: z.ZodString;
252
+ }, z.core.$strip>;
253
+ type FileUpdateRequest = z.infer<typeof fileUpdateRequestSchema>;
254
+ declare const fileUpdateResponseSchema: z.ZodObject<{
255
+ file: z.ZodObject<{
256
+ id: z.ZodString;
257
+ service_id: z.ZodString;
258
+ user_id: z.ZodString;
259
+ folder_id: z.ZodNullable<z.ZodString>;
260
+ upload_id: z.ZodNullable<z.ZodString>;
261
+ filename: z.ZodString;
262
+ size: z.ZodNumber;
263
+ mime_type: z.ZodString;
264
+ storage_destination: z.ZodEnum<{
265
+ appwrite: "appwrite";
266
+ r2: "r2";
267
+ }>;
268
+ is_trashed: z.ZodBoolean;
269
+ trashed_at: z.ZodNullable<z.ZodNumber>;
270
+ created_at: z.ZodNumber;
271
+ updated_at: z.ZodNumber;
272
+ }, z.core.$strip>;
273
+ }, z.core.$strip>;
274
+ type FileUpdateResponse = z.infer<typeof fileUpdateResponseSchema>;
275
+ //#endregion
276
+ //#region src/folders.d.ts
277
+ declare const folderSchema: z.ZodObject<{
278
+ id: z.ZodString;
279
+ service_id: z.ZodString;
280
+ user_id: z.ZodString;
281
+ parent_id: z.ZodNullable<z.ZodString>;
282
+ name: z.ZodString;
283
+ color_tag: z.ZodNullable<z.ZodString>;
284
+ is_trashed: z.ZodBoolean;
285
+ trashed_at: z.ZodNullable<z.ZodNumber>;
286
+ created_at: z.ZodNumber;
287
+ updated_at: z.ZodNumber;
288
+ }, z.core.$strip>;
289
+ type Folder = z.infer<typeof folderSchema>;
290
+ declare const folderListQuerySchema: z.ZodObject<{
291
+ parent_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
292
+ trashed: z.ZodOptional<z.ZodBoolean>;
293
+ is_trashed: z.ZodOptional<z.ZodBoolean>;
294
+ cursor: z.ZodOptional<z.ZodString>;
295
+ limit: z.ZodOptional<z.ZodNumber>;
296
+ }, z.core.$strip>;
297
+ type FolderListQuery = z.infer<typeof folderListQuerySchema>;
298
+ declare const folderListResponseSchema: z.ZodObject<{
299
+ items: z.ZodArray<z.ZodObject<{
300
+ id: z.ZodString;
301
+ service_id: z.ZodString;
302
+ user_id: z.ZodString;
303
+ parent_id: z.ZodNullable<z.ZodString>;
304
+ name: z.ZodString;
305
+ color_tag: z.ZodNullable<z.ZodString>;
306
+ is_trashed: z.ZodBoolean;
307
+ trashed_at: z.ZodNullable<z.ZodNumber>;
308
+ created_at: z.ZodNumber;
309
+ updated_at: z.ZodNumber;
310
+ }, z.core.$strip>>;
311
+ next_cursor: z.ZodNullable<z.ZodString>;
312
+ limit: z.ZodNumber;
313
+ }, z.core.$strip>;
314
+ type FolderListResponse = z.infer<typeof folderListResponseSchema>;
315
+ declare const folderCreateRequestSchema: z.ZodObject<{
316
+ name: z.ZodString;
317
+ parent_id: z.ZodOptional<z.ZodString>;
318
+ color_tag: z.ZodOptional<z.ZodString>;
319
+ }, z.core.$strip>;
320
+ type FolderCreateRequest = z.infer<typeof folderCreateRequestSchema>;
321
+ declare const folderCreateResponseSchema: z.ZodObject<{
322
+ folder: z.ZodObject<{
323
+ id: z.ZodString;
324
+ service_id: z.ZodString;
325
+ user_id: z.ZodString;
326
+ parent_id: z.ZodNullable<z.ZodString>;
327
+ name: z.ZodString;
328
+ color_tag: z.ZodNullable<z.ZodString>;
329
+ is_trashed: z.ZodBoolean;
330
+ trashed_at: z.ZodNullable<z.ZodNumber>;
331
+ created_at: z.ZodNumber;
332
+ updated_at: z.ZodNumber;
333
+ }, z.core.$strip>;
334
+ }, z.core.$strip>;
335
+ type FolderCreateResponse = z.infer<typeof folderCreateResponseSchema>;
336
+ declare const folderUpdateRequestSchema: z.ZodObject<{
337
+ name: z.ZodOptional<z.ZodString>;
338
+ color_tag: z.ZodOptional<z.ZodNullable<z.ZodString>>;
339
+ }, z.core.$strip>;
340
+ type FolderUpdateRequest = z.infer<typeof folderUpdateRequestSchema>;
341
+ declare const folderUpdateResponseSchema: z.ZodObject<{
342
+ folder: z.ZodObject<{
343
+ id: z.ZodString;
344
+ service_id: z.ZodString;
345
+ user_id: z.ZodString;
346
+ parent_id: z.ZodNullable<z.ZodString>;
347
+ name: z.ZodString;
348
+ color_tag: z.ZodNullable<z.ZodString>;
349
+ is_trashed: z.ZodBoolean;
350
+ trashed_at: z.ZodNullable<z.ZodNumber>;
351
+ created_at: z.ZodNumber;
352
+ updated_at: z.ZodNumber;
353
+ }, z.core.$strip>;
354
+ }, z.core.$strip>;
355
+ type FolderUpdateResponse = z.infer<typeof folderUpdateResponseSchema>;
356
+ declare const folderDeleteResponseSchema: z.ZodObject<{
357
+ success: z.ZodLiteral<true>;
358
+ id: z.ZodString;
359
+ permanent: z.ZodBoolean;
360
+ folders_deleted: z.ZodOptional<z.ZodNumber>;
361
+ }, z.core.$strip>;
362
+ type FolderDeleteResponse = z.infer<typeof folderDeleteResponseSchema>;
363
+ declare const folderDetailResponseSchema: z.ZodObject<{
364
+ folder: z.ZodObject<{
365
+ id: z.ZodString;
366
+ service_id: z.ZodString;
367
+ user_id: z.ZodString;
368
+ parent_id: z.ZodNullable<z.ZodString>;
369
+ name: z.ZodString;
370
+ color_tag: z.ZodNullable<z.ZodString>;
371
+ is_trashed: z.ZodBoolean;
372
+ trashed_at: z.ZodNullable<z.ZodNumber>;
373
+ created_at: z.ZodNumber;
374
+ updated_at: z.ZodNumber;
375
+ }, z.core.$strip>;
376
+ }, z.core.$strip>;
377
+ type FolderDetailResponse = z.infer<typeof folderDetailResponseSchema>;
378
+ declare const folderRestoreResponseSchema: z.ZodObject<{
379
+ success: z.ZodLiteral<true>;
380
+ id: z.ZodString;
381
+ }, z.core.$strip>;
382
+ type FolderRestoreResponse = z.infer<typeof folderRestoreResponseSchema>;
383
+ //#endregion
384
+ //#region src/services.d.ts
385
+ /** Public service info returned to admins. Never exposes secrets. */
386
+ declare const serviceSchema: z.ZodObject<{
387
+ id: z.ZodString;
388
+ name: z.ZodString;
389
+ max_storage_bytes: z.ZodNumber;
390
+ current_used_bytes: z.ZodNumber;
391
+ max_file_size_bytes: z.ZodNumber;
392
+ created_at: z.ZodNumber;
393
+ }, z.core.$strip>;
394
+ type Service = z.infer<typeof serviceSchema>;
395
+ declare const serviceDetailResponseSchema: z.ZodObject<{
396
+ service: z.ZodObject<{
397
+ id: z.ZodString;
398
+ name: z.ZodString;
399
+ max_storage_bytes: z.ZodNumber;
400
+ current_used_bytes: z.ZodNumber;
401
+ max_file_size_bytes: z.ZodNumber;
402
+ created_at: z.ZodNumber;
403
+ }, z.core.$strip>;
404
+ }, z.core.$strip>;
405
+ type ServiceDetailResponse = z.infer<typeof serviceDetailResponseSchema>;
406
+ declare const adminServiceUpdateRequestSchema: z.ZodObject<{
407
+ max_storage_bytes: z.ZodOptional<z.ZodNumber>;
408
+ max_file_size_bytes: z.ZodOptional<z.ZodNumber>;
409
+ }, z.core.$strip>;
410
+ type AdminServiceUpdateRequest = z.infer<typeof adminServiceUpdateRequestSchema>;
411
+ declare const adminServiceUpdateResponseSchema: z.ZodObject<{
412
+ service: z.ZodObject<{
413
+ id: z.ZodString;
414
+ name: z.ZodString;
415
+ max_storage_bytes: z.ZodNumber;
416
+ current_used_bytes: z.ZodNumber;
417
+ max_file_size_bytes: z.ZodNumber;
418
+ created_at: z.ZodNumber;
419
+ }, z.core.$strip>;
420
+ }, z.core.$strip>;
421
+ type AdminServiceUpdateResponse = z.infer<typeof adminServiceUpdateResponseSchema>;
422
+ declare const serviceUsageResponseSchema: z.ZodObject<{
423
+ service_id: z.ZodString;
424
+ max_storage_bytes: z.ZodNumber;
425
+ current_used_bytes: z.ZodNumber;
426
+ used_percent: z.ZodNumber;
427
+ }, z.core.$strip>;
428
+ type ServiceUsageResponse = z.infer<typeof serviceUsageResponseSchema>;
429
+ declare const auditEventActionSchema: z.ZodEnum<{
430
+ file_deleted: "file_deleted";
431
+ folder_deleted: "folder_deleted";
432
+ quota_exceeded: "quota_exceeded";
433
+ quota_reconciled: "quota_reconciled";
434
+ share_link_accessed: "share_link_accessed";
435
+ upload_completed: "upload_completed";
436
+ }>;
437
+ type AuditEventAction = z.infer<typeof auditEventActionSchema>;
438
+ declare const auditEventSchema: z.ZodObject<{
439
+ id: z.ZodString;
440
+ service_id: z.ZodString;
441
+ user_id: z.ZodString;
442
+ action: z.ZodEnum<{
443
+ file_deleted: "file_deleted";
444
+ folder_deleted: "folder_deleted";
445
+ quota_exceeded: "quota_exceeded";
446
+ quota_reconciled: "quota_reconciled";
447
+ share_link_accessed: "share_link_accessed";
448
+ upload_completed: "upload_completed";
449
+ }>;
450
+ resource_type: z.ZodEnum<{
451
+ file: "file";
452
+ folder: "folder";
453
+ service: "service";
454
+ }>;
455
+ resource_id: z.ZodString;
456
+ metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
457
+ ip_address: z.ZodNullable<z.ZodString>;
458
+ created_at: z.ZodNumber;
459
+ }, z.core.$strip>;
460
+ type AuditEvent = z.infer<typeof auditEventSchema>;
461
+ declare const auditLogListQuerySchema: z.ZodObject<{
462
+ user_id: z.ZodOptional<z.ZodString>;
463
+ action: z.ZodOptional<z.ZodEnum<{
464
+ file_deleted: "file_deleted";
465
+ folder_deleted: "folder_deleted";
466
+ quota_exceeded: "quota_exceeded";
467
+ quota_reconciled: "quota_reconciled";
468
+ share_link_accessed: "share_link_accessed";
469
+ upload_completed: "upload_completed";
470
+ }>>;
471
+ resource_type: z.ZodOptional<z.ZodEnum<{
472
+ file: "file";
473
+ folder: "folder";
474
+ service: "service";
475
+ }>>;
476
+ cursor: z.ZodOptional<z.ZodString>;
477
+ limit: z.ZodOptional<z.ZodNumber>;
478
+ }, z.core.$strip>;
479
+ type AuditLogListQuery = z.infer<typeof auditLogListQuerySchema>;
480
+ declare const auditLogListResponseSchema: z.ZodObject<{
481
+ items: z.ZodArray<z.ZodObject<{
482
+ id: z.ZodString;
483
+ service_id: z.ZodString;
484
+ user_id: z.ZodString;
485
+ action: z.ZodEnum<{
486
+ file_deleted: "file_deleted";
487
+ folder_deleted: "folder_deleted";
488
+ quota_exceeded: "quota_exceeded";
489
+ quota_reconciled: "quota_reconciled";
490
+ share_link_accessed: "share_link_accessed";
491
+ upload_completed: "upload_completed";
492
+ }>;
493
+ resource_type: z.ZodEnum<{
494
+ file: "file";
495
+ folder: "folder";
496
+ service: "service";
497
+ }>;
498
+ resource_id: z.ZodString;
499
+ metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
500
+ ip_address: z.ZodNullable<z.ZodString>;
501
+ created_at: z.ZodNumber;
502
+ }, z.core.$strip>>;
503
+ next_cursor: z.ZodNullable<z.ZodString>;
504
+ limit: z.ZodNumber;
505
+ }, z.core.$strip>;
506
+ type AuditLogListResponse = z.infer<typeof auditLogListResponseSchema>;
507
+ declare const adminUserSchema: z.ZodObject<{
508
+ id: z.ZodString;
509
+ name: z.ZodString;
510
+ email: z.ZodString;
511
+ status: z.ZodBoolean;
512
+ labels: z.ZodArray<z.ZodString>;
513
+ role: z.ZodString;
514
+ has_service_access: z.ZodBoolean;
515
+ max_storage_bytes: z.ZodNullable<z.ZodNumber>;
516
+ effective_max_storage_bytes: z.ZodNumber;
517
+ current_used_bytes: z.ZodNumber;
518
+ registration: z.ZodNumber;
519
+ email_verification: z.ZodBoolean;
520
+ }, z.core.$strip>;
521
+ type AdminUser = z.infer<typeof adminUserSchema>;
522
+ declare const adminUserListResponseSchema: z.ZodObject<{
523
+ items: z.ZodArray<z.ZodObject<{
524
+ id: z.ZodString;
525
+ name: z.ZodString;
526
+ email: z.ZodString;
527
+ status: z.ZodBoolean;
528
+ labels: z.ZodArray<z.ZodString>;
529
+ role: z.ZodString;
530
+ has_service_access: z.ZodBoolean;
531
+ max_storage_bytes: z.ZodNullable<z.ZodNumber>;
532
+ effective_max_storage_bytes: z.ZodNumber;
533
+ current_used_bytes: z.ZodNumber;
534
+ registration: z.ZodNumber;
535
+ email_verification: z.ZodBoolean;
536
+ }, z.core.$strip>>;
537
+ total: z.ZodNumber;
538
+ offset: z.ZodNumber;
539
+ limit: z.ZodNumber;
540
+ }, z.core.$strip>;
541
+ type AdminUserListResponse = z.infer<typeof adminUserListResponseSchema>;
542
+ declare const adminUserUpdateRequestSchema: z.ZodObject<{
543
+ name: z.ZodOptional<z.ZodString>;
544
+ email: z.ZodOptional<z.ZodString>;
545
+ status: z.ZodOptional<z.ZodBoolean>;
546
+ labels: z.ZodOptional<z.ZodArray<z.ZodString>>;
547
+ role: z.ZodOptional<z.ZodEnum<{
548
+ admin: "admin";
549
+ plus: "plus";
550
+ user: "user";
551
+ }>>;
552
+ max_storage_bytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
553
+ }, z.core.$strip>;
554
+ type AdminUserUpdateRequest = z.infer<typeof adminUserUpdateRequestSchema>;
555
+ declare const adminUserUpdateResponseSchema: z.ZodObject<{
556
+ user: z.ZodObject<{
557
+ id: z.ZodString;
558
+ name: z.ZodString;
559
+ email: z.ZodString;
560
+ status: z.ZodBoolean;
561
+ labels: z.ZodArray<z.ZodString>;
562
+ role: z.ZodString;
563
+ has_service_access: z.ZodBoolean;
564
+ max_storage_bytes: z.ZodNullable<z.ZodNumber>;
565
+ effective_max_storage_bytes: z.ZodNumber;
566
+ current_used_bytes: z.ZodNumber;
567
+ registration: z.ZodNumber;
568
+ email_verification: z.ZodBoolean;
569
+ }, z.core.$strip>;
570
+ }, z.core.$strip>;
571
+ type AdminUserUpdateResponse = z.infer<typeof adminUserUpdateResponseSchema>;
572
+ declare const adminUserPasswordResetRequestSchema: z.ZodObject<{
573
+ password: z.ZodString;
574
+ }, z.core.$strip>;
575
+ type AdminUserPasswordResetRequest = z.infer<typeof adminUserPasswordResetRequestSchema>;
576
+ declare const adminUserPasswordResetResponseSchema: z.ZodObject<{
577
+ success: z.ZodLiteral<true>;
578
+ user_id: z.ZodString;
579
+ }, z.core.$strip>;
580
+ type AdminUserPasswordResetResponse = z.infer<typeof adminUserPasswordResetResponseSchema>;
581
+ //#endregion
582
+ //#region src/mainStorage.d.ts
583
+ declare const mainStorageListQuerySchema: z.ZodObject<{
584
+ limit: z.ZodOptional<z.ZodNumber>;
585
+ cursor: z.ZodOptional<z.ZodString>;
586
+ }, z.core.$strip>;
587
+ type MainStorageListQuery = z.infer<typeof mainStorageListQuerySchema>;
588
+ declare const mainStorageListResponseSchema: z.ZodObject<{
589
+ items: z.ZodArray<z.ZodObject<{
590
+ id: z.ZodString;
591
+ service_id: z.ZodString;
592
+ user_id: z.ZodString;
593
+ folder_id: z.ZodNullable<z.ZodString>;
594
+ upload_id: z.ZodNullable<z.ZodString>;
595
+ filename: z.ZodString;
596
+ size: z.ZodNumber;
597
+ mime_type: z.ZodString;
598
+ storage_destination: z.ZodEnum<{
599
+ appwrite: "appwrite";
600
+ r2: "r2";
601
+ }>;
602
+ is_trashed: z.ZodBoolean;
603
+ trashed_at: z.ZodNullable<z.ZodNumber>;
604
+ created_at: z.ZodNumber;
605
+ updated_at: z.ZodNumber;
606
+ }, z.core.$strip>>;
607
+ next_cursor: z.ZodNullable<z.ZodString>;
608
+ }, z.core.$strip>;
609
+ type MainStorageListResponse = z.infer<typeof mainStorageListResponseSchema>;
610
+ declare const mainStorageRenameRequestSchema: z.ZodObject<{
611
+ filename: z.ZodString;
612
+ }, z.core.$strip>;
613
+ type MainStorageRenameRequest = z.infer<typeof mainStorageRenameRequestSchema>;
614
+ declare const mainStorageDeleteResponseSchema: z.ZodObject<{
615
+ success: z.ZodBoolean;
616
+ file_id: z.ZodString;
617
+ }, z.core.$strip>;
618
+ type MainStorageDeleteResponse = z.infer<typeof mainStorageDeleteResponseSchema>;
619
+ declare const mainStorageRestoreResponseSchema: z.ZodObject<{
620
+ success: z.ZodBoolean;
621
+ file_id: z.ZodString;
622
+ }, z.core.$strip>;
623
+ type MainStorageRestoreResponse = z.infer<typeof mainStorageRestoreResponseSchema>;
624
+ //#endregion
625
+ //#region src/releases.d.ts
626
+ declare const releaseDTOSchema: z.ZodObject<{
627
+ id: z.ZodString;
628
+ service_id: z.ZodString;
629
+ name: z.ZodString;
630
+ size: z.ZodNumber;
631
+ r2_key: z.ZodString;
632
+ tags: z.ZodArray<z.ZodString>;
633
+ notes: z.ZodNullable<z.ZodString>;
634
+ force_update: z.ZodBoolean;
635
+ uploaded_by: z.ZodString;
636
+ upload_status: z.ZodEnum<{
637
+ completed: "completed";
638
+ failed: "failed";
639
+ pending: "pending";
640
+ }>;
641
+ created_at: z.ZodString;
642
+ }, z.core.$strip>;
643
+ type ReleaseDTO = z.infer<typeof releaseDTOSchema>;
644
+ declare const releaseUploadInitRequestSchema: z.ZodObject<{
645
+ name: z.ZodString;
646
+ filename: z.ZodString;
647
+ tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
648
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
649
+ force_update: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
650
+ }, z.core.$strip>;
651
+ type ReleaseUploadInitRequest = z.input<typeof releaseUploadInitRequestSchema>;
652
+ declare const releaseUploadInitResponseSchema: z.ZodObject<{
653
+ release_id: z.ZodString;
654
+ presigned_url: z.ZodString;
655
+ r2_key: z.ZodString;
656
+ expires_at: z.ZodNumber;
657
+ }, z.core.$strip>;
658
+ type ReleaseUploadInitResponse = z.infer<typeof releaseUploadInitResponseSchema>;
659
+ declare const releaseUploadCompleteRequestSchema: z.ZodObject<{
660
+ release_id: z.ZodString;
661
+ size: z.ZodNumber;
662
+ }, z.core.$strip>;
663
+ type ReleaseUploadCompleteRequest = z.infer<typeof releaseUploadCompleteRequestSchema>;
664
+ declare const releaseUploadCompleteResponseSchema: z.ZodObject<{
665
+ success: z.ZodLiteral<true>;
666
+ release_id: z.ZodString;
667
+ status: z.ZodLiteral<"completed">;
668
+ }, z.core.$strip>;
669
+ type ReleaseUploadCompleteResponse = z.infer<typeof releaseUploadCompleteResponseSchema>;
670
+ declare const releaseUploadFailResponseSchema: z.ZodObject<{
671
+ success: z.ZodLiteral<true>;
672
+ release_id: z.ZodString;
673
+ status: z.ZodLiteral<"failed">;
674
+ }, z.core.$strip>;
675
+ type ReleaseUploadFailResponse = z.infer<typeof releaseUploadFailResponseSchema>;
676
+ declare const releasesListQuerySchema: z.ZodObject<{
677
+ limit: z.ZodOptional<z.ZodNumber>;
678
+ cursor: z.ZodOptional<z.ZodString>;
679
+ }, z.core.$strip>;
680
+ type ReleasesListQuery = z.infer<typeof releasesListQuerySchema>;
681
+ declare const releasesListResponseSchema: z.ZodObject<{
682
+ items: z.ZodArray<z.ZodObject<{
683
+ id: z.ZodString;
684
+ service_id: z.ZodString;
685
+ name: z.ZodString;
686
+ size: z.ZodNumber;
687
+ r2_key: z.ZodString;
688
+ tags: z.ZodArray<z.ZodString>;
689
+ notes: z.ZodNullable<z.ZodString>;
690
+ force_update: z.ZodBoolean;
691
+ uploaded_by: z.ZodString;
692
+ upload_status: z.ZodEnum<{
693
+ completed: "completed";
694
+ failed: "failed";
695
+ pending: "pending";
696
+ }>;
697
+ created_at: z.ZodString;
698
+ }, z.core.$strip>>;
699
+ next_cursor: z.ZodNullable<z.ZodString>;
700
+ }, z.core.$strip>;
701
+ type ReleasesListResponse = z.infer<typeof releasesListResponseSchema>;
702
+ declare const releaseUpdateRequestSchema: z.ZodObject<{
703
+ name: z.ZodOptional<z.ZodString>;
704
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
705
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
706
+ force_update: z.ZodOptional<z.ZodBoolean>;
707
+ }, z.core.$strip>;
708
+ type ReleaseUpdateRequest = z.infer<typeof releaseUpdateRequestSchema>;
709
+ declare const releaseDeleteResponseSchema: z.ZodObject<{
710
+ success: z.ZodLiteral<true>;
711
+ release_id: z.ZodString;
712
+ }, z.core.$strip>;
713
+ type ReleaseDeleteResponse = z.infer<typeof releaseDeleteResponseSchema>;
714
+ declare const releaseSyncManifestSchema: z.ZodObject<{
715
+ id: z.ZodOptional<z.ZodString>;
716
+ name: z.ZodString;
717
+ r2_key: z.ZodString;
718
+ size: z.ZodNumber;
719
+ tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
720
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
721
+ force_update: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
722
+ }, z.core.$strip>;
723
+ type ReleaseSyncManifest = z.input<typeof releaseSyncManifestSchema>;
724
+ declare const releaseSyncRequestSchema: z.ZodObject<{
725
+ releases: z.ZodArray<z.ZodObject<{
726
+ id: z.ZodOptional<z.ZodString>;
727
+ name: z.ZodString;
728
+ r2_key: z.ZodString;
729
+ size: z.ZodNumber;
730
+ tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
731
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
732
+ force_update: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
733
+ }, z.core.$strip>>;
734
+ }, z.core.$strip>;
735
+ type ReleaseSyncRequest = z.input<typeof releaseSyncRequestSchema>;
736
+ declare const releaseSyncResultSchema: z.ZodObject<{
737
+ release_id: z.ZodString;
738
+ success: z.ZodBoolean;
739
+ status: z.ZodEnum<{
740
+ completed: "completed";
741
+ failed: "failed";
742
+ pending: "pending";
743
+ }>;
744
+ }, z.core.$strip>;
745
+ type ReleaseSyncResult = z.infer<typeof releaseSyncResultSchema>;
746
+ declare const releaseSyncResponseSchema: z.ZodObject<{
747
+ synced: z.ZodNumber;
748
+ results: z.ZodArray<z.ZodObject<{
749
+ release_id: z.ZodString;
750
+ success: z.ZodBoolean;
751
+ status: z.ZodEnum<{
752
+ completed: "completed";
753
+ failed: "failed";
754
+ pending: "pending";
755
+ }>;
756
+ }, z.core.$strip>>;
757
+ }, z.core.$strip>;
758
+ type ReleaseSyncResponse = z.infer<typeof releaseSyncResponseSchema>;
759
+ //#endregion
760
+ //#region src/shareLinks.d.ts
761
+ declare const shareLinkSchema: z.ZodObject<{
762
+ id: z.ZodString;
763
+ service_id: z.ZodString;
764
+ file_id: z.ZodString;
765
+ user_id: z.ZodString;
766
+ slug: z.ZodString;
767
+ name: z.ZodNullable<z.ZodString>;
768
+ has_password: z.ZodBoolean;
769
+ expires_at: z.ZodNullable<z.ZodNumber>;
770
+ download_count: z.ZodNumber;
771
+ max_downloads: z.ZodNullable<z.ZodNumber>;
772
+ is_active: z.ZodBoolean;
773
+ created_at: z.ZodNumber;
774
+ updated_at: z.ZodNumber;
775
+ }, z.core.$strip>;
776
+ type ShareLink = z.infer<typeof shareLinkSchema>;
777
+ declare const shareLinkCreateRequestSchema: z.ZodObject<{
778
+ slug: z.ZodOptional<z.ZodString>;
779
+ name: z.ZodOptional<z.ZodString>;
780
+ password: z.ZodOptional<z.ZodString>;
781
+ expires_at: z.ZodOptional<z.ZodNumber>;
782
+ max_downloads: z.ZodOptional<z.ZodNumber>;
783
+ }, z.core.$strip>;
784
+ type ShareLinkCreateRequest = z.infer<typeof shareLinkCreateRequestSchema>;
785
+ declare const shareLinkUpdateRequestSchema: z.ZodObject<{
786
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
787
+ is_active: z.ZodOptional<z.ZodBoolean>;
788
+ password: z.ZodOptional<z.ZodNullable<z.ZodString>>;
789
+ expires_at: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
790
+ max_downloads: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
791
+ }, z.core.$strip>;
792
+ type ShareLinkUpdateRequest = z.infer<typeof shareLinkUpdateRequestSchema>;
793
+ declare const shareLinkListResponseSchema: z.ZodObject<{
794
+ items: z.ZodArray<z.ZodObject<{
795
+ id: z.ZodString;
796
+ service_id: z.ZodString;
797
+ file_id: z.ZodString;
798
+ user_id: z.ZodString;
799
+ slug: z.ZodString;
800
+ name: z.ZodNullable<z.ZodString>;
801
+ has_password: z.ZodBoolean;
802
+ expires_at: z.ZodNullable<z.ZodNumber>;
803
+ download_count: z.ZodNumber;
804
+ max_downloads: z.ZodNullable<z.ZodNumber>;
805
+ is_active: z.ZodBoolean;
806
+ created_at: z.ZodNumber;
807
+ updated_at: z.ZodNumber;
808
+ }, z.core.$strip>>;
809
+ }, z.core.$strip>;
810
+ type ShareLinkListResponse = z.infer<typeof shareLinkListResponseSchema>;
811
+ declare const shareLinkCreateResponseSchema: z.ZodObject<{
812
+ link: z.ZodObject<{
813
+ id: z.ZodString;
814
+ service_id: z.ZodString;
815
+ file_id: z.ZodString;
816
+ user_id: z.ZodString;
817
+ slug: z.ZodString;
818
+ name: z.ZodNullable<z.ZodString>;
819
+ has_password: z.ZodBoolean;
820
+ expires_at: z.ZodNullable<z.ZodNumber>;
821
+ download_count: z.ZodNumber;
822
+ max_downloads: z.ZodNullable<z.ZodNumber>;
823
+ is_active: z.ZodBoolean;
824
+ created_at: z.ZodNumber;
825
+ updated_at: z.ZodNumber;
826
+ }, z.core.$strip>;
827
+ }, z.core.$strip>;
828
+ type ShareLinkCreateResponse = z.infer<typeof shareLinkCreateResponseSchema>;
829
+ declare const shareLinkUpdateResponseSchema: z.ZodObject<{
830
+ link: z.ZodObject<{
831
+ id: z.ZodString;
832
+ service_id: z.ZodString;
833
+ file_id: z.ZodString;
834
+ user_id: z.ZodString;
835
+ slug: z.ZodString;
836
+ name: z.ZodNullable<z.ZodString>;
837
+ has_password: z.ZodBoolean;
838
+ expires_at: z.ZodNullable<z.ZodNumber>;
839
+ download_count: z.ZodNumber;
840
+ max_downloads: z.ZodNullable<z.ZodNumber>;
841
+ is_active: z.ZodBoolean;
842
+ created_at: z.ZodNumber;
843
+ updated_at: z.ZodNumber;
844
+ }, z.core.$strip>;
845
+ }, z.core.$strip>;
846
+ type ShareLinkUpdateResponse = z.infer<typeof shareLinkUpdateResponseSchema>;
847
+ declare const publicFileAccessResponseSchema: z.ZodObject<{
848
+ file_id: z.ZodString;
849
+ filename: z.ZodString;
850
+ size: z.ZodNumber;
851
+ mime_type: z.ZodString;
852
+ requires_password: z.ZodLiteral<false>;
853
+ download_url: z.ZodString;
854
+ url_expires_at: z.ZodNumber;
855
+ link_name: z.ZodNullable<z.ZodString>;
856
+ link_expires_at: z.ZodNullable<z.ZodNumber>;
857
+ }, z.core.$strip>;
858
+ type PublicFileAccessResponse = z.infer<typeof publicFileAccessResponseSchema>;
859
+ declare const publicFileLockedResponseSchema: z.ZodObject<{
860
+ filename: z.ZodString;
861
+ size: z.ZodNumber;
862
+ mime_type: z.ZodString;
863
+ requires_password: z.ZodLiteral<true>;
864
+ link_name: z.ZodNullable<z.ZodString>;
865
+ }, z.core.$strip>;
866
+ type PublicFileLockedResponse = z.infer<typeof publicFileLockedResponseSchema>;
867
+ declare const shareLinkDeleteResponseSchema: z.ZodObject<{
868
+ success: z.ZodLiteral<true>;
869
+ id: z.ZodString;
870
+ }, z.core.$strip>;
871
+ type ShareLinkDeleteResponse = z.infer<typeof shareLinkDeleteResponseSchema>;
872
+ //#endregion
873
+ //#region src/client.d.ts
874
+ declare class UnisourceError extends Error {
875
+ readonly status: number;
876
+ readonly body: ApiError;
877
+ constructor(message: string, status: number, body: ApiError);
878
+ }
879
+ declare class UnisourceNetworkError extends Error {
880
+ readonly cause: unknown;
881
+ constructor(message: string, cause: unknown);
882
+ }
883
+ interface UnisourceClientConfig {
884
+ /** Base URL of the UniSource API, e.g. https://api.usrc.dev */
885
+ baseUrl: string;
886
+ /** Service identifier — tells the backend which service this client belongs to */
887
+ serviceId: string;
888
+ /**
889
+ * Returns a fresh JWT or API key for each request.
890
+ * Return null/undefined to send unauthenticated requests.
891
+ */
892
+ getToken: () => string | null | undefined | Promise<string | null | undefined>;
893
+ }
894
+ declare function getPublicFileInfo(baseUrl: string, slug: string, signal?: AbortSignal): Promise<PublicFileAccessResponse | PublicFileLockedResponse>;
895
+ declare function unlockPublicFile(baseUrl: string, slug: string, password: string, signal?: AbortSignal): Promise<PublicFileAccessResponse | PublicFileLockedResponse>;
896
+ declare class UnisourceClient {
897
+ private config;
898
+ constructor(config: UnisourceClientConfig);
899
+ private request;
900
+ private withAsUser;
901
+ readonly upload: {
902
+ /** Initiate an R2 upload — returns a presigned PUT URL */r2Init: (body: UploadR2InitRequest, signal?: AbortSignal) => Promise<UploadR2InitResponse>; /** Initiate an Appwrite upload — returns credentials for direct SDK upload */
903
+ appwriteInit: (body: UploadAppwriteInitRequest, signal?: AbortSignal) => Promise<UploadAppwriteInitResponse>; /** Confirm that the file was successfully uploaded to storage */
904
+ complete: (body: UploadLifecycleRequest, signal?: AbortSignal) => Promise<UploadCompleteResponse>; /** Mark an upload as failed and release reserved quota */
905
+ fail: (body: UploadLifecycleRequest, signal?: AbortSignal) => Promise<UploadFailResponse>;
906
+ };
907
+ readonly myFiles: {
908
+ /** List files owned by the authenticated user */list: (query?: FileRecordsListQuery, signal?: AbortSignal, options?: {
909
+ asUser?: string;
910
+ }) => Promise<FileRecordsListResponse>; /** List files in the trash */
911
+ trash: (query?: {
912
+ cursor?: string;
913
+ limit?: number;
914
+ }, signal?: AbortSignal, options?: {
915
+ asUser?: string;
916
+ }) => Promise<FileRecordsListResponse>; /** Get a single file record */
917
+ get: (id: string, signal?: AbortSignal, options?: {
918
+ asUser?: string;
919
+ }) => Promise<FileRecordDetailResponse>; /** Get a time-limited download URL (never cached by proxy) */
920
+ downloadUrl: (id: string, signal?: AbortSignal, options?: {
921
+ asUser?: string;
922
+ }) => Promise<FileDownloadUrlResponse>; /** Move file to a different folder (null = root) */
923
+ move: (id: string, body: FileMoveRequest, signal?: AbortSignal, options?: {
924
+ asUser?: string;
925
+ }) => Promise<{
926
+ file: FileRecord;
927
+ }>; /** Soft-delete (move to trash) or permanently delete */
928
+ delete: (id: string, query?: {
929
+ permanent?: boolean;
930
+ }, signal?: AbortSignal, options?: {
931
+ asUser?: string;
932
+ }) => Promise<FileDeleteResponse>; /** Restore a file from trash */
933
+ restore: (id: string, signal?: AbortSignal, options?: {
934
+ asUser?: string;
935
+ }) => Promise<FileRestoreResponse>; /** Rename a file */
936
+ update: (id: string, body: FileUpdateRequest, signal?: AbortSignal, options?: {
937
+ asUser?: string;
938
+ }) => Promise<FileUpdateResponse>;
939
+ };
940
+ readonly folders: {
941
+ /** List folders owned by the authenticated user */list: (query?: FolderListQuery, signal?: AbortSignal, options?: {
942
+ asUser?: string;
943
+ }) => Promise<FolderListResponse>; /** Get a single folder by ID */
944
+ get: (id: string, signal?: AbortSignal, options?: {
945
+ asUser?: string;
946
+ }) => Promise<FolderDetailResponse>; /** Create a new folder */
947
+ create: (body: FolderCreateRequest, signal?: AbortSignal, options?: {
948
+ asUser?: string;
949
+ }) => Promise<FolderCreateResponse>; /** Update folder name or color tag */
950
+ update: (id: string, body: FolderUpdateRequest, signal?: AbortSignal, options?: {
951
+ asUser?: string;
952
+ }) => Promise<FolderUpdateResponse>; /** Soft-delete or permanently delete a folder and its contents */
953
+ delete: (id: string, query?: {
954
+ permanent?: boolean;
955
+ }, signal?: AbortSignal, options?: {
956
+ asUser?: string;
957
+ }) => Promise<FolderDeleteResponse>; /** Restore a folder from trash */
958
+ restore: (id: string, signal?: AbortSignal, options?: {
959
+ asUser?: string;
960
+ }) => Promise<FolderRestoreResponse>;
961
+ };
962
+ readonly mainStorage: {
963
+ /** List files in the main storage pool */list: (query?: MainStorageListQuery) => Promise<MainStorageListResponse>; /** Get a single main-storage file record */
964
+ get: (fileId: string) => Promise<FileRecord>; /** Rename a main-storage file */
965
+ rename: (fileId: string, filename: string) => Promise<FileRecord>; /** Delete a main-storage file (soft by default; pass permanent=true for hard delete) */
966
+ delete: (fileId: string, permanent?: boolean) => Promise<MainStorageDeleteResponse>; /** Restore a soft-deleted main-storage file */
967
+ restore: (fileId: string) => Promise<MainStorageRestoreResponse>;
968
+ upload: {
969
+ /** Initiate an R2 upload targeting main storage */r2Init: (input: Omit<UploadR2InitRequest, 'is_main_storage'>) => Promise<UploadR2InitResponse>; /** Initiate an Appwrite upload targeting main storage */
970
+ appwriteInit: (input: Omit<UploadAppwriteInitRequest, 'is_main_storage'>) => Promise<UploadAppwriteInitResponse>; /** Confirm a main-storage upload completed */
971
+ complete: (uploadId: string) => Promise<UploadCompleteResponse>; /** Mark a main-storage upload as failed */
972
+ fail: (uploadId: string) => Promise<UploadFailResponse>;
973
+ };
974
+ };
975
+ readonly releases: {
976
+ upload: {
977
+ /** Initiate a release upload — returns a presigned PUT URL */init: (body: ReleaseUploadInitRequest, signal?: AbortSignal) => Promise<ReleaseUploadInitResponse>; /** Confirm that a release object was successfully uploaded */
978
+ complete: (body: ReleaseUploadCompleteRequest, signal?: AbortSignal) => Promise<ReleaseUploadCompleteResponse>; /** Mark a release upload as failed */
979
+ fail: (releaseId: string, signal?: AbortSignal) => Promise<ReleaseUploadFailResponse>;
980
+ }; /** List releases for the configured service */
981
+ list: (query?: ReleasesListQuery, signal?: AbortSignal) => Promise<ReleasesListResponse>; /** Get a single release */
982
+ get: (releaseId: string, signal?: AbortSignal) => Promise<ReleaseDTO>; /** Get the latest completed release */
983
+ latest: (signal?: AbortSignal) => Promise<ReleaseDTO>; /** Update release metadata */
984
+ update: (releaseId: string, body: ReleaseUpdateRequest, signal?: AbortSignal) => Promise<ReleaseDTO>; /** Delete a release and its completed object, when applicable */
985
+ delete: (releaseId: string, signal?: AbortSignal) => Promise<ReleaseDeleteResponse>; /** Sync existing release manifests into the backend */
986
+ sync: (body: ReleaseSyncRequest, signal?: AbortSignal) => Promise<ReleaseSyncResponse>;
987
+ };
988
+ readonly admin: {
989
+ /** Get service info and quota limits */serviceDetail: (signal?: AbortSignal) => Promise<ServiceDetailResponse>; /** Update custom service-wide limits */
990
+ updateService: (body: AdminServiceUpdateRequest, signal?: AbortSignal) => Promise<AdminServiceUpdateResponse>; /** Get real-time storage usage for the service */
991
+ usage: (signal?: AbortSignal) => Promise<ServiceUsageResponse>; /** List all uploads (pending/completed/failed) for this service */
992
+ listUploads: (query?: {
993
+ status?: UploadStatus;
994
+ cursor?: string;
995
+ limit?: number;
996
+ }, signal?: AbortSignal) => Promise<UploadsListResponse>; /** Get a single upload for this service */
997
+ getUpload: (id: string, signal?: AbortSignal) => Promise<UploadRecordDetailResponse>; /** Get a time-limited download URL for an upload owned by this service */
998
+ downloadUploadUrl: (id: string, signal?: AbortSignal) => Promise<FileDownloadUrlResponse>; /** Permanently delete an upload owned by this service */
999
+ deleteUpload: (id: string, signal?: AbortSignal) => Promise<FileDeleteResponse>; /** List audit log events for this service */
1000
+ auditLog: (query?: AuditLogListQuery, signal?: AbortSignal) => Promise<AuditLogListResponse>; /** List Appwrite users together with service-specific metadata */
1001
+ listUsers: (query?: {
1002
+ search?: string;
1003
+ offset?: number;
1004
+ limit?: number;
1005
+ }, signal?: AbortSignal) => Promise<AdminUserListResponse>; /** Update Appwrite user properties and service-specific quota/role */
1006
+ updateUser: (userId: string, body: AdminUserUpdateRequest, signal?: AbortSignal) => Promise<AdminUserUpdateResponse>; /** Overwrite a user's password and revoke active sessions */
1007
+ resetUserPassword: (userId: string, body: AdminUserPasswordResetRequest, signal?: AbortSignal) => Promise<AdminUserPasswordResetResponse>;
1008
+ };
1009
+ readonly shareLinks: {
1010
+ /** Create a public share link for a file */create: (fileId: string, body: ShareLinkCreateRequest, signal?: AbortSignal) => Promise<ShareLinkCreateResponse>; /** List all share links for a file */
1011
+ list: (fileId: string, signal?: AbortSignal) => Promise<ShareLinkListResponse>; /** Update a share link (rename, toggle, change password/expiry) */
1012
+ update: (linkId: string, body: ShareLinkUpdateRequest, signal?: AbortSignal) => Promise<ShareLinkUpdateResponse>; /** Permanently delete a share link */
1013
+ delete: (linkId: string, signal?: AbortSignal) => Promise<ShareLinkDeleteResponse>;
1014
+ };
1015
+ }
173
1016
  //#endregion
174
- export { ApiError, FILES_DEFAULT_LIMIT, FILES_MAX_LIMIT, FileDeleteResponse, FileDetailsResponse, FileDownloadUrlResponse, FileRecord, FilesListQuery, FilesListResponse, UploadAppwriteInitRequest, UploadAppwriteInitResponse, UploadCompleteResponse, UploadDestination, UploadFailResponse, UploadLifecycleRequest, UploadR2InitRequest, UploadR2InitResponse, UploadStatus, apiErrorSchema, fileDeleteResponseSchema, fileDetailsResponseSchema, fileDownloadUrlResponseSchema, fileRecordSchema, filesListQuerySchema, filesListResponseSchema, uploadAppwriteInitRequestSchema, uploadAppwriteInitResponseSchema, uploadCompleteResponseSchema, uploadDestinationSchema, uploadFailResponseSchema, uploadLifecycleRequestSchema, uploadR2InitRequestSchema, uploadR2InitResponseSchema, uploadStatusSchema };
1017
+ export { type AdminServiceUpdateRequest, type AdminServiceUpdateResponse, type AdminUser, type AdminUserListResponse, type AdminUserPasswordResetRequest, type AdminUserPasswordResetResponse, type AdminUserUpdateRequest, type AdminUserUpdateResponse, type ApiError, type AuditEvent, type AuditEventAction, type AuditLogListQuery, type AuditLogListResponse, FILES_DEFAULT_LIMIT, FILES_MAX_LIMIT, type FileDeleteResponse, type FileDownloadUrlResponse, type FileMoveRequest, type FileRecord, type FileRecordDetailResponse, type FileRecordsListQuery, type FileRecordsListResponse, type FileRestoreResponse, type FileUpdateRequest, type FileUpdateResponse, type Folder, type FolderCreateRequest, type FolderCreateResponse, type FolderDeleteResponse, type FolderDetailResponse, type FolderListQuery, type FolderListResponse, type FolderRestoreResponse, type FolderUpdateRequest, type FolderUpdateResponse, MainStorageDeleteResponse, MainStorageListQuery, MainStorageListResponse, MainStorageRenameRequest, MainStorageRestoreResponse, type PublicFileAccessResponse, type PublicFileLockedResponse, type ReleaseDTO, type ReleaseDeleteResponse, type ReleaseSyncManifest, type ReleaseSyncRequest, type ReleaseSyncResponse, type ReleaseSyncResult, type ReleaseUpdateRequest, type ReleaseUploadCompleteRequest, type ReleaseUploadCompleteResponse, type ReleaseUploadFailResponse, type ReleaseUploadInitRequest, type ReleaseUploadInitResponse, type ReleasesListQuery, type ReleasesListResponse, type Service, type ServiceDetailResponse, type ServiceUsageResponse, type ShareLink, type ShareLinkCreateRequest, type ShareLinkCreateResponse, type ShareLinkDeleteResponse, type ShareLinkListResponse, type ShareLinkUpdateRequest, type ShareLinkUpdateResponse, UnisourceClient, type UnisourceClientConfig, UnisourceError, UnisourceNetworkError, type UploadAppwriteInitRequest, type UploadAppwriteInitResponse, type UploadCompleteResponse, type UploadDestination, type UploadFailResponse, type UploadLifecycleRequest, type UploadR2InitRequest, type UploadR2InitResponse, type UploadRecord, type UploadRecordDetailResponse, type UploadStatus, type UploadsListResponse, adminServiceUpdateRequestSchema, adminServiceUpdateResponseSchema, adminUserListResponseSchema, adminUserPasswordResetRequestSchema, adminUserPasswordResetResponseSchema, adminUserSchema, adminUserUpdateRequestSchema, adminUserUpdateResponseSchema, apiErrorSchema, auditEventActionSchema, auditEventSchema, auditLogListQuerySchema, auditLogListResponseSchema, fileDeleteResponseSchema, fileDownloadUrlResponseSchema, fileMoveRequestSchema, fileRecordDetailResponseSchema, fileRecordSchema, fileRecordsListQuerySchema, fileRecordsListResponseSchema, fileRestoreResponseSchema, fileUpdateRequestSchema, fileUpdateResponseSchema, folderCreateRequestSchema, folderCreateResponseSchema, folderDeleteResponseSchema, folderDetailResponseSchema, folderListQuerySchema, folderListResponseSchema, folderRestoreResponseSchema, folderSchema, folderUpdateRequestSchema, folderUpdateResponseSchema, getPublicFileInfo, mainStorageDeleteResponseSchema, mainStorageListQuerySchema, mainStorageListResponseSchema, mainStorageRenameRequestSchema, mainStorageRestoreResponseSchema, nonEmptyString, positiveInt, publicFileAccessResponseSchema, publicFileLockedResponseSchema, releaseDTOSchema, releaseDeleteResponseSchema, releaseSyncManifestSchema, releaseSyncRequestSchema, releaseSyncResponseSchema, releaseSyncResultSchema, releaseUpdateRequestSchema, releaseUploadCompleteRequestSchema, releaseUploadCompleteResponseSchema, releaseUploadFailResponseSchema, releaseUploadInitRequestSchema, releaseUploadInitResponseSchema, releasesListQuerySchema, releasesListResponseSchema, serviceDetailResponseSchema, serviceSchema, serviceUsageResponseSchema, shareLinkCreateRequestSchema, shareLinkCreateResponseSchema, shareLinkDeleteResponseSchema, shareLinkListResponseSchema, shareLinkSchema, shareLinkUpdateRequestSchema, shareLinkUpdateResponseSchema, unixTimestamp, unlockPublicFile, uploadAppwriteInitRequestSchema, uploadAppwriteInitResponseSchema, uploadCompleteResponseSchema, uploadDestinationSchema, uploadFailResponseSchema, uploadLifecycleRequestSchema, uploadR2InitRequestSchema, uploadR2InitResponseSchema, uploadRecordDetailResponseSchema, uploadRecordSchema, uploadStatusSchema, uploadsListResponseSchema };