@unisource/sdk 1.0.0 → 1.1.0-beta.1

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/README.md CHANGED
@@ -1,88 +1,173 @@
1
1
  # @unisource/sdk
2
2
 
3
- Główne, współdzielone biblioteki oraz klient HTTP (SDK) wykorzystywane zarówno przez aplikację `frontend`, jak i `backend` (w ramach repozytorium UniSource).
3
+ Publiczny pakiet TypeScript dla UniSource. Zawiera kontrakty API, schematy Zod oraz klienty HTTP używane przez frontend, backend i integracje zewnętrzne.
4
4
 
5
- ## Zawartość pakietu
5
+ ## Instalacja
6
6
 
7
- SDK zapewnia pojedyncze źródło prawdy dla kontraktów API i upraszcza komunikację z backendem. Zawiera m.in.:
7
+ ```bash
8
+ pnpm add @unisource/sdk
9
+ ```
10
+
11
+ Wersja stabilna jest publikowana pod tagiem `latest`:
12
+
13
+ ```bash
14
+ pnpm add @unisource/sdk@latest
15
+ ```
16
+
17
+ Wersje testowe API v2 są publikowane pod tagiem `beta`:
18
+
19
+ ```bash
20
+ pnpm add @unisource/sdk@beta
21
+ ```
22
+
23
+ Aktualne tagi npm:
8
24
 
9
- - **Zod Schemas & TypeScript Types**: Pełne definicje typów dla wszystkich encji w systemie: Pliki, Foldery, Udostępnienia (Share Links), Upload (w tym Multipart), Magazyn (Main Storage), Usługi (Services), Role Użytkowników oraz Audyty (Audit Logs).
10
- - **UnisourceClient**: Silnie typowany klient HTTP służący do bezpiecznej komunikacji z API z uwzględnieniem identyfikacji usługi (`X-Service-ID`) oraz autoryzacji (JWT/API Key).
11
- - **Publiczne Helpery**: Samodzielne metody do obsługi udostępnionych, publicznych linków (bez wymagania logowania) takie jak `getPublicFileInfo()` czy `unlockPublicFile()`.
12
- - **Obsługa Błędów**: Precyzyjne klasy błędów `UnisourceError` oraz `UnisourceNetworkError`.
25
+ - `latest` - stabilne API v1
26
+ - `beta` - API v2 w fazie beta, z możliwymi zmianami breaking przed stabilizacją
13
27
 
14
- ## Użycie (Usage)
28
+ ## Co zawiera pakiet
15
29
 
16
- Przykład konfiguracji i pobrania listy plików przypisanych do użytkownika przy wykorzystaniu instancji klienta:
30
+ - Typy TypeScript i schematy Zod dla plików, folderów, uploadów, share linków, storage, usług, użytkowników i audytów.
31
+ - `UnisourceClient` dla stabilnego API v1.
32
+ - `UnisourceV2Client` oraz kontrakty v2 dostępne z `@unisource/sdk/v2`.
33
+ - Helpery publicznych linków: `getPublicFileInfo()` i `unlockPublicFile()`.
34
+ - Klasy błędów dla v1 oraz v2.
35
+
36
+ ## Stabilne API v1
17
37
 
18
38
  ```ts
19
39
  import { UnisourceClient } from '@unisource/sdk';
20
40
 
21
- // 1. Konfiguracja klienta
22
41
  const client = new UnisourceClient({
23
- baseUrl: 'https://api.usrc.dev',
24
- serviceId: 'usrc',
25
- getToken: async () => 'twoj-token-jwt-lub-api-key', // Zwróć null dla zapytań publicznych
42
+ baseUrl: 'https://api.example.com',
43
+ serviceId: 'default',
44
+ getToken: async () => 'jwt-or-api-key',
26
45
  });
27
46
 
28
- // 2. Zapytanie API (np. lista plików z paginacją)
29
- const files = await client.myFiles.list({ folder_id: null, limit: 25 });
47
+ const files = await client.myFiles.list({
48
+ folder_id: null,
49
+ limit: 25,
50
+ });
30
51
  ```
31
52
 
32
- ### Obsługa udostępnień publicznych
33
- Zapytania o zasoby publiczne nie wymagają pełnej inicjalizacji klienta i posiadają dedykowane, lekkie metody:
53
+ ### Publiczne linki
34
54
 
35
55
  ```ts
36
56
  import { getPublicFileInfo, unlockPublicFile } from '@unisource/sdk';
37
57
 
38
- // Pobranie metadanych udostępnionego pliku na podstawie slug'a
39
- const info = await getPublicFileInfo('https://api.usrc.dev', 'moj-unikalny-slug');
58
+ const info = await getPublicFileInfo('https://api.example.com', 'share-slug');
40
59
 
41
- // Odblokowanie dostępu do pliku chronionego hasłem
42
- const unlocked = await unlockPublicFile('https://api.usrc.dev', 'moj-unikalny-slug', 'tajne-haslo123');
60
+ const unlocked = await unlockPublicFile(
61
+ 'https://api.example.com',
62
+ 'share-slug',
63
+ 'password'
64
+ );
43
65
  ```
44
66
 
45
- ## Rozwój lokalny (Development)
67
+ ## API v2 beta
46
68
 
47
- W ramach monorepo (narzędzie pnpm):
69
+ API v2 jest dostępne w wersjach `@unisource/sdk@beta`. Importuj je z osobnego entrypointu:
48
70
 
49
- ```bash
50
- # Instalacja wszystkich zależności (w roocie)
51
- pnpm install
71
+ ```ts
72
+ import { UnisourceV2Client } from '@unisource/sdk/v2';
52
73
 
53
- # Kompilacja SDK
54
- pnpm --filter @unisource/sdk build
74
+ const client = new UnisourceV2Client({
75
+ baseUrl: 'https://api.example.com',
76
+ serviceId: 'default',
77
+ getToken: async () => 'jwt-or-api-key',
78
+ silentBeta: true,
79
+ });
55
80
 
56
- # Sprawdzanie typów
57
- pnpm --filter @unisource/sdk typecheck
81
+ const files = await client.files.list({
82
+ folder_id: null,
83
+ trash: 'active',
84
+ sort_by: 'updated_at',
85
+ sort_dir: 'desc',
86
+ limit: 50,
87
+ });
58
88
 
59
- # Uruchomienie testów
60
- pnpm --filter @unisource/sdk test
89
+ const folders = await client.folders.list({
90
+ parent_id: undefined,
91
+ trash: 'active',
92
+ sort_by: 'name',
93
+ sort_dir: 'asc',
94
+ });
95
+ ```
96
+
97
+ ### Typy i schematy v2
98
+
99
+ ```ts
100
+ import {
101
+ UnisourceV2Error,
102
+ v2FileSchema,
103
+ v2FolderSchema,
104
+ v2ListResponseSchema,
105
+ type V2File,
106
+ type V2Folder,
107
+ type V2ListResponse,
108
+ } from '@unisource/sdk/v2';
61
109
  ```
62
110
 
63
- Pakiet może być linkowany lokalnie w ramach workspace, wystarczy w innym projekcie monorepo dodać zależność:
64
- `"@unisource/sdk": "workspace:*"`
111
+ V2 używa odpowiedzi stronicowanych w formacie:
65
112
 
66
- ## Wydawanie nowej wersji (Release Workflow)
113
+ ```ts
114
+ interface V2ListResponse<T> {
115
+ items: T[];
116
+ page: {
117
+ limit: number;
118
+ next_cursor: string | null;
119
+ };
120
+ }
121
+ ```
67
122
 
68
- Pakiet `@unisource/sdk` jest pakietem publicznym na rejestrze NPM i korzysta z narzędzia [Changesets](https://github.com/changesets/changesets) do zarządzania wersjami.
123
+ ## Błędy
69
124
 
70
- Aby opublikować nową wersję, wykonaj poniższe kroki z głównego katalogu (root) monorepo:
125
+ ```ts
126
+ import { UnisourceError, UnisourceNetworkError } from '@unisource/sdk';
127
+ import { UnisourceV2Error } from '@unisource/sdk/v2';
128
+
129
+ try {
130
+ await client.myFiles.list();
131
+ } catch (error) {
132
+ if (error instanceof UnisourceError) {
133
+ console.error(error.status, error.message);
134
+ }
135
+
136
+ if (error instanceof UnisourceNetworkError) {
137
+ console.error('Network error', error.cause);
138
+ }
139
+ }
140
+ ```
71
141
 
72
- ```bash
73
- # 1. Dodaj plik z opisem zmian (wybierz paczkę, typ bumpa i napisz komentarz)
74
- pnpm changeset
142
+ ## Rozwój lokalny
75
143
 
76
- # 2. Zatwierdź nową wersję na podstawie plików changeset (aktualizacja package.json oraz CHANGELOG.md)
77
- pnpm changeset version
144
+ Repozytorium używa pnpm workspaces.
78
145
 
79
- # 3. Zbuduj SDK by upewnić się, że kod wynikowy jest poprawny
146
+ ```bash
147
+ pnpm install
148
+ pnpm --filter @unisource/sdk typecheck
149
+ pnpm --filter @unisource/sdk test
80
150
  pnpm --filter @unisource/sdk build
151
+ ```
81
152
 
82
- # 4. Sprawdź przed publikacją
83
- pnpm --filter @unisource/sdk publish --dry-run --access public --no-git-checks
153
+ W aplikacjach z tego samego monorepo używaj zależności workspace:
84
154
 
85
- # 5. Opublikuj na rejestr NPM
86
- pnpm changeset publish
155
+ ```json
156
+ {
157
+ "dependencies": {
158
+ "@unisource/sdk": "workspace:*"
159
+ }
160
+ }
87
161
  ```
88
- Pamiętaj o dodaniu nowo powstałych tagów i commitów do głównego repozytorium po opublikowaniu paczki.
162
+
163
+ ## Release
164
+
165
+ Stable release jest publikowany przez Changesets i workflow `Release SDK` z brancha `main`.
166
+
167
+ Beta release jest uruchamiany ręcznie z tego samego workflowu:
168
+
169
+ - branch workflowu: `main`
170
+ - `channel`: `beta`
171
+ - `bump`: `patch`, `minor`, `major` albo `next`
172
+
173
+ Pierwsza beta dla nowej linii wersji wymaga `patch`, `minor` albo `major`. Kolejne bety tej samej linii publikuj przez `next`.
package/dist/index.d.mts CHANGED
@@ -1,3 +1,4 @@
1
+ import { a as BulkOperationResponse, c as FolderListV2Query, d as bulkFolderIdsSchema, f as bulkFolderMoveRequestSchema, g as folderListV2QuerySchema, h as folderBreadcrumbsResponseSchema, i as BulkFolderMoveRequest, l as bulkFileIdsSchema, m as fileRecordsListV2QuerySchema, n as BulkFileMoveRequest, o as FileRecordsListV2Query, p as bulkOperationResponseSchema, r as BulkFolderIds, s as FolderBreadcrumbsResponse, t as BulkFileIds, u as bulkFileMoveRequestSchema } from "./legacy-draft-7fqlx-KW.mjs";
1
2
  import { z } from "zod";
2
3
 
3
4
  //#region src/primitives.d.ts
@@ -6,6 +7,9 @@ declare const positiveInt: z.ZodNumber;
6
7
  declare const nonNegativeInt: z.ZodNumber;
7
8
  declare const unixTimestamp: z.ZodNumber;
8
9
  declare const FILES_DEFAULT_LIMIT = 25;
10
+ /** Maximum items per list-page response (used by all v2 list endpoints). */
11
+ declare const LIST_MAX_LIMIT = 100;
12
+ /** @deprecated Use LIST_MAX_LIMIT — semantically applies to all v2 list endpoints, not just files. */
9
13
  declare const FILES_MAX_LIMIT = 100;
10
14
  /**
11
15
  * Storage backend a file lives on.
@@ -1209,87 +1213,6 @@ declare const sharesCreateRequestSchema: z.ZodObject<{
1209
1213
  }, z.core.$strip>;
1210
1214
  type SharesCreateRequest = z.infer<typeof sharesCreateRequestSchema>;
1211
1215
  //#endregion
1212
- //#region src/v2.d.ts
1213
- declare const fileRecordsListV2QuerySchema: z.ZodObject<{
1214
- folder_id: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodString>>, z.ZodTransform<string | null | undefined, string | null | undefined>>;
1215
- is_trashed: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
1216
- false: "false";
1217
- true: "true";
1218
- }>, z.ZodTransform<boolean, "false" | "true">>>;
1219
- search: z.ZodOptional<z.ZodString>;
1220
- mime_type: z.ZodOptional<z.ZodString>;
1221
- sort_by: z.ZodOptional<z.ZodEnum<{
1222
- created_at: "created_at";
1223
- name: "name";
1224
- size: "size";
1225
- }>>;
1226
- sort_dir: z.ZodOptional<z.ZodEnum<{
1227
- asc: "asc";
1228
- desc: "desc";
1229
- }>>;
1230
- cursor: z.ZodOptional<z.ZodString>;
1231
- limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1232
- }, z.core.$strip>;
1233
- type FileRecordsListV2Query = z.infer<typeof fileRecordsListV2QuerySchema>;
1234
- declare const bulkFileIdsSchema: z.ZodObject<{
1235
- ids: z.ZodArray<z.ZodString>;
1236
- }, z.core.$strip>;
1237
- type BulkFileIds = z.infer<typeof bulkFileIdsSchema>;
1238
- declare const bulkFileMoveRequestSchema: z.ZodObject<{
1239
- ids: z.ZodArray<z.ZodString>;
1240
- folder_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1241
- }, z.core.$strip>;
1242
- type BulkFileMoveRequest = z.infer<typeof bulkFileMoveRequestSchema>;
1243
- declare const bulkOperationResponseSchema: z.ZodObject<{
1244
- success: z.ZodBoolean;
1245
- processed_count: z.ZodNumber;
1246
- failed_ids: z.ZodOptional<z.ZodArray<z.ZodString>>;
1247
- }, z.core.$strip>;
1248
- type BulkOperationResponse = z.infer<typeof bulkOperationResponseSchema>;
1249
- declare const folderListV2QuerySchema: z.ZodObject<{
1250
- parent_id: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodString>>, z.ZodTransform<string | null | undefined, string | null | undefined>>;
1251
- is_trashed: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
1252
- false: "false";
1253
- true: "true";
1254
- }>, z.ZodTransform<boolean, "false" | "true">>>;
1255
- search: z.ZodOptional<z.ZodString>;
1256
- sort_by: z.ZodOptional<z.ZodEnum<{
1257
- created_at: "created_at";
1258
- name: "name";
1259
- }>>;
1260
- sort_dir: z.ZodOptional<z.ZodEnum<{
1261
- asc: "asc";
1262
- desc: "desc";
1263
- }>>;
1264
- cursor: z.ZodOptional<z.ZodString>;
1265
- limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1266
- }, z.core.$strip>;
1267
- type FolderListV2Query = z.infer<typeof folderListV2QuerySchema>;
1268
- declare const bulkFolderIdsSchema: z.ZodObject<{
1269
- ids: z.ZodArray<z.ZodString>;
1270
- }, z.core.$strip>;
1271
- type BulkFolderIds = z.infer<typeof bulkFolderIdsSchema>;
1272
- declare const bulkFolderMoveRequestSchema: z.ZodObject<{
1273
- ids: z.ZodArray<z.ZodString>;
1274
- parent_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1275
- }, z.core.$strip>;
1276
- type BulkFolderMoveRequest = z.infer<typeof bulkFolderMoveRequestSchema>;
1277
- declare const folderBreadcrumbsResponseSchema: z.ZodObject<{
1278
- breadcrumbs: z.ZodArray<z.ZodObject<{
1279
- id: z.ZodString;
1280
- service_id: z.ZodString;
1281
- user_id: z.ZodString;
1282
- parent_id: z.ZodNullable<z.ZodString>;
1283
- name: z.ZodString;
1284
- color_tag: z.ZodNullable<z.ZodString>;
1285
- is_trashed: z.ZodBoolean;
1286
- trashed_at: z.ZodNullable<z.ZodNumber>;
1287
- created_at: z.ZodNumber;
1288
- updated_at: z.ZodNumber;
1289
- }, z.core.$strip>>;
1290
- }, z.core.$strip>;
1291
- type FolderBreadcrumbsResponse = z.infer<typeof folderBreadcrumbsResponseSchema>;
1292
- //#endregion
1293
1216
  //#region src/client.d.ts
1294
1217
  declare class UnisourceError extends Error {
1295
1218
  readonly status: number;
@@ -1301,7 +1224,7 @@ declare class UnisourceNetworkError extends Error {
1301
1224
  constructor(message: string, cause: unknown);
1302
1225
  }
1303
1226
  interface UnisourceClientConfig {
1304
- /** Base URL of the UniSource API, e.g. https://api.usrc.dev */
1227
+ /** Base URL of the UniSource API, e.g. https://api.example.com */
1305
1228
  baseUrl: string;
1306
1229
  /** Service identifier — tells the backend which service this client belongs to */
1307
1230
  serviceId: string;
@@ -1475,6 +1398,9 @@ declare class UnisourceClient {
1475
1398
  get: (id: string, signal?: AbortSignal) => Promise<ShareLinkDetailResponse>; /** Delete a share link */
1476
1399
  delete: (id: string, signal?: AbortSignal) => Promise<ShareLinkDeleteResponse>;
1477
1400
  };
1401
+ /**
1402
+ * @deprecated FROZEN — no new methods. Use UnisourceV2Client from '@unisource/sdk/v2' instead.
1403
+ */
1478
1404
  readonly v2: {
1479
1405
  files: {
1480
1406
  /** List files with advanced search, sorting, and filtering capabilities */list: (query?: FileRecordsListV2Query, signal?: AbortSignal, options?: {
@@ -1520,4 +1446,4 @@ declare class UnisourceClient {
1520
1446
  };
1521
1447
  }
1522
1448
  //#endregion
1523
- export { type AdminServiceSettingsRequest, type AdminServiceSettingsResponse, type AdminServiceUpdateRequest, type AdminServiceUpdateResponse, type AdminUser, type AdminUserListResponse, type AdminUserPasswordResetRequest, type AdminUserPasswordResetResponse, type AdminUserRoleUpdateRequest, type AdminUserStorageLimitUpdateRequest, type AdminUserUpdateRequest, type AdminUserUpdateResponse, type ApiError, type AppReleaseLatestQuery, type AppReleaseLatestResponse, type AuditEvent, type AuditEventAction, type AuditLogListQuery, type AuditLogListResponse, type BulkFileIds, type BulkFileMoveRequest, type BulkFolderIds, type BulkFolderMoveRequest, type BulkOperationResponse, FILES_DEFAULT_LIMIT, FILES_MAX_LIMIT, type FileDeleteResponse, type FileDownloadUrlResponse, type FileMoveRequest, type FileRecord, type FileRecordDetailResponse, type FileRecordsListQuery, type FileRecordsListResponse, type FileRecordsListV2Query, type FileRestoreResponse, type FileUpdateRequest, type FileUpdateResponse, type Folder, type FolderBreadcrumbsResponse, type FolderCreateRequest, type FolderCreateResponse, type FolderDeleteResponse, type FolderDetailResponse, type FolderListQuery, type FolderListResponse, type FolderListV2Query, type FolderRestoreResponse, type FolderUpdateRequest, type FolderUpdateResponse, MainStorageDeleteResponse, MainStorageDetailResponse, MainStorageFile, MainStorageListQuery, MainStorageListResponse, MainStorageRenameRequest, MainStorageRenameResponse, MainStorageRestoreResponse, type MultipartAbortRequest, type MultipartAbortResponse, type MultipartCompleteRequest, type MultipartCompleteResponse, type MultipartCreateRequest, type MultipartCreateResponse, type MultipartListPartsQuery, type MultipartListPartsResponse, type MultipartPart, type MultipartSignPartQuery, type MultipartSignPartResponse, type PublicFileAccessResponse, type PublicFileLockedResponse, type RecommendedUploadDestination, type ReleaseDTO, type ReleaseDeleteResponse, type ReleaseMultipartAbortRequest, type ReleaseMultipartAbortResponse, type ReleaseMultipartCompleteRequest, type ReleaseMultipartCompleteResponse, type ReleaseMultipartCreateRequest, type ReleaseMultipartCreateResponse, type ReleaseMultipartListPartsQuery, type ReleaseMultipartListPartsResponse, type ReleaseMultipartPart, type ReleaseMultipartSignPartQuery, type ReleaseMultipartSignPartResponse, 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 ShareLinkDetailResponse, type ShareLinkListResponse, type ShareLinkUpdateRequest, type ShareLinkUpdateResponse, type SharesCreateRequest, 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 UploadType, type UploadsListResponse, adminServiceSettingsRequestSchema, adminServiceSettingsResponseSchema, adminServiceUpdateRequestSchema, adminServiceUpdateResponseSchema, adminUserListResponseSchema, adminUserPasswordResetRequestSchema, adminUserPasswordResetResponseSchema, adminUserRoleUpdateRequestSchema, adminUserSchema, adminUserStorageLimitUpdateRequestSchema, adminUserUpdateRequestSchema, adminUserUpdateResponseSchema, apiErrorSchema, appReleaseLatestQuerySchema, appReleaseLatestResponseSchema, auditEventActionSchema, auditEventSchema, auditLogListQuerySchema, auditLogListResponseSchema, bulkFileIdsSchema, bulkFileMoveRequestSchema, bulkFolderIdsSchema, bulkFolderMoveRequestSchema, bulkOperationResponseSchema, fileDeleteResponseSchema, fileDownloadUrlResponseSchema, fileMoveRequestSchema, fileRecordDetailResponseSchema, fileRecordSchema, fileRecordsListQuerySchema, fileRecordsListResponseSchema, fileRecordsListV2QuerySchema, fileRestoreResponseSchema, fileUpdateRequestSchema, fileUpdateResponseSchema, folderBreadcrumbsResponseSchema, folderCreateRequestSchema, folderCreateResponseSchema, folderDeleteResponseSchema, folderDetailResponseSchema, folderListQuerySchema, folderListResponseSchema, folderListV2QuerySchema, folderRestoreResponseSchema, folderSchema, folderUpdateRequestSchema, folderUpdateResponseSchema, getPublicFileInfo, mainStorageDeleteResponseSchema, mainStorageDetailResponseSchema, mainStorageFileSchema, mainStorageListQuerySchema, mainStorageListResponseSchema, mainStorageRenameRequestSchema, mainStorageRenameResponseSchema, mainStorageRestoreResponseSchema, multipartAbortRequestSchema, multipartAbortResponseSchema, multipartCompleteRequestSchema, multipartCompleteResponseSchema, multipartCreateRequestSchema, multipartCreateResponseSchema, multipartListPartsQuerySchema, multipartListPartsResponseSchema, multipartPartSchema, multipartSignPartQuerySchema, multipartSignPartResponseSchema, nonEmptyString, nonNegativeInt, positiveInt, publicFileAccessResponseSchema, publicFileLockedResponseSchema, recommendedUploadDestinationSchema, releaseDTOSchema, releaseDeleteResponseSchema, releaseMultipartAbortRequestSchema, releaseMultipartAbortResponseSchema, releaseMultipartCompleteRequestSchema, releaseMultipartCompleteResponseSchema, releaseMultipartCreateRequestSchema, releaseMultipartCreateResponseSchema, releaseMultipartListPartsQuerySchema, releaseMultipartListPartsResponseSchema, releaseMultipartPartSchema, releaseMultipartSignPartQuerySchema, releaseMultipartSignPartResponseSchema, releaseSyncManifestSchema, releaseSyncRequestSchema, releaseSyncResponseSchema, releaseSyncResultSchema, releaseUpdateRequestSchema, releaseUploadCompleteRequestSchema, releaseUploadCompleteResponseSchema, releaseUploadFailResponseSchema, releaseUploadInitRequestSchema, releaseUploadInitResponseSchema, releasesListQuerySchema, releasesListResponseSchema, serviceDetailResponseSchema, serviceSchema, serviceUsageResponseSchema, shareLinkCreateRequestSchema, shareLinkCreateResponseSchema, shareLinkDeleteResponseSchema, shareLinkDetailResponseSchema, shareLinkListResponseSchema, shareLinkSchema, shareLinkUpdateRequestSchema, shareLinkUpdateResponseSchema, sharesCreateRequestSchema, unixTimestamp, unlockPublicFile, uploadAppwriteInitRequestSchema, uploadAppwriteInitResponseSchema, uploadCompleteResponseSchema, uploadDestinationSchema, uploadFailResponseSchema, uploadLifecycleRequestSchema, uploadR2InitRequestSchema, uploadR2InitResponseSchema, uploadRecordDetailResponseSchema, uploadRecordSchema, uploadStatusSchema, uploadTypeSchema, uploadsListResponseSchema };
1449
+ export { type AdminServiceSettingsRequest, type AdminServiceSettingsResponse, type AdminServiceUpdateRequest, type AdminServiceUpdateResponse, type AdminUser, type AdminUserListResponse, type AdminUserPasswordResetRequest, type AdminUserPasswordResetResponse, type AdminUserRoleUpdateRequest, type AdminUserStorageLimitUpdateRequest, type AdminUserUpdateRequest, type AdminUserUpdateResponse, type ApiError, type AppReleaseLatestQuery, type AppReleaseLatestResponse, type AuditEvent, type AuditEventAction, type AuditLogListQuery, type AuditLogListResponse, type BulkFileIds, type BulkFileMoveRequest, type BulkFolderIds, type BulkFolderMoveRequest, type BulkOperationResponse, FILES_DEFAULT_LIMIT, FILES_MAX_LIMIT, type FileDeleteResponse, type FileDownloadUrlResponse, type FileMoveRequest, type FileRecord, type FileRecordDetailResponse, type FileRecordsListQuery, type FileRecordsListResponse, type FileRecordsListV2Query, type FileRestoreResponse, type FileUpdateRequest, type FileUpdateResponse, type Folder, type FolderBreadcrumbsResponse, type FolderCreateRequest, type FolderCreateResponse, type FolderDeleteResponse, type FolderDetailResponse, type FolderListQuery, type FolderListResponse, type FolderListV2Query, type FolderRestoreResponse, type FolderUpdateRequest, type FolderUpdateResponse, LIST_MAX_LIMIT, MainStorageDeleteResponse, MainStorageDetailResponse, MainStorageFile, MainStorageListQuery, MainStorageListResponse, MainStorageRenameRequest, MainStorageRenameResponse, MainStorageRestoreResponse, type MultipartAbortRequest, type MultipartAbortResponse, type MultipartCompleteRequest, type MultipartCompleteResponse, type MultipartCreateRequest, type MultipartCreateResponse, type MultipartListPartsQuery, type MultipartListPartsResponse, type MultipartPart, type MultipartSignPartQuery, type MultipartSignPartResponse, type PublicFileAccessResponse, type PublicFileLockedResponse, type RecommendedUploadDestination, type ReleaseDTO, type ReleaseDeleteResponse, type ReleaseMultipartAbortRequest, type ReleaseMultipartAbortResponse, type ReleaseMultipartCompleteRequest, type ReleaseMultipartCompleteResponse, type ReleaseMultipartCreateRequest, type ReleaseMultipartCreateResponse, type ReleaseMultipartListPartsQuery, type ReleaseMultipartListPartsResponse, type ReleaseMultipartPart, type ReleaseMultipartSignPartQuery, type ReleaseMultipartSignPartResponse, 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 ShareLinkDetailResponse, type ShareLinkListResponse, type ShareLinkUpdateRequest, type ShareLinkUpdateResponse, type SharesCreateRequest, 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 UploadType, type UploadsListResponse, adminServiceSettingsRequestSchema, adminServiceSettingsResponseSchema, adminServiceUpdateRequestSchema, adminServiceUpdateResponseSchema, adminUserListResponseSchema, adminUserPasswordResetRequestSchema, adminUserPasswordResetResponseSchema, adminUserRoleUpdateRequestSchema, adminUserSchema, adminUserStorageLimitUpdateRequestSchema, adminUserUpdateRequestSchema, adminUserUpdateResponseSchema, apiErrorSchema, appReleaseLatestQuerySchema, appReleaseLatestResponseSchema, auditEventActionSchema, auditEventSchema, auditLogListQuerySchema, auditLogListResponseSchema, bulkFileIdsSchema, bulkFileMoveRequestSchema, bulkFolderIdsSchema, bulkFolderMoveRequestSchema, bulkOperationResponseSchema, fileDeleteResponseSchema, fileDownloadUrlResponseSchema, fileMoveRequestSchema, fileRecordDetailResponseSchema, fileRecordSchema, fileRecordsListQuerySchema, fileRecordsListResponseSchema, fileRecordsListV2QuerySchema, fileRestoreResponseSchema, fileUpdateRequestSchema, fileUpdateResponseSchema, folderBreadcrumbsResponseSchema, folderCreateRequestSchema, folderCreateResponseSchema, folderDeleteResponseSchema, folderDetailResponseSchema, folderListQuerySchema, folderListResponseSchema, folderListV2QuerySchema, folderRestoreResponseSchema, folderSchema, folderUpdateRequestSchema, folderUpdateResponseSchema, getPublicFileInfo, mainStorageDeleteResponseSchema, mainStorageDetailResponseSchema, mainStorageFileSchema, mainStorageListQuerySchema, mainStorageListResponseSchema, mainStorageRenameRequestSchema, mainStorageRenameResponseSchema, mainStorageRestoreResponseSchema, multipartAbortRequestSchema, multipartAbortResponseSchema, multipartCompleteRequestSchema, multipartCompleteResponseSchema, multipartCreateRequestSchema, multipartCreateResponseSchema, multipartListPartsQuerySchema, multipartListPartsResponseSchema, multipartPartSchema, multipartSignPartQuerySchema, multipartSignPartResponseSchema, nonEmptyString, nonNegativeInt, positiveInt, publicFileAccessResponseSchema, publicFileLockedResponseSchema, recommendedUploadDestinationSchema, releaseDTOSchema, releaseDeleteResponseSchema, releaseMultipartAbortRequestSchema, releaseMultipartAbortResponseSchema, releaseMultipartCompleteRequestSchema, releaseMultipartCompleteResponseSchema, releaseMultipartCreateRequestSchema, releaseMultipartCreateResponseSchema, releaseMultipartListPartsQuerySchema, releaseMultipartListPartsResponseSchema, releaseMultipartPartSchema, releaseMultipartSignPartQuerySchema, releaseMultipartSignPartResponseSchema, releaseSyncManifestSchema, releaseSyncRequestSchema, releaseSyncResponseSchema, releaseSyncResultSchema, releaseUpdateRequestSchema, releaseUploadCompleteRequestSchema, releaseUploadCompleteResponseSchema, releaseUploadFailResponseSchema, releaseUploadInitRequestSchema, releaseUploadInitResponseSchema, releasesListQuerySchema, releasesListResponseSchema, serviceDetailResponseSchema, serviceSchema, serviceUsageResponseSchema, shareLinkCreateRequestSchema, shareLinkCreateResponseSchema, shareLinkDeleteResponseSchema, shareLinkDetailResponseSchema, shareLinkListResponseSchema, shareLinkSchema, shareLinkUpdateRequestSchema, shareLinkUpdateResponseSchema, sharesCreateRequestSchema, unixTimestamp, unlockPublicFile, uploadAppwriteInitRequestSchema, uploadAppwriteInitResponseSchema, uploadCompleteResponseSchema, uploadDestinationSchema, uploadFailResponseSchema, uploadLifecycleRequestSchema, uploadR2InitRequestSchema, uploadR2InitResponseSchema, uploadRecordDetailResponseSchema, uploadRecordSchema, uploadStatusSchema, uploadTypeSchema, uploadsListResponseSchema };
package/dist/index.mjs CHANGED
@@ -1,36 +1,5 @@
1
+ import { C as nonEmptyString, D as unixTimestamp, E as recommendedUploadDestinationSchema, O as uploadDestinationSchema, S as apiErrorSchema, T as positiveInt, _ as folderUpdateRequestSchema, a as bulkOperationResponseSchema, b as FILES_MAX_LIMIT, c as folderListV2QuerySchema, d as folderDeleteResponseSchema, f as folderDetailResponseSchema, g as folderSchema, h as folderRestoreResponseSchema, i as bulkFolderMoveRequestSchema, k as uploadStatusSchema, l as folderCreateRequestSchema, m as folderListResponseSchema, n as bulkFileMoveRequestSchema, o as fileRecordsListV2QuerySchema, p as folderListQuerySchema, r as bulkFolderIdsSchema, s as folderBreadcrumbsResponseSchema, t as bulkFileIdsSchema, u as folderCreateResponseSchema, v as folderUpdateResponseSchema, w as nonNegativeInt, x as LIST_MAX_LIMIT, y as FILES_DEFAULT_LIMIT } from "./legacy-draft-D0hgtTqN.mjs";
1
2
  import { z } from "zod";
2
- //#region src/primitives.ts
3
- const nonEmptyString = z.string().trim().min(1);
4
- const positiveInt = z.number().int().positive();
5
- const nonNegativeInt = z.number().int().nonnegative();
6
- const unixTimestamp = z.number().int().nonnegative();
7
- const FILES_DEFAULT_LIMIT = 25;
8
- const FILES_MAX_LIMIT = 100;
9
- /**
10
- * Storage backend a file lives on.
11
- * - 'r2' — Cloudflare R2 via presigned PUT / multipart
12
- * - 'appwrite' — Appwrite Storage via direct browser SDK upload
13
- *
14
- * `recommendedUploadDestinationSchema` adds the meta-value 'hybrid' which is
15
- * only valid as a service-wide setting (the upload manager picks r2/appwrite
16
- * per-file based on size).
17
- */
18
- const uploadDestinationSchema = z.enum(["r2", "appwrite"]);
19
- const recommendedUploadDestinationSchema = z.enum([
20
- "r2",
21
- "appwrite",
22
- "hybrid"
23
- ]);
24
- const uploadStatusSchema = z.enum([
25
- "pending",
26
- "completed",
27
- "failed"
28
- ]);
29
- const apiErrorSchema = z.object({
30
- error: nonEmptyString,
31
- message: nonEmptyString
32
- });
33
- //#endregion
34
3
  //#region src/uploads.ts
35
4
  const uploadR2InitRequestSchema = z.object({
36
5
  filename: nonEmptyString,
@@ -192,54 +161,6 @@ const fileRestoreResponseSchema = z.object({
192
161
  const fileUpdateRequestSchema = z.object({ filename: z.string().trim().min(1).max(255) });
193
162
  const fileUpdateResponseSchema = z.object({ file: fileRecordSchema });
194
163
  //#endregion
195
- //#region src/folders.ts
196
- const folderSchema = z.object({
197
- id: nonEmptyString,
198
- service_id: nonEmptyString,
199
- user_id: nonEmptyString,
200
- parent_id: nonEmptyString.nullable(),
201
- name: nonEmptyString,
202
- color_tag: z.string().nullable(),
203
- is_trashed: z.boolean(),
204
- trashed_at: positiveInt.nullable(),
205
- created_at: positiveInt,
206
- updated_at: positiveInt
207
- });
208
- const folderListQuerySchema = z.object({
209
- parent_id: nonEmptyString.nullable().optional(),
210
- trashed: z.boolean().optional(),
211
- is_trashed: z.boolean().optional(),
212
- cursor: nonEmptyString.optional(),
213
- limit: z.number().int().min(1).max(100).optional()
214
- }).refine((v) => !(v.trashed !== void 0 && v.is_trashed !== void 0), { message: "Use either trashed or is_trashed, not both" });
215
- const folderListResponseSchema = z.object({
216
- items: z.array(folderSchema),
217
- next_cursor: z.string().nullable(),
218
- limit: positiveInt
219
- });
220
- const folderCreateRequestSchema = z.object({
221
- name: nonEmptyString,
222
- parent_id: nonEmptyString.optional(),
223
- color_tag: z.string().optional()
224
- });
225
- const folderCreateResponseSchema = z.object({ folder: folderSchema });
226
- const folderUpdateRequestSchema = z.object({
227
- name: nonEmptyString.optional(),
228
- color_tag: z.string().nullable().optional()
229
- }).refine((v) => v.name !== void 0 || v.color_tag !== void 0, { message: "At least one of name or color_tag must be provided" });
230
- const folderUpdateResponseSchema = z.object({ folder: folderSchema });
231
- const folderDeleteResponseSchema = z.object({
232
- success: z.literal(true),
233
- id: nonEmptyString,
234
- permanent: z.boolean(),
235
- folders_deleted: z.number().int().nonnegative().optional()
236
- });
237
- const folderDetailResponseSchema = z.object({ folder: folderSchema });
238
- const folderRestoreResponseSchema = z.object({
239
- success: z.literal(true),
240
- id: nonEmptyString
241
- });
242
- //#endregion
243
164
  //#region src/services.ts
244
165
  /** Public service info returned to admins. Never exposes secrets. */
245
166
  const serviceSchema = z.object({
@@ -943,6 +864,9 @@ var UnisourceClient = class {
943
864
  get: (id, signal) => apiRequest(this.config, "GET", `/shares/${id}`, { signal }),
944
865
  delete: (id, signal) => apiRequest(this.config, "DELETE", `/shares/${id}`, { signal })
945
866
  };
867
+ /**
868
+ * @deprecated FROZEN — no new methods. Use UnisourceV2Client from '@unisource/sdk/v2' instead.
869
+ */
946
870
  v2 = {
947
871
  files: {
948
872
  list: (query, signal, options) => apiRequest(this.config, "GET", "/v2/files", {
@@ -999,45 +923,4 @@ var UnisourceClient = class {
999
923
  }) } };
1000
924
  };
1001
925
  //#endregion
1002
- //#region src/v2.ts
1003
- const fileRecordsListV2QuerySchema = z.object({
1004
- folder_id: nonEmptyString.nullable().optional().transform((v) => v === "null" ? null : v),
1005
- is_trashed: z.enum(["true", "false"]).transform((v) => v === "true").optional(),
1006
- search: z.string().optional(),
1007
- mime_type: z.string().optional(),
1008
- sort_by: z.enum([
1009
- "created_at",
1010
- "name",
1011
- "size"
1012
- ]).optional(),
1013
- sort_dir: z.enum(["asc", "desc"]).optional(),
1014
- cursor: nonEmptyString.optional(),
1015
- limit: z.coerce.number().int().min(1).max(100).optional()
1016
- });
1017
- const bulkFileIdsSchema = z.object({ ids: z.array(nonEmptyString).min(1).max(100) });
1018
- const bulkFileMoveRequestSchema = z.object({
1019
- ids: z.array(nonEmptyString).min(1).max(100),
1020
- folder_id: nonEmptyString.nullable().optional()
1021
- });
1022
- const bulkOperationResponseSchema = z.object({
1023
- success: z.boolean(),
1024
- processed_count: z.number().int().nonnegative(),
1025
- failed_ids: z.array(nonEmptyString).optional()
1026
- });
1027
- const folderListV2QuerySchema = z.object({
1028
- parent_id: nonEmptyString.nullable().optional().transform((v) => v === "null" ? null : v),
1029
- is_trashed: z.enum(["true", "false"]).transform((v) => v === "true").optional(),
1030
- search: z.string().optional(),
1031
- sort_by: z.enum(["created_at", "name"]).optional(),
1032
- sort_dir: z.enum(["asc", "desc"]).optional(),
1033
- cursor: nonEmptyString.optional(),
1034
- limit: z.coerce.number().int().min(1).max(100).optional()
1035
- });
1036
- const bulkFolderIdsSchema = z.object({ ids: z.array(nonEmptyString).min(1).max(100) });
1037
- const bulkFolderMoveRequestSchema = z.object({
1038
- ids: z.array(nonEmptyString).min(1).max(100),
1039
- parent_id: nonEmptyString.nullable().optional()
1040
- });
1041
- const folderBreadcrumbsResponseSchema = z.object({ breadcrumbs: z.array(folderSchema) });
1042
- //#endregion
1043
- export { FILES_DEFAULT_LIMIT, FILES_MAX_LIMIT, UnisourceClient, UnisourceError, UnisourceNetworkError, adminServiceSettingsRequestSchema, adminServiceSettingsResponseSchema, adminServiceUpdateRequestSchema, adminServiceUpdateResponseSchema, adminUserListResponseSchema, adminUserPasswordResetRequestSchema, adminUserPasswordResetResponseSchema, adminUserRoleUpdateRequestSchema, adminUserSchema, adminUserStorageLimitUpdateRequestSchema, adminUserUpdateRequestSchema, adminUserUpdateResponseSchema, apiErrorSchema, appReleaseLatestQuerySchema, appReleaseLatestResponseSchema, auditEventActionSchema, auditEventSchema, auditLogListQuerySchema, auditLogListResponseSchema, bulkFileIdsSchema, bulkFileMoveRequestSchema, bulkFolderIdsSchema, bulkFolderMoveRequestSchema, bulkOperationResponseSchema, fileDeleteResponseSchema, fileDownloadUrlResponseSchema, fileMoveRequestSchema, fileRecordDetailResponseSchema, fileRecordSchema, fileRecordsListQuerySchema, fileRecordsListResponseSchema, fileRecordsListV2QuerySchema, fileRestoreResponseSchema, fileUpdateRequestSchema, fileUpdateResponseSchema, folderBreadcrumbsResponseSchema, folderCreateRequestSchema, folderCreateResponseSchema, folderDeleteResponseSchema, folderDetailResponseSchema, folderListQuerySchema, folderListResponseSchema, folderListV2QuerySchema, folderRestoreResponseSchema, folderSchema, folderUpdateRequestSchema, folderUpdateResponseSchema, getPublicFileInfo, mainStorageDeleteResponseSchema, mainStorageDetailResponseSchema, mainStorageFileSchema, mainStorageListQuerySchema, mainStorageListResponseSchema, mainStorageRenameRequestSchema, mainStorageRenameResponseSchema, mainStorageRestoreResponseSchema, multipartAbortRequestSchema, multipartAbortResponseSchema, multipartCompleteRequestSchema, multipartCompleteResponseSchema, multipartCreateRequestSchema, multipartCreateResponseSchema, multipartListPartsQuerySchema, multipartListPartsResponseSchema, multipartPartSchema, multipartSignPartQuerySchema, multipartSignPartResponseSchema, nonEmptyString, nonNegativeInt, positiveInt, publicFileAccessResponseSchema, publicFileLockedResponseSchema, recommendedUploadDestinationSchema, releaseDTOSchema, releaseDeleteResponseSchema, releaseMultipartAbortRequestSchema, releaseMultipartAbortResponseSchema, releaseMultipartCompleteRequestSchema, releaseMultipartCompleteResponseSchema, releaseMultipartCreateRequestSchema, releaseMultipartCreateResponseSchema, releaseMultipartListPartsQuerySchema, releaseMultipartListPartsResponseSchema, releaseMultipartPartSchema, releaseMultipartSignPartQuerySchema, releaseMultipartSignPartResponseSchema, releaseSyncManifestSchema, releaseSyncRequestSchema, releaseSyncResponseSchema, releaseSyncResultSchema, releaseUpdateRequestSchema, releaseUploadCompleteRequestSchema, releaseUploadCompleteResponseSchema, releaseUploadFailResponseSchema, releaseUploadInitRequestSchema, releaseUploadInitResponseSchema, releasesListQuerySchema, releasesListResponseSchema, serviceDetailResponseSchema, serviceSchema, serviceUsageResponseSchema, shareLinkCreateRequestSchema, shareLinkCreateResponseSchema, shareLinkDeleteResponseSchema, shareLinkDetailResponseSchema, shareLinkListResponseSchema, shareLinkSchema, shareLinkUpdateRequestSchema, shareLinkUpdateResponseSchema, sharesCreateRequestSchema, unixTimestamp, unlockPublicFile, uploadAppwriteInitRequestSchema, uploadAppwriteInitResponseSchema, uploadCompleteResponseSchema, uploadDestinationSchema, uploadFailResponseSchema, uploadLifecycleRequestSchema, uploadR2InitRequestSchema, uploadR2InitResponseSchema, uploadRecordDetailResponseSchema, uploadRecordSchema, uploadStatusSchema, uploadTypeSchema, uploadsListResponseSchema };
926
+ export { FILES_DEFAULT_LIMIT, FILES_MAX_LIMIT, LIST_MAX_LIMIT, UnisourceClient, UnisourceError, UnisourceNetworkError, adminServiceSettingsRequestSchema, adminServiceSettingsResponseSchema, adminServiceUpdateRequestSchema, adminServiceUpdateResponseSchema, adminUserListResponseSchema, adminUserPasswordResetRequestSchema, adminUserPasswordResetResponseSchema, adminUserRoleUpdateRequestSchema, adminUserSchema, adminUserStorageLimitUpdateRequestSchema, adminUserUpdateRequestSchema, adminUserUpdateResponseSchema, apiErrorSchema, appReleaseLatestQuerySchema, appReleaseLatestResponseSchema, auditEventActionSchema, auditEventSchema, auditLogListQuerySchema, auditLogListResponseSchema, bulkFileIdsSchema, bulkFileMoveRequestSchema, bulkFolderIdsSchema, bulkFolderMoveRequestSchema, bulkOperationResponseSchema, fileDeleteResponseSchema, fileDownloadUrlResponseSchema, fileMoveRequestSchema, fileRecordDetailResponseSchema, fileRecordSchema, fileRecordsListQuerySchema, fileRecordsListResponseSchema, fileRecordsListV2QuerySchema, fileRestoreResponseSchema, fileUpdateRequestSchema, fileUpdateResponseSchema, folderBreadcrumbsResponseSchema, folderCreateRequestSchema, folderCreateResponseSchema, folderDeleteResponseSchema, folderDetailResponseSchema, folderListQuerySchema, folderListResponseSchema, folderListV2QuerySchema, folderRestoreResponseSchema, folderSchema, folderUpdateRequestSchema, folderUpdateResponseSchema, getPublicFileInfo, mainStorageDeleteResponseSchema, mainStorageDetailResponseSchema, mainStorageFileSchema, mainStorageListQuerySchema, mainStorageListResponseSchema, mainStorageRenameRequestSchema, mainStorageRenameResponseSchema, mainStorageRestoreResponseSchema, multipartAbortRequestSchema, multipartAbortResponseSchema, multipartCompleteRequestSchema, multipartCompleteResponseSchema, multipartCreateRequestSchema, multipartCreateResponseSchema, multipartListPartsQuerySchema, multipartListPartsResponseSchema, multipartPartSchema, multipartSignPartQuerySchema, multipartSignPartResponseSchema, nonEmptyString, nonNegativeInt, positiveInt, publicFileAccessResponseSchema, publicFileLockedResponseSchema, recommendedUploadDestinationSchema, releaseDTOSchema, releaseDeleteResponseSchema, releaseMultipartAbortRequestSchema, releaseMultipartAbortResponseSchema, releaseMultipartCompleteRequestSchema, releaseMultipartCompleteResponseSchema, releaseMultipartCreateRequestSchema, releaseMultipartCreateResponseSchema, releaseMultipartListPartsQuerySchema, releaseMultipartListPartsResponseSchema, releaseMultipartPartSchema, releaseMultipartSignPartQuerySchema, releaseMultipartSignPartResponseSchema, releaseSyncManifestSchema, releaseSyncRequestSchema, releaseSyncResponseSchema, releaseSyncResultSchema, releaseUpdateRequestSchema, releaseUploadCompleteRequestSchema, releaseUploadCompleteResponseSchema, releaseUploadFailResponseSchema, releaseUploadInitRequestSchema, releaseUploadInitResponseSchema, releasesListQuerySchema, releasesListResponseSchema, serviceDetailResponseSchema, serviceSchema, serviceUsageResponseSchema, shareLinkCreateRequestSchema, shareLinkCreateResponseSchema, shareLinkDeleteResponseSchema, shareLinkDetailResponseSchema, shareLinkListResponseSchema, shareLinkSchema, shareLinkUpdateRequestSchema, shareLinkUpdateResponseSchema, sharesCreateRequestSchema, unixTimestamp, unlockPublicFile, uploadAppwriteInitRequestSchema, uploadAppwriteInitResponseSchema, uploadCompleteResponseSchema, uploadDestinationSchema, uploadFailResponseSchema, uploadLifecycleRequestSchema, uploadR2InitRequestSchema, uploadR2InitResponseSchema, uploadRecordDetailResponseSchema, uploadRecordSchema, uploadStatusSchema, uploadTypeSchema, uploadsListResponseSchema };
@@ -0,0 +1,84 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/v2/legacy-draft.d.ts
4
+ declare const fileRecordsListV2QuerySchema: z.ZodObject<{
5
+ folder_id: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodString>>, z.ZodTransform<string | null | undefined, string | null | undefined>>;
6
+ is_trashed: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
7
+ false: "false";
8
+ true: "true";
9
+ }>, z.ZodTransform<boolean, "false" | "true">>>;
10
+ search: z.ZodOptional<z.ZodString>;
11
+ mime_type: z.ZodOptional<z.ZodString>;
12
+ sort_by: z.ZodOptional<z.ZodEnum<{
13
+ created_at: "created_at";
14
+ name: "name";
15
+ size: "size";
16
+ }>>;
17
+ sort_dir: z.ZodOptional<z.ZodEnum<{
18
+ asc: "asc";
19
+ desc: "desc";
20
+ }>>;
21
+ cursor: z.ZodOptional<z.ZodString>;
22
+ limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
23
+ }, z.core.$strip>;
24
+ type FileRecordsListV2Query = z.infer<typeof fileRecordsListV2QuerySchema>;
25
+ declare const bulkFileIdsSchema: z.ZodObject<{
26
+ ids: z.ZodArray<z.ZodString>;
27
+ }, z.core.$strip>;
28
+ type BulkFileIds = z.infer<typeof bulkFileIdsSchema>;
29
+ declare const bulkFileMoveRequestSchema: z.ZodObject<{
30
+ ids: z.ZodArray<z.ZodString>;
31
+ folder_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
32
+ }, z.core.$strip>;
33
+ type BulkFileMoveRequest = z.infer<typeof bulkFileMoveRequestSchema>;
34
+ declare const bulkOperationResponseSchema: z.ZodObject<{
35
+ success: z.ZodBoolean;
36
+ processed_count: z.ZodNumber;
37
+ failed_ids: z.ZodOptional<z.ZodArray<z.ZodString>>;
38
+ }, z.core.$strip>;
39
+ type BulkOperationResponse = z.infer<typeof bulkOperationResponseSchema>;
40
+ declare const folderListV2QuerySchema: z.ZodObject<{
41
+ parent_id: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodString>>, z.ZodTransform<string | null | undefined, string | null | undefined>>;
42
+ is_trashed: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
43
+ false: "false";
44
+ true: "true";
45
+ }>, z.ZodTransform<boolean, "false" | "true">>>;
46
+ search: z.ZodOptional<z.ZodString>;
47
+ sort_by: z.ZodOptional<z.ZodEnum<{
48
+ created_at: "created_at";
49
+ name: "name";
50
+ }>>;
51
+ sort_dir: z.ZodOptional<z.ZodEnum<{
52
+ asc: "asc";
53
+ desc: "desc";
54
+ }>>;
55
+ cursor: z.ZodOptional<z.ZodString>;
56
+ limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
57
+ }, z.core.$strip>;
58
+ type FolderListV2Query = z.infer<typeof folderListV2QuerySchema>;
59
+ declare const bulkFolderIdsSchema: z.ZodObject<{
60
+ ids: z.ZodArray<z.ZodString>;
61
+ }, z.core.$strip>;
62
+ type BulkFolderIds = z.infer<typeof bulkFolderIdsSchema>;
63
+ declare const bulkFolderMoveRequestSchema: z.ZodObject<{
64
+ ids: z.ZodArray<z.ZodString>;
65
+ parent_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
66
+ }, z.core.$strip>;
67
+ type BulkFolderMoveRequest = z.infer<typeof bulkFolderMoveRequestSchema>;
68
+ declare const folderBreadcrumbsResponseSchema: z.ZodObject<{
69
+ breadcrumbs: z.ZodArray<z.ZodObject<{
70
+ id: z.ZodString;
71
+ service_id: z.ZodString;
72
+ user_id: z.ZodString;
73
+ parent_id: z.ZodNullable<z.ZodString>;
74
+ name: z.ZodString;
75
+ color_tag: z.ZodNullable<z.ZodString>;
76
+ is_trashed: z.ZodBoolean;
77
+ trashed_at: z.ZodNullable<z.ZodNumber>;
78
+ created_at: z.ZodNumber;
79
+ updated_at: z.ZodNumber;
80
+ }, z.core.$strip>>;
81
+ }, z.core.$strip>;
82
+ type FolderBreadcrumbsResponse = z.infer<typeof folderBreadcrumbsResponseSchema>;
83
+ //#endregion
84
+ export { BulkOperationResponse as a, FolderListV2Query as c, bulkFolderIdsSchema as d, bulkFolderMoveRequestSchema as f, folderListV2QuerySchema as g, folderBreadcrumbsResponseSchema as h, BulkFolderMoveRequest as i, bulkFileIdsSchema as l, fileRecordsListV2QuerySchema as m, BulkFileMoveRequest as n, FileRecordsListV2Query as o, bulkOperationResponseSchema as p, BulkFolderIds as r, FolderBreadcrumbsResponse as s, BulkFileIds as t, bulkFileMoveRequestSchema as u };