@kaiz11/stack-client 0.0.14

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.
Files changed (263) hide show
  1. package/LICENSE +32 -0
  2. package/README.md +586 -0
  3. package/dist/accounts/accounts-client.d.ts +188 -0
  4. package/dist/accounts/accounts-client.d.ts.map +1 -0
  5. package/dist/accounts/accounts-client.js +264 -0
  6. package/dist/accounts/accounts-client.js.map +1 -0
  7. package/dist/accounts/index.d.ts +8 -0
  8. package/dist/accounts/index.d.ts.map +1 -0
  9. package/dist/accounts/index.js +8 -0
  10. package/dist/accounts/index.js.map +1 -0
  11. package/dist/accounts/mock-accounts.d.ts +90 -0
  12. package/dist/accounts/mock-accounts.d.ts.map +1 -0
  13. package/dist/accounts/mock-accounts.js +434 -0
  14. package/dist/accounts/mock-accounts.js.map +1 -0
  15. package/dist/accounts/types.d.ts +180 -0
  16. package/dist/accounts/types.d.ts.map +1 -0
  17. package/dist/accounts/types.js +59 -0
  18. package/dist/accounts/types.js.map +1 -0
  19. package/dist/auth/auth-client.d.ts +224 -0
  20. package/dist/auth/auth-client.d.ts.map +1 -0
  21. package/dist/auth/auth-client.js +230 -0
  22. package/dist/auth/auth-client.js.map +1 -0
  23. package/dist/auth/base-auth.d.ts +44 -0
  24. package/dist/auth/base-auth.d.ts.map +1 -0
  25. package/dist/auth/base-auth.js +55 -0
  26. package/dist/auth/base-auth.js.map +1 -0
  27. package/dist/auth/index.d.ts +11 -0
  28. package/dist/auth/index.d.ts.map +1 -0
  29. package/dist/auth/index.js +11 -0
  30. package/dist/auth/index.js.map +1 -0
  31. package/dist/auth/methods/admin.d.ts +59 -0
  32. package/dist/auth/methods/admin.d.ts.map +1 -0
  33. package/dist/auth/methods/admin.js +55 -0
  34. package/dist/auth/methods/admin.js.map +1 -0
  35. package/dist/auth/methods/index.d.ts +9 -0
  36. package/dist/auth/methods/index.d.ts.map +1 -0
  37. package/dist/auth/methods/index.js +8 -0
  38. package/dist/auth/methods/index.js.map +1 -0
  39. package/dist/auth/methods/magic-link.d.ts +27 -0
  40. package/dist/auth/methods/magic-link.d.ts.map +1 -0
  41. package/dist/auth/methods/magic-link.js +37 -0
  42. package/dist/auth/methods/magic-link.js.map +1 -0
  43. package/dist/auth/methods/mfa.d.ts +92 -0
  44. package/dist/auth/methods/mfa.d.ts.map +1 -0
  45. package/dist/auth/methods/mfa.js +153 -0
  46. package/dist/auth/methods/mfa.js.map +1 -0
  47. package/dist/auth/methods/oauth.d.ts +62 -0
  48. package/dist/auth/methods/oauth.d.ts.map +1 -0
  49. package/dist/auth/methods/oauth.js +165 -0
  50. package/dist/auth/methods/oauth.js.map +1 -0
  51. package/dist/auth/methods/otp.d.ts +43 -0
  52. package/dist/auth/methods/otp.d.ts.map +1 -0
  53. package/dist/auth/methods/otp.js +66 -0
  54. package/dist/auth/methods/otp.js.map +1 -0
  55. package/dist/auth/methods/password.d.ts +64 -0
  56. package/dist/auth/methods/password.d.ts.map +1 -0
  57. package/dist/auth/methods/password.js +116 -0
  58. package/dist/auth/methods/password.js.map +1 -0
  59. package/dist/auth/methods/recovery.d.ts +62 -0
  60. package/dist/auth/methods/recovery.d.ts.map +1 -0
  61. package/dist/auth/methods/recovery.js +100 -0
  62. package/dist/auth/methods/recovery.js.map +1 -0
  63. package/dist/auth/mock-auth.d.ts +135 -0
  64. package/dist/auth/mock-auth.d.ts.map +1 -0
  65. package/dist/auth/mock-auth.js +417 -0
  66. package/dist/auth/mock-auth.js.map +1 -0
  67. package/dist/auth/server/helpers.d.ts +215 -0
  68. package/dist/auth/server/helpers.d.ts.map +1 -0
  69. package/dist/auth/server/helpers.js +241 -0
  70. package/dist/auth/server/helpers.js.map +1 -0
  71. package/dist/auth/server/index.d.ts +24 -0
  72. package/dist/auth/server/index.d.ts.map +1 -0
  73. package/dist/auth/server/index.js +40 -0
  74. package/dist/auth/server/index.js.map +1 -0
  75. package/dist/auth/server/middleware.d.ts +305 -0
  76. package/dist/auth/server/middleware.d.ts.map +1 -0
  77. package/dist/auth/server/middleware.js +405 -0
  78. package/dist/auth/server/middleware.js.map +1 -0
  79. package/dist/auth/server/verify.d.ts +184 -0
  80. package/dist/auth/server/verify.d.ts.map +1 -0
  81. package/dist/auth/server/verify.js +222 -0
  82. package/dist/auth/server/verify.js.map +1 -0
  83. package/dist/auth/token-manager.d.ts +94 -0
  84. package/dist/auth/token-manager.d.ts.map +1 -0
  85. package/dist/auth/token-manager.js +231 -0
  86. package/dist/auth/token-manager.js.map +1 -0
  87. package/dist/auth/types.d.ts +412 -0
  88. package/dist/auth/types.d.ts.map +1 -0
  89. package/dist/auth/types.js +66 -0
  90. package/dist/auth/types.js.map +1 -0
  91. package/dist/auth/user/identities.d.ts +62 -0
  92. package/dist/auth/user/identities.d.ts.map +1 -0
  93. package/dist/auth/user/identities.js +88 -0
  94. package/dist/auth/user/identities.js.map +1 -0
  95. package/dist/auth/user/index.d.ts +4 -0
  96. package/dist/auth/user/index.d.ts.map +1 -0
  97. package/dist/auth/user/index.js +4 -0
  98. package/dist/auth/user/index.js.map +1 -0
  99. package/dist/auth/user/user.d.ts +64 -0
  100. package/dist/auth/user/user.d.ts.map +1 -0
  101. package/dist/auth/user/user.js +105 -0
  102. package/dist/auth/user/user.js.map +1 -0
  103. package/dist/auth/user/verification.d.ts +49 -0
  104. package/dist/auth/user/verification.d.ts.map +1 -0
  105. package/dist/auth/user/verification.js +71 -0
  106. package/dist/auth/user/verification.js.map +1 -0
  107. package/dist/cli/browser.d.ts +11 -0
  108. package/dist/cli/browser.d.ts.map +1 -0
  109. package/dist/cli/browser.js +35 -0
  110. package/dist/cli/browser.js.map +1 -0
  111. package/dist/cli/callback-server.d.ts +30 -0
  112. package/dist/cli/callback-server.d.ts.map +1 -0
  113. package/dist/cli/callback-server.js +100 -0
  114. package/dist/cli/callback-server.js.map +1 -0
  115. package/dist/cli/file-token-store.d.ts +79 -0
  116. package/dist/cli/file-token-store.d.ts.map +1 -0
  117. package/dist/cli/file-token-store.js +138 -0
  118. package/dist/cli/file-token-store.js.map +1 -0
  119. package/dist/cli/index.d.ts +33 -0
  120. package/dist/cli/index.d.ts.map +1 -0
  121. package/dist/cli/index.js +38 -0
  122. package/dist/cli/index.js.map +1 -0
  123. package/dist/cli/oauth.d.ts +67 -0
  124. package/dist/cli/oauth.d.ts.map +1 -0
  125. package/dist/cli/oauth.js +101 -0
  126. package/dist/cli/oauth.js.map +1 -0
  127. package/dist/cli/pkce.d.ts +35 -0
  128. package/dist/cli/pkce.d.ts.map +1 -0
  129. package/dist/cli/pkce.js +43 -0
  130. package/dist/cli/pkce.js.map +1 -0
  131. package/dist/client.d.ts +22 -0
  132. package/dist/client.d.ts.map +1 -0
  133. package/dist/client.js +99 -0
  134. package/dist/client.js.map +1 -0
  135. package/dist/db/client.d.ts +9 -0
  136. package/dist/db/client.d.ts.map +1 -0
  137. package/dist/db/client.js +19 -0
  138. package/dist/db/client.js.map +1 -0
  139. package/dist/db/errors.d.ts +19 -0
  140. package/dist/db/errors.d.ts.map +1 -0
  141. package/dist/db/errors.js +57 -0
  142. package/dist/db/errors.js.map +1 -0
  143. package/dist/db/index.d.ts +7 -0
  144. package/dist/db/index.d.ts.map +1 -0
  145. package/dist/db/index.js +5 -0
  146. package/dist/db/index.js.map +1 -0
  147. package/dist/db/mock.d.ts +28 -0
  148. package/dist/db/mock.d.ts.map +1 -0
  149. package/dist/db/mock.js +459 -0
  150. package/dist/db/mock.js.map +1 -0
  151. package/dist/db/types.d.ts +73 -0
  152. package/dist/db/types.d.ts.map +1 -0
  153. package/dist/db/types.js +2 -0
  154. package/dist/db/types.js.map +1 -0
  155. package/dist/index.d.ts +21 -0
  156. package/dist/index.d.ts.map +1 -0
  157. package/dist/index.js +20 -0
  158. package/dist/index.js.map +1 -0
  159. package/dist/lib/errors.d.ts +33 -0
  160. package/dist/lib/errors.d.ts.map +1 -0
  161. package/dist/lib/errors.js +76 -0
  162. package/dist/lib/errors.js.map +1 -0
  163. package/dist/lib/http.d.ts +81 -0
  164. package/dist/lib/http.d.ts.map +1 -0
  165. package/dist/lib/http.js +163 -0
  166. package/dist/lib/http.js.map +1 -0
  167. package/dist/lib/keys.d.ts +87 -0
  168. package/dist/lib/keys.d.ts.map +1 -0
  169. package/dist/lib/keys.js +147 -0
  170. package/dist/lib/keys.js.map +1 -0
  171. package/dist/lib/paths.d.ts +37 -0
  172. package/dist/lib/paths.d.ts.map +1 -0
  173. package/dist/lib/paths.js +49 -0
  174. package/dist/lib/paths.js.map +1 -0
  175. package/dist/lib/token-store.d.ts +42 -0
  176. package/dist/lib/token-store.d.ts.map +1 -0
  177. package/dist/lib/token-store.js +75 -0
  178. package/dist/lib/token-store.js.map +1 -0
  179. package/dist/mocks/handlers.d.ts +29 -0
  180. package/dist/mocks/handlers.d.ts.map +1 -0
  181. package/dist/mocks/handlers.js +79 -0
  182. package/dist/mocks/handlers.js.map +1 -0
  183. package/dist/mocks/index.d.ts +5 -0
  184. package/dist/mocks/index.d.ts.map +1 -0
  185. package/dist/mocks/index.js +9 -0
  186. package/dist/mocks/index.js.map +1 -0
  187. package/dist/mocks/responses.d.ts +76 -0
  188. package/dist/mocks/responses.d.ts.map +1 -0
  189. package/dist/mocks/responses.js +91 -0
  190. package/dist/mocks/responses.js.map +1 -0
  191. package/dist/mocks/server.d.ts +7 -0
  192. package/dist/mocks/server.d.ts.map +1 -0
  193. package/dist/mocks/server.js +9 -0
  194. package/dist/mocks/server.js.map +1 -0
  195. package/dist/mocks/state.d.ts +86 -0
  196. package/dist/mocks/state.d.ts.map +1 -0
  197. package/dist/mocks/state.js +77 -0
  198. package/dist/mocks/state.js.map +1 -0
  199. package/dist/storage/bucket-ref.d.ts +183 -0
  200. package/dist/storage/bucket-ref.d.ts.map +1 -0
  201. package/dist/storage/bucket-ref.js +529 -0
  202. package/dist/storage/bucket-ref.js.map +1 -0
  203. package/dist/storage/errors.d.ts +27 -0
  204. package/dist/storage/errors.d.ts.map +1 -0
  205. package/dist/storage/errors.js +89 -0
  206. package/dist/storage/errors.js.map +1 -0
  207. package/dist/storage/index.d.ts +13 -0
  208. package/dist/storage/index.d.ts.map +1 -0
  209. package/dist/storage/index.js +11 -0
  210. package/dist/storage/index.js.map +1 -0
  211. package/dist/storage/interface.d.ts +245 -0
  212. package/dist/storage/interface.d.ts.map +1 -0
  213. package/dist/storage/interface.js +2 -0
  214. package/dist/storage/interface.js.map +1 -0
  215. package/dist/storage/mock-storage.d.ts +67 -0
  216. package/dist/storage/mock-storage.d.ts.map +1 -0
  217. package/dist/storage/mock-storage.js +478 -0
  218. package/dist/storage/mock-storage.js.map +1 -0
  219. package/dist/storage/policies-client.d.ts +77 -0
  220. package/dist/storage/policies-client.d.ts.map +1 -0
  221. package/dist/storage/policies-client.js +115 -0
  222. package/dist/storage/policies-client.js.map +1 -0
  223. package/dist/storage/policy-templates.d.ts +6 -0
  224. package/dist/storage/policy-templates.d.ts.map +1 -0
  225. package/dist/storage/policy-templates.js +290 -0
  226. package/dist/storage/policy-templates.js.map +1 -0
  227. package/dist/storage/policy-types.d.ts +98 -0
  228. package/dist/storage/policy-types.d.ts.map +1 -0
  229. package/dist/storage/policy-types.js +20 -0
  230. package/dist/storage/policy-types.js.map +1 -0
  231. package/dist/storage/storage-client.d.ts +32 -0
  232. package/dist/storage/storage-client.d.ts.map +1 -0
  233. package/dist/storage/storage-client.js +94 -0
  234. package/dist/storage/storage-client.js.map +1 -0
  235. package/dist/storage/tus-upload.d.ts +56 -0
  236. package/dist/storage/tus-upload.d.ts.map +1 -0
  237. package/dist/storage/tus-upload.js +236 -0
  238. package/dist/storage/tus-upload.js.map +1 -0
  239. package/dist/storage/types.d.ts +335 -0
  240. package/dist/storage/types.d.ts.map +1 -0
  241. package/dist/storage/types.js +39 -0
  242. package/dist/storage/types.js.map +1 -0
  243. package/dist/test/auth/helpers.d.ts +33 -0
  244. package/dist/test/auth/helpers.d.ts.map +1 -0
  245. package/dist/test/auth/helpers.js +80 -0
  246. package/dist/test/auth/helpers.js.map +1 -0
  247. package/dist/test/helpers/jwt.d.ts +61 -0
  248. package/dist/test/helpers/jwt.d.ts.map +1 -0
  249. package/dist/test/helpers/jwt.js +132 -0
  250. package/dist/test/helpers/jwt.js.map +1 -0
  251. package/dist/test/helpers/mailpit.d.ts +61 -0
  252. package/dist/test/helpers/mailpit.d.ts.map +1 -0
  253. package/dist/test/helpers/mailpit.js +107 -0
  254. package/dist/test/helpers/mailpit.js.map +1 -0
  255. package/dist/test/setup.d.ts +2 -0
  256. package/dist/test/setup.d.ts.map +1 -0
  257. package/dist/test/setup.js +17 -0
  258. package/dist/test/setup.js.map +1 -0
  259. package/dist/types.d.ts +96 -0
  260. package/dist/types.d.ts.map +1 -0
  261. package/dist/types.js +5 -0
  262. package/dist/types.js.map +1 -0
  263. package/package.json +78 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/storage/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export type { IBucketRef, IStorageClient } from "./interface.js";
2
+ export { StorageClient } from "./storage-client.js";
3
+ export type { StorageClientConfig } from "./storage-client.js";
4
+ export { MockStorageClient, mockStorageState, storageRequestCounts, } from "./mock-storage.js";
5
+ export type { MockStorageClientConfig, MockStorageState, } from "./mock-storage.js";
6
+ export { StorageError } from "./errors.js";
7
+ export type { ApiBucket, Bucket, CreateBucketOptions, UpdateBucketOptions, ApiObject, ObjectMetadata, StorageObject, FileBody, UploadOptions, UploadProgress, UploadResult, DownloadOptions, ImageTransformOptions, ListOptions, ListV2Options, ListV2Result, PublicUrlOptions, SignedUploadUrl, SignedUploadUrlOptions, SignedUrl, SignedUrlOptions, CopyOptions, CopyResult, MoveOptions, TusProgress, TusUpload, TusUploadOptions, } from "./types.js";
8
+ export { normalizeBucket, normalizeObject } from "./types.js";
9
+ export { StoragePoliciesClient } from "./policies-client.js";
10
+ export type { IStoragePoliciesClient, StoragePoliciesClientConfig, } from "./policies-client.js";
11
+ export type { PolicyCommand, PolicyAction, PolicyTemplate, StoragePolicyInput, StoragePolicy, StoragePolicySet, } from "./policy-types.js";
12
+ export { generatePolicySet } from "./policy-templates.js";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGjE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,YAAY,EAEV,SAAS,EACT,MAAM,EACN,mBAAmB,EACnB,mBAAmB,EAEnB,SAAS,EACT,cAAc,EACd,aAAa,EAEb,QAAQ,EACR,aAAa,EACb,cAAc,EACd,YAAY,EAEZ,eAAe,EACf,qBAAqB,EAErB,WAAW,EACX,aAAa,EACb,YAAY,EAEZ,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,SAAS,EACT,gBAAgB,EAEhB,WAAW,EACX,UAAU,EACV,WAAW,EAEX,WAAW,EACX,SAAS,EACT,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EACV,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACV,aAAa,EACb,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,11 @@
1
+ // Implementations
2
+ export { StorageClient } from "./storage-client.js";
3
+ export { MockStorageClient, mockStorageState, storageRequestCounts, } from "./mock-storage.js";
4
+ // Errors
5
+ export { StorageError } from "./errors.js";
6
+ // Normalizers (for advanced use)
7
+ export { normalizeBucket, normalizeObject } from "./types.js";
8
+ // Policies
9
+ export { StoragePoliciesClient } from "./policies-client.js";
10
+ export { generatePolicySet } from "./policy-templates.js";
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAGA,kBAAkB;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAM3B,SAAS;AACT,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAyC3C,iCAAiC;AACjC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE9D,WAAW;AACX,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAe7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,245 @@
1
+ import type { Bucket, CreateBucketOptions, UpdateBucketOptions, StorageObject, UploadOptions, UploadResult, DownloadOptions, ListOptions, ListV2Options, ListV2Result, SignedUrlOptions, SignedUploadUrlOptions, SignedUrl, SignedUploadUrl, MoveOptions, CopyOptions, CopyResult, FileBody, PublicUrlOptions, TusUploadOptions, TusUpload } from "./types.js";
2
+ import type { IStoragePoliciesClient } from "./policies-client.js";
3
+ /**
4
+ * Bucket reference for fluent object operations
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * const result = await client.storage
9
+ * .from("avatars")
10
+ * .upload("users/123/avatar.png", file, { upsert: true });
11
+ * ```
12
+ */
13
+ export interface IBucketRef {
14
+ /**
15
+ * Upload a file to the bucket
16
+ *
17
+ * @param path - Object path within the bucket
18
+ * @param file - File content to upload
19
+ * @param options - Upload options
20
+ * @returns Upload result with id and path
21
+ */
22
+ upload(path: string, file: FileBody, options?: UploadOptions): Promise<UploadResult>;
23
+ /**
24
+ * Download a file from the bucket
25
+ *
26
+ * @param path - Object path within the bucket
27
+ * @param options - Download options (transforms, etc.)
28
+ * @returns File content as Blob
29
+ */
30
+ download(path: string, options?: DownloadOptions): Promise<Blob>;
31
+ /**
32
+ * Get the public URL for an object (synchronous)
33
+ *
34
+ * @param path - Object path within the bucket
35
+ * @param options - URL options (transforms, download filename)
36
+ * @returns Full public URL
37
+ */
38
+ getPublicUrl(path: string, options?: PublicUrlOptions): string;
39
+ /**
40
+ * Create a signed URL for downloading an object
41
+ *
42
+ * @param path - Object path within the bucket
43
+ * @param options - Signed URL options (expiration, transforms)
44
+ * @returns Signed URL result
45
+ */
46
+ createSignedUrl(path: string, options: SignedUrlOptions): Promise<SignedUrl>;
47
+ /**
48
+ * Create signed URLs for multiple objects
49
+ *
50
+ * @param paths - Array of object paths
51
+ * @param options - Signed URL options (same for all)
52
+ * @returns Array of signed URL results
53
+ */
54
+ createSignedUrls(paths: string[], options: SignedUrlOptions): Promise<SignedUrl[]>;
55
+ /**
56
+ * Create a signed URL for uploading a file
57
+ *
58
+ * @param path - Object path within the bucket
59
+ * @param options - Signed upload URL options
60
+ * @returns Signed upload URL with token
61
+ */
62
+ createSignedUploadUrl(path: string, options?: SignedUploadUrlOptions): Promise<SignedUploadUrl>;
63
+ /**
64
+ * Upload a file using a signed upload URL
65
+ *
66
+ * @param signedUrl - The signed URL for upload
67
+ * @param token - The upload token
68
+ * @param file - File content to upload
69
+ * @param options - Upload options
70
+ * @returns Upload result
71
+ */
72
+ uploadToSignedUrl(signedUrl: string, token: string, file: FileBody, options?: UploadOptions): Promise<UploadResult>;
73
+ /**
74
+ * Create a resumable upload using TUS protocol
75
+ *
76
+ * Use this for large files that may need pause/resume capability
77
+ * or progress tracking.
78
+ *
79
+ * @param path - Object path within the bucket
80
+ * @param file - File content to upload
81
+ * @param options - TUS upload options (chunk size, callbacks)
82
+ * @returns TUS upload controller
83
+ *
84
+ * @example
85
+ * ```typescript
86
+ * const upload = client.storage
87
+ * .from("videos")
88
+ * .createResumableUpload("video.mp4", file, {
89
+ * chunkSize: 6 * 1024 * 1024, // 6MB
90
+ * onProgress: ({ percentage }) => console.log(`${percentage}%`),
91
+ * });
92
+ *
93
+ * const result = await upload.start();
94
+ * // Or: upload.pause(); await upload.resume();
95
+ * ```
96
+ */
97
+ createResumableUpload(path: string, file: FileBody, options?: TusUploadOptions): TusUpload;
98
+ /**
99
+ * List objects in the bucket (v1 - offset pagination)
100
+ *
101
+ * @param options - List options (prefix, pagination, sort)
102
+ * @returns Array of storage objects
103
+ */
104
+ list(options?: ListOptions): Promise<StorageObject[]>;
105
+ /**
106
+ * List objects in the bucket (v2 - cursor pagination)
107
+ *
108
+ * @param options - List options (prefix, cursor, sort)
109
+ * @returns List result with objects, prefixes, and next cursor
110
+ */
111
+ listV2(options?: ListV2Options): Promise<ListV2Result>;
112
+ /**
113
+ * Delete objects from the bucket
114
+ *
115
+ * @param paths - Array of object paths to delete
116
+ * @returns Array of deleted objects
117
+ */
118
+ remove(paths: string[]): Promise<StorageObject[]>;
119
+ /**
120
+ * Move an object to a new location
121
+ *
122
+ * @param fromPath - Source object path
123
+ * @param toPath - Destination object path
124
+ * @param options - Move options (destination bucket)
125
+ */
126
+ move(fromPath: string, toPath: string, options?: MoveOptions): Promise<void>;
127
+ /**
128
+ * Copy an object to a new location
129
+ *
130
+ * @param fromPath - Source object path
131
+ * @param toPath - Destination object path
132
+ * @param options - Copy options (destination bucket, metadata)
133
+ * @returns Copy result with new object info
134
+ */
135
+ copy(fromPath: string, toPath: string, options?: CopyOptions): Promise<CopyResult>;
136
+ /**
137
+ * Get object metadata without downloading content
138
+ *
139
+ * @param path - Object path within the bucket
140
+ * @returns Object metadata
141
+ */
142
+ getInfo(path: string): Promise<StorageObject>;
143
+ /**
144
+ * Check if an object exists in the bucket
145
+ *
146
+ * @param path - Object path within the bucket
147
+ * @returns True if object exists, false otherwise
148
+ */
149
+ exists(path: string): Promise<boolean>;
150
+ }
151
+ /**
152
+ * Storage client interface
153
+ *
154
+ * @example
155
+ * ```typescript
156
+ * const client = createTenantClient({
157
+ * baseUrl: "https://stack.zenku.app",
158
+ * tenantId: "acme-corp",
159
+ * });
160
+ *
161
+ * // Bucket operations
162
+ * const bucket = await client.storage.createBucket({ name: "avatars", public: true });
163
+ *
164
+ * // Object operations via fluent API
165
+ * await client.storage.from("avatars").upload("user.png", file);
166
+ * ```
167
+ */
168
+ export interface IStorageClient {
169
+ /**
170
+ * List all buckets
171
+ *
172
+ * @returns Array of buckets
173
+ */
174
+ listBuckets(): Promise<Bucket[]>;
175
+ /**
176
+ * Get a bucket by ID
177
+ *
178
+ * @param id - Bucket ID
179
+ * @returns Bucket metadata
180
+ */
181
+ getBucket(id: string): Promise<Bucket>;
182
+ /**
183
+ * Create a new bucket
184
+ *
185
+ * @param options - Bucket options (name, public, limits)
186
+ * @returns Created bucket
187
+ */
188
+ createBucket(options: CreateBucketOptions): Promise<Bucket>;
189
+ /**
190
+ * Update a bucket's configuration
191
+ *
192
+ * @param id - Bucket ID
193
+ * @param options - Options to update
194
+ * @returns Updated bucket
195
+ */
196
+ updateBucket(id: string, options: UpdateBucketOptions): Promise<Bucket>;
197
+ /**
198
+ * Delete a bucket (must be empty)
199
+ *
200
+ * @param id - Bucket ID
201
+ */
202
+ deleteBucket(id: string): Promise<void>;
203
+ /**
204
+ * Empty a bucket (delete all objects)
205
+ *
206
+ * @param id - Bucket ID
207
+ */
208
+ emptyBucket(id: string): Promise<void>;
209
+ /**
210
+ * Get a bucket reference for object operations
211
+ *
212
+ * @param bucketId - Bucket ID
213
+ * @returns Bucket reference with object operations
214
+ *
215
+ * @example
216
+ * ```typescript
217
+ * const { path } = await client.storage
218
+ * .from("avatars")
219
+ * .upload("user.png", file, { upsert: true });
220
+ * ```
221
+ */
222
+ from(bucketId: string): IBucketRef;
223
+ /**
224
+ * Storage policies client for RLS management
225
+ *
226
+ * Only available when client is configured with accountId.
227
+ * Use for managing RLS policies on storage.objects table.
228
+ *
229
+ * @example
230
+ * ```typescript
231
+ * // Apply owner-only template
232
+ * await client.storage.policies.applyTemplate("avatars", "ownerOnly");
233
+ *
234
+ * // Create custom policy
235
+ * await client.storage.policies.create({
236
+ * name: "custom_select",
237
+ * command: "SELECT",
238
+ * roles: ["authenticated"],
239
+ * definition: "bucket_id = 'avatars' AND owner_id = auth.uid()::text",
240
+ * });
241
+ * ```
242
+ */
243
+ policies: IStoragePoliciesClient | null;
244
+ }
245
+ //# sourceMappingURL=interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/storage/interface.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../src/storage/interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,67 @@
1
+ import { StorageError } from "./errors.js";
2
+ import type { IBucketRef, IStorageClient } from "./interface.js";
3
+ import type { Bucket, CreateBucketOptions, StorageObject, UpdateBucketOptions } from "./types.js";
4
+ /**
5
+ * Mock storage state for testing
6
+ */
7
+ export interface MockStorageState {
8
+ /** Stored buckets */
9
+ buckets: Map<string, Bucket>;
10
+ /** Stored objects (key: bucketId/path) */
11
+ objects: Map<string, {
12
+ data: Blob;
13
+ metadata: StorageObject;
14
+ }>;
15
+ /** Whether uploads should fail */
16
+ shouldFailUpload: boolean;
17
+ /** Whether downloads should fail */
18
+ shouldFailDownload: boolean;
19
+ /** Custom upload error */
20
+ uploadError: StorageError | null;
21
+ /** Custom download error */
22
+ downloadError: StorageError | null;
23
+ /** Reset all mock state */
24
+ reset(): void;
25
+ }
26
+ /**
27
+ * Global mock storage state
28
+ */
29
+ export declare const mockStorageState: MockStorageState;
30
+ /**
31
+ * Request counts for testing
32
+ */
33
+ export declare const storageRequestCounts: {
34
+ upload: number;
35
+ download: number;
36
+ list: number;
37
+ delete: number;
38
+ createBucket: number;
39
+ deleteBucket: number;
40
+ move: number;
41
+ copy: number;
42
+ createSignedUrl: number;
43
+ reset(): void;
44
+ };
45
+ /**
46
+ * Mock storage client configuration
47
+ */
48
+ export interface MockStorageClientConfig {
49
+ baseUrl: string;
50
+ }
51
+ /**
52
+ * Mock storage client for testing
53
+ */
54
+ export declare class MockStorageClient implements IStorageClient {
55
+ private readonly baseUrl;
56
+ /** Policies client (always null in mock mode) */
57
+ readonly policies: null;
58
+ constructor(config: MockStorageClientConfig);
59
+ listBuckets(): Promise<Bucket[]>;
60
+ getBucket(id: string): Promise<Bucket>;
61
+ createBucket(options: CreateBucketOptions): Promise<Bucket>;
62
+ updateBucket(id: string, options: UpdateBucketOptions): Promise<Bucket>;
63
+ deleteBucket(id: string): Promise<void>;
64
+ emptyBucket(id: string): Promise<void>;
65
+ from(bucketId: string): IBucketRef;
66
+ }
67
+ //# sourceMappingURL=mock-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-storage.d.ts","sourceRoot":"","sources":["../../src/storage/mock-storage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EACV,MAAM,EAGN,mBAAmB,EAYnB,aAAa,EAGb,mBAAmB,EAGpB,MAAM,YAAY,CAAC;AAMpB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qBAAqB;IACrB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,0CAA0C;IAC1C,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,aAAa,CAAA;KAAE,CAAC,CAAC;IAC9D,kCAAkC;IAClC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oCAAoC;IACpC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,0BAA0B;IAC1B,WAAW,EAAE,YAAY,GAAG,IAAI,CAAC;IACjC,4BAA4B;IAC5B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAC;IACnC,2BAA2B;IAC3B,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,gBAe9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;CAqBhC,CAAC;AA6cF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,OAAQ;gBAEb,MAAM,EAAE,uBAAuB;IAIrC,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAKhC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAWtC,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAyB3D,YAAY,CAChB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC;IA0BZ,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBvC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe5C,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;CAGnC"}