@visulima/storage 1.0.9 → 1.0.11

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 (174) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/adapter/nuxt/module.d.ts +9 -8
  3. package/dist/ai/ai-sdk/index.d.ts +52 -59
  4. package/dist/ai/claude/index.d.ts +105 -119
  5. package/dist/ai/openai/index.d.ts +87 -99
  6. package/dist/ai/tanstack/index.d.ts +54 -61
  7. package/dist/handler/http/fetch/index.d.ts +202 -201
  8. package/dist/handler/http/fetch/index.js +1 -1
  9. package/dist/handler/http/hono/index.d.ts +60 -59
  10. package/dist/handler/http/hono/index.js +1 -1
  11. package/dist/handler/http/nextjs/index.d.ts +55 -54
  12. package/dist/handler/http/nextjs/index.js +1 -1
  13. package/dist/handler/http/node/index.d.ts +234 -246
  14. package/dist/handler/http/node/index.js +1 -1
  15. package/dist/handler/http/solid-start/index.d.ts +55 -54
  16. package/dist/handler/http/solid-start/index.js +1 -1
  17. package/dist/index.d.ts +71 -70
  18. package/dist/index.js +1 -1
  19. package/dist/packem_shared/{AbstractBaseStorage-CiPEMcuo.js → AbstractBaseStorage-CLsYmMZg.js} +1 -1
  20. package/dist/packem_shared/AwsLightStorage-DGSPFUqr.js +1 -0
  21. package/dist/packem_shared/AzureStorage-DvKk_hhz.js +1 -0
  22. package/dist/packem_shared/BoxMetaStorage-CJsyeQ63.js +1 -0
  23. package/dist/packem_shared/{BoxStorage-DbGqBLux.js → BoxStorage-CmM95wi2.js} +1 -1
  24. package/dist/packem_shared/BunS3MetaStorage-CJsyeQ63.js +1 -0
  25. package/dist/packem_shared/{BunS3Storage-DNvimm9e.js → BunS3Storage-B_roVJ29.js} +1 -1
  26. package/dist/packem_shared/BunnyMetaStorage-CJsyeQ63.js +1 -0
  27. package/dist/packem_shared/{BunnyStorage-C7d0opLL.js → BunnyStorage-eZ1QDVaY.js} +1 -1
  28. package/dist/packem_shared/CloudinaryMetaStorage-Bv_YCZ0Q.js +1 -0
  29. package/dist/packem_shared/{CloudinaryStorage-Dc3XA2lP.js → CloudinaryStorage-CpH2f0Fv.js} +1 -1
  30. package/dist/packem_shared/DiskStorage-DzjjqCzo.js +1 -0
  31. package/dist/packem_shared/{DiskStorageWithChecksum-vFCubS6K.js → DiskStorageWithChecksum-MZkDEyts.js} +1 -1
  32. package/dist/packem_shared/DropboxMetaStorage-CJsyeQ63.js +1 -0
  33. package/dist/packem_shared/{DropboxStorage-CY9Ggu3m.js → DropboxStorage-BB9NoWK2.js} +1 -1
  34. package/dist/packem_shared/{Files-CpIcMjP0.js → Files-DyMJ9FPN.js} +1 -1
  35. package/dist/packem_shared/FirebaseMetaStorage-Bv_YCZ0Q.js +1 -0
  36. package/dist/packem_shared/{FirebaseStorage-D6O9CJXN.js → FirebaseStorage-BgbxzYNC.js} +1 -1
  37. package/dist/packem_shared/FtpMetaStorage-CJsyeQ63.js +1 -0
  38. package/dist/packem_shared/{FtpStorage-DbEjbq8z.js → FtpStorage-CNqXDz7P.js} +1 -1
  39. package/dist/packem_shared/{GCSMetaStorage-DT8K6zdm.js → GCSMetaStorage-gEhWlpfS.js} +1 -1
  40. package/dist/packem_shared/{GCStorage-6BHkFlEs.js → GCStorage-CRd5vjok.js} +1 -1
  41. package/dist/packem_shared/GoogleDriveMetaStorage-B0gLF7Io.js +1 -0
  42. package/dist/packem_shared/{GoogleDriveStorage-Bklsz7Bh.js → GoogleDriveStorage-Du7uBhSm.js} +1 -1
  43. package/dist/packem_shared/{LocalMetaStorage-BhicZnNl.js → LocalMetaStorage-CcGfFG39.js} +1 -1
  44. package/dist/packem_shared/{MemoryStorage-9gbWd09l.js → MemoryStorage-ChKyI6OY.js} +1 -1
  45. package/dist/packem_shared/{Multipart-D0ok6BBy.js → Multipart-C35TR2qL.js} +1 -1
  46. package/dist/packem_shared/{Multipart-CQjYqU--.js → Multipart-V64Bg5dt.js} +1 -1
  47. package/dist/packem_shared/NetlifyBlobMetaStorage-Bv_YCZ0Q.js +1 -0
  48. package/dist/packem_shared/NetlifyBlobStorage-CZsr_0DF.js +1 -0
  49. package/dist/packem_shared/OneDriveMetaStorage-B0gLF7Io.js +1 -0
  50. package/dist/packem_shared/{OneDriveStorage-CP6MvGAa.js → OneDriveStorage-B8qFgMq1.js} +1 -1
  51. package/dist/packem_shared/PocketBaseMetaStorage-Cm3v8g1-.js +1 -0
  52. package/dist/packem_shared/{PocketBaseStorage-2qhbI2PW.js → PocketBaseStorage-D2vMN-oY.js} +1 -1
  53. package/dist/packem_shared/{Rest-CI_BiZPv.js → Rest-B7g1sgkq.js} +1 -1
  54. package/dist/packem_shared/{Rest-DvfN4-kf.js → Rest-BrEMYgxZ.js} +1 -1
  55. package/dist/packem_shared/{S3Storage-YGeNk3Tt.js → S3Storage-CTe_BMDl.js} +1 -1
  56. package/dist/packem_shared/SftpMetaStorage-CJsyeQ63.js +1 -0
  57. package/dist/packem_shared/{SftpStorage-2Hz396Xr.js → SftpStorage-BKeAzuej.js} +1 -1
  58. package/dist/packem_shared/SharePointMetaStorage-CJsyeQ63.js +1 -0
  59. package/dist/packem_shared/{SharePointStorage-CrX2Pk6C.js → SharePointStorage-Dtnt5-wk.js} +1 -1
  60. package/dist/packem_shared/SupabaseMetaStorage-B0gLF7Io.js +1 -0
  61. package/dist/packem_shared/{SupabaseStorage-Dc_DBX29.js → SupabaseStorage-CmGQjqXf.js} +1 -1
  62. package/dist/packem_shared/{Tus-BlBZykIL.js → Tus-CJBgnJrn.js} +1 -1
  63. package/dist/packem_shared/{Tus-BBVt2ky3.js → Tus-D9c7KDnl.js} +1 -1
  64. package/dist/packem_shared/UploadThingMetaStorage-Bv_YCZ0Q.js +1 -0
  65. package/dist/packem_shared/{UploadThingStorage-BChykYSe.js → UploadThingStorage-DZ4zNvDH.js} +1 -1
  66. package/dist/packem_shared/VercelBlobMetaStorage-CJsyeQ63.js +1 -0
  67. package/dist/packem_shared/{VercelBlobStorage-CsRyPfw3.js → VercelBlobStorage-DDNEofR3.js} +1 -1
  68. package/dist/packem_shared/{approval.d-CMAYH9GF.d.ts → approval.d-C-d-t94D.d.ts} +6 -6
  69. package/dist/packem_shared/{base-handler-core-D-9Ku1h-.js → base-handler-core-BJP9jHCE.js} +1 -1
  70. package/dist/packem_shared/{base-handler-fetch-CfkNakv8.js → base-handler-fetch-yrYrukwL.js} +1 -1
  71. package/dist/packem_shared/base-handler-node-C8P9rkaH.js +1 -0
  72. package/dist/packem_shared/{createRetryWrapper-CxgiV_hH.js → createRetryWrapper-DgmeHPNF.js} +1 -1
  73. package/dist/packem_shared/disk-storage-DqnnFQAQ.js +1 -0
  74. package/dist/packem_shared/disk-storage-with-checksum.d-Dgwyza8a.d.ts +146 -0
  75. package/dist/packem_shared/{executors.d-BZP2rWo3.d.ts → executors.d-B9dIy3NT.d.ts} +3 -2
  76. package/dist/packem_shared/files.d-CmSZi3M0.d.ts +655 -0
  77. package/dist/packem_shared/gcs-meta-storage-C9F78Sqq.js +1 -0
  78. package/dist/packem_shared/local-meta-storage-BELb1YwO.js +11 -0
  79. package/dist/packem_shared/{local-meta-storage.d-D9PBfkn6.d.ts → local-meta-storage.d-cRTXr1kb.d.ts} +7 -7
  80. package/dist/packem_shared/media-transformer.d-C8tn4J2Z.d.ts +331 -0
  81. package/dist/packem_shared/{memory-storage.d-4EU1cMt1.d.ts → memory-storage.d-BNZvDG1b.d.ts} +32 -40
  82. package/dist/packem_shared/path-C-OWflAo-_mqb5p5d.js +1 -0
  83. package/dist/packem_shared/{rest-base-e0reNDE_.js → rest-base-BQ_dhWyV.js} +1 -1
  84. package/dist/packem_shared/s3-base-storage-CX94H-Za.js +1 -0
  85. package/dist/packem_shared/{s3-base-storage.d-BQgP5B-t.d.ts → s3-base-storage.d-ks99NSs-.d.ts} +64 -70
  86. package/dist/packem_shared/storage-DR7qdwBN.js +1 -0
  87. package/dist/packem_shared/storage.d-DwdJrArF.d.ts +1186 -0
  88. package/dist/packem_shared/tus-base.d-BKBoJVy0.d.ts +103 -0
  89. package/dist/packem_shared/types.d-B1_xZIhu.d.ts +104 -0
  90. package/dist/packem_shared/{types.d-CrUWY4On.d.ts → types.d-BEUv414z.d.ts} +134 -134
  91. package/dist/packem_shared/{types.d-CggTCgXr.d.ts → types.d-D7Zlz5RE.d.ts} +3 -3
  92. package/dist/storage/aws/clients/index.d.ts +388 -388
  93. package/dist/storage/aws/index.d.ts +110 -113
  94. package/dist/storage/aws/index.js +1 -1
  95. package/dist/storage/aws-light/index.d.ts +64 -67
  96. package/dist/storage/aws-light/index.js +1 -1
  97. package/dist/storage/azure/index.d.ts +134 -139
  98. package/dist/storage/azure/index.js +1 -1
  99. package/dist/storage/box/index.d.ts +89 -92
  100. package/dist/storage/box/index.js +1 -1
  101. package/dist/storage/bun-s3/index.d.ts +71 -76
  102. package/dist/storage/bun-s3/index.js +1 -1
  103. package/dist/storage/bunny/index.d.ts +52 -55
  104. package/dist/storage/bunny/index.js +1 -1
  105. package/dist/storage/cloudinary/index.d.ts +54 -59
  106. package/dist/storage/cloudinary/index.js +1 -1
  107. package/dist/storage/dropbox/index.d.ts +59 -62
  108. package/dist/storage/dropbox/index.js +1 -1
  109. package/dist/storage/firebase/index.d.ts +74 -79
  110. package/dist/storage/firebase/index.js +1 -1
  111. package/dist/storage/ftp/index.d.ts +38 -43
  112. package/dist/storage/ftp/index.js +1 -1
  113. package/dist/storage/gcs/index.d.ts +90 -95
  114. package/dist/storage/gcs/index.js +1 -1
  115. package/dist/storage/google-drive/index.d.ts +69 -72
  116. package/dist/storage/google-drive/index.js +1 -1
  117. package/dist/storage/local/index.d.ts +4 -3
  118. package/dist/storage/local/index.js +1 -1
  119. package/dist/storage/memory/index.d.ts +3 -2
  120. package/dist/storage/memory/index.js +1 -1
  121. package/dist/storage/netlify-blob/index.d.ts +86 -93
  122. package/dist/storage/netlify-blob/index.js +1 -1
  123. package/dist/storage/onedrive/index.d.ts +44 -53
  124. package/dist/storage/onedrive/index.js +1 -1
  125. package/dist/storage/pocketbase/index.d.ts +67 -72
  126. package/dist/storage/pocketbase/index.js +1 -1
  127. package/dist/storage/sftp/index.d.ts +40 -45
  128. package/dist/storage/sftp/index.js +1 -1
  129. package/dist/storage/sharepoint/index.d.ts +96 -95
  130. package/dist/storage/sharepoint/index.js +1 -1
  131. package/dist/storage/supabase/index.d.ts +50 -55
  132. package/dist/storage/supabase/index.js +1 -1
  133. package/dist/storage/uploadthing/index.d.ts +34 -37
  134. package/dist/storage/uploadthing/index.js +1 -1
  135. package/dist/storage/vercel-blob/index.d.ts +110 -115
  136. package/dist/storage/vercel-blob/index.js +1 -1
  137. package/dist/transformer/audio-transformer.d.ts +97 -96
  138. package/dist/transformer/image-transformer.d.ts +423 -422
  139. package/dist/transformer/index.d.ts +35 -34
  140. package/dist/transformer/video-transformer.d.ts +112 -111
  141. package/package.json +2 -2
  142. package/dist/packem_shared/AwsLightStorage-BK-WPL0h.js +0 -1
  143. package/dist/packem_shared/AzureStorage-1UvDIQZd.js +0 -1
  144. package/dist/packem_shared/BoxMetaStorage-BSn6Qfnf.js +0 -1
  145. package/dist/packem_shared/BunS3MetaStorage-BSn6Qfnf.js +0 -1
  146. package/dist/packem_shared/BunnyMetaStorage-BSn6Qfnf.js +0 -1
  147. package/dist/packem_shared/CloudinaryMetaStorage-DPVnmNe5.js +0 -1
  148. package/dist/packem_shared/DiskStorage-CI07TVNu.js +0 -1
  149. package/dist/packem_shared/DropboxMetaStorage-BSn6Qfnf.js +0 -1
  150. package/dist/packem_shared/FirebaseMetaStorage-DPVnmNe5.js +0 -1
  151. package/dist/packem_shared/FtpMetaStorage-BSn6Qfnf.js +0 -1
  152. package/dist/packem_shared/GoogleDriveMetaStorage-Cbwa1CHV.js +0 -1
  153. package/dist/packem_shared/NetlifyBlobMetaStorage-DPVnmNe5.js +0 -1
  154. package/dist/packem_shared/NetlifyBlobStorage-CkpCCoN1.js +0 -1
  155. package/dist/packem_shared/OneDriveMetaStorage-Cbwa1CHV.js +0 -1
  156. package/dist/packem_shared/PocketBaseMetaStorage-DOTLwVE7.js +0 -1
  157. package/dist/packem_shared/SftpMetaStorage-BSn6Qfnf.js +0 -1
  158. package/dist/packem_shared/SharePointMetaStorage-BSn6Qfnf.js +0 -1
  159. package/dist/packem_shared/SupabaseMetaStorage-Cbwa1CHV.js +0 -1
  160. package/dist/packem_shared/UploadThingMetaStorage-DPVnmNe5.js +0 -1
  161. package/dist/packem_shared/VercelBlobMetaStorage-BSn6Qfnf.js +0 -1
  162. package/dist/packem_shared/base-handler-node-BF1v1qDa.js +0 -1
  163. package/dist/packem_shared/disk-storage-CsQcYW3s.js +0 -1
  164. package/dist/packem_shared/disk-storage-with-checksum.d-B-VGEsfl.d.ts +0 -156
  165. package/dist/packem_shared/files.d-CH0iLBNC.d.ts +0 -655
  166. package/dist/packem_shared/gcs-meta-storage-B7BnctnV.js +0 -1
  167. package/dist/packem_shared/local-meta-storage-iuJnu90B.js +0 -11
  168. package/dist/packem_shared/media-transformer.d-Quf4ai47.d.ts +0 -331
  169. package/dist/packem_shared/path-0oTTdkvl-DvWvbDbh.js +0 -1
  170. package/dist/packem_shared/s3-base-storage-BoTyhuzO.js +0 -1
  171. package/dist/packem_shared/storage-0j5nCAUp.js +0 -1
  172. package/dist/packem_shared/storage.d-CEM1upWM.d.ts +0 -1176
  173. package/dist/packem_shared/tus-base.d-DLzKE54M.d.ts +0 -106
  174. package/dist/packem_shared/types.d-Bon9GVVe.d.ts +0 -104
@@ -1,85 +1,77 @@
1
1
  import { IncomingMessage, ServerResponse } from 'node:http';
2
- import { U as UploadFile, m as UploadResponse } from "../../../packem_shared/storage.d-CEM1upWM.js";
2
+ import { U as UploadFile, m as UploadResponse } from "../../../packem_shared/storage.d-DwdJrArF.js";
3
3
  import { Readable } from 'node:stream';
4
- import { H as Handlers, A as AsyncHandler, U as UploadOptions, R as ResponseFile, a as ResponseList, M as MethodHandler } from "../../../packem_shared/types.d-CggTCgXr.js";
5
- export type { B as BaseHandler, b as RequestEvent, c as UploadErrorEvent, d as UploadEvent } from "../../../packem_shared/types.d-CggTCgXr.js";
6
- import { B as BaseHandlerCore } from "../../../packem_shared/tus-base.d-DLzKE54M.js";
7
- export { T as TUS_RESUMABLE, a as TUS_VERSION } from "../../../packem_shared/tus-base.d-DLzKE54M.js";
4
+ import { H as Handlers, A as AsyncHandler, U as UploadOptions, R as ResponseFile, a as ResponseList, M as MethodHandler } from "../../../packem_shared/types.d-D7Zlz5RE.js";
5
+ export type { B as BaseHandler, b as RequestEvent, c as UploadErrorEvent, d as UploadEvent } from "../../../packem_shared/types.d-D7Zlz5RE.js";
6
+ import { B as BaseHandlerCore } from "../../../packem_shared/tus-base.d-BKBoJVy0.js";
7
+ export { T as TUS_RESUMABLE, a as TUS_VERSION } from "../../../packem_shared/tus-base.d-BKBoJVy0.js";
8
+ import 'node:timers';
8
9
  import 'node:crypto';
9
10
  import 'lru-cache';
10
11
  import 'node:events';
11
12
  import '@visulima/pagination';
12
- import "../../../packem_shared/media-transformer.d-Quf4ai47.js";
13
- import "../../../packem_shared/types.d-CrUWY4On.js";
13
+ import "../../../packem_shared/media-transformer.d-C8tn4J2Z.js";
14
+ import "../../../packem_shared/types.d-BEUv414z.js";
14
15
  /**
15
- * Base handler for Node.js platform (IncomingMessage/ServerResponse).
16
- * Extends BaseHandlerCore with Node.js-specific request/response handling.
17
- * @template TFile The file type used by this handler.
18
- * @template NodeRequest The Node.js request type.
19
- * @template NodeResponse The Node.js response type.
20
- */
16
+ * Base handler for Node.js platform (IncomingMessage/ServerResponse).
17
+ * Extends BaseHandlerCore with Node.js-specific request/response handling.
18
+ * @template TFile The file type used by this handler.
19
+ * @template NodeRequest The Node.js request type.
20
+ * @template NodeResponse The Node.js response type.
21
+ */
21
22
  declare abstract class BaseHandlerNode<TFile extends UploadFile, NodeRequest extends IncomingMessage = IncomingMessage, NodeResponse extends ServerResponse = ServerResponse> extends BaseHandlerCore<TFile> implements MethodHandler<NodeRequest, NodeResponse> {
22
23
  /**
23
- * Limiting enabled HTTP method handler.
24
- */
24
+ * Limiting enabled HTTP method handler.
25
+ */
25
26
  static readonly methods: Handlers[];
26
27
  /**
27
- * Map of registered HTTP method handlers.
28
- */
28
+ * Map of registered HTTP method handlers.
29
+ */
29
30
  protected registeredHandlers: Map<string, AsyncHandler<NodeRequest, NodeResponse>>;
30
31
  constructor(options: UploadOptions<TFile>);
31
32
  /**
32
- * Gets the registered handlers map.
33
- * @returns Map of registered handlers.
34
- */
33
+ * Gets the registered handlers map.
34
+ * @returns Map of registered handlers.
35
+ */
35
36
  get handlers(): Map<string, AsyncHandler<NodeRequest, NodeResponse>>;
36
37
  /**
37
- * Handles HTTP request (alias for upload method).
38
- * @param request Node.js IncomingMessage.
39
- * @param response Node.js ServerResponse.
40
- */
38
+ * Handles HTTP request (alias for upload method).
39
+ * @param request Node.js IncomingMessage.
40
+ * @param response Node.js ServerResponse.
41
+ */
41
42
  handle: (request: NodeRequest, response: NodeResponse) => Promise<void>;
42
43
  /**
43
- * Main upload handler that processes HTTP requests and routes them to appropriate method handlers.
44
- * @param request Node.js IncomingMessage.
45
- * @param response Node.js ServerResponse.
46
- * @param next Optional Express-style next function for middleware compatibility.
47
- * @throws {UploadError} When storage is not ready or method is not allowed.
48
- */
44
+ * Main upload handler that processes HTTP requests and routes them to appropriate method handlers.
45
+ * @param request Node.js IncomingMessage.
46
+ * @param response Node.js ServerResponse.
47
+ * @param next Optional Express-style next function for middleware compatibility.
48
+ * @throws {UploadError} When storage is not ready or method is not allowed.
49
+ */
49
50
  upload: (request: NodeRequest, response: NodeResponse, next?: () => void) => Promise<void>;
50
51
  /**
51
- * Compose and register HTTP method handlers.
52
- * Subclasses should override this to register their specific handlers.
53
- */
52
+ * Compose and register HTTP method handlers.
53
+ * Subclasses should override this to register their specific handlers.
54
+ */
54
55
  protected abstract compose(): void;
55
56
  /**
56
- * Sends an HTTP response with the provided body, headers, and status code.
57
- * @param response Node.js ServerResponse to send data to.
58
- * @param body Response body, headers, and status code.
59
- */
60
- send(response: NodeResponse, {
61
- body,
62
- headers,
63
- statusCode
64
- }: UploadResponse): void;
65
- /**
66
- * Sends an error response to the client with appropriate status code and message.
67
- * @param response Node.js ServerResponse to send error to.
68
- * @param error Error object to convert to HTTP error response.
69
- */
57
+ * Sends an HTTP response with the provided body, headers, and status code.
58
+ * @param response Node.js ServerResponse to send data to.
59
+ * @param body Response body, headers, and status code.
60
+ */
61
+ send(response: NodeResponse, { body, headers, statusCode }: UploadResponse): void;
62
+ /**
63
+ * Sends an error response to the client with appropriate status code and message.
64
+ * @param response Node.js ServerResponse to send error to.
65
+ * @param error Error object to convert to HTTP error response.
66
+ */
70
67
  sendError(response: NodeResponse, error: Error): Promise<void>;
71
68
  /**
72
- * Sends streaming response to client with proper backpressure handling and range request support.
73
- * @param response Node.js ServerResponse to stream data to.
74
- * @param stream Readable stream containing the file data.
75
- * @param options Streaming options including headers, range, size, and status code.
76
- */
77
- sendStream(response: NodeResponse, stream: Readable, {
78
- headers,
79
- range,
80
- size,
81
- statusCode
82
- }: {
69
+ * Sends streaming response to client with proper backpressure handling and range request support.
70
+ * @param response Node.js ServerResponse to stream data to.
71
+ * @param stream Readable stream containing the file data.
72
+ * @param options Streaming options including headers, range, size, and status code.
73
+ */
74
+ sendStream(response: NodeResponse, stream: Readable, { headers, range, size, statusCode }: {
83
75
  headers?: Record<string, string | number>;
84
76
  range?: {
85
77
  end: number;
@@ -89,280 +81,276 @@ declare abstract class BaseHandlerNode<TFile extends UploadFile, NodeRequest ext
89
81
  statusCode?: number;
90
82
  }): void;
91
83
  /**
92
- * Finish upload by sending final response to client with completed file data.
93
- * @param _request HTTP request (unused parameter)
94
- * @param response HTTP response object to send final response to
95
- * @param uploadResponse Final upload response data containing body, headers, and status code
96
- */
84
+ * Finish upload by sending final response to client with completed file data.
85
+ * @param _request HTTP request (unused parameter)
86
+ * @param response HTTP response object to send final response to
87
+ * @param uploadResponse Final upload response data containing body, headers, and status code
88
+ */
97
89
  protected finish(_request: NodeRequest, response: NodeResponse, uploadResponse: UploadResponse | ResponseFile<TFile>): void;
98
90
  /**
99
- * Build file URL from request and file data.
100
- * @param request HTTP request with optional originalUrl property
101
- * @param file File object containing ID and content type
102
- * @returns Constructed file URL with extension based on content type
103
- */
91
+ * Build file URL from request and file data.
92
+ * @param request HTTP request with optional originalUrl property
93
+ * @param file File object containing ID and content type
94
+ * @returns Constructed file URL with extension based on content type
95
+ */
104
96
  protected buildFileUrl(request: NodeRequest & {
105
97
  originalUrl?: string;
106
98
  }, file: TFile): string;
107
99
  /**
108
- * Negotiates content type based on Accept header and supported formats.
109
- * @param request HTTP request object containing Accept header.
110
- * @param supportedTypes Array of supported MIME types to match against.
111
- * @returns Best matching content type or undefined if no match found.
112
- */
100
+ * Negotiates content type based on Accept header and supported formats.
101
+ * @param request HTTP request object containing Accept header.
102
+ * @param supportedTypes Array of supported MIME types to match against.
103
+ * @returns Best matching content type or undefined if no match found.
104
+ */
113
105
  negotiateContentType(request: NodeRequest, supportedTypes: string[]): string | undefined;
114
106
  /**
115
- * Default OPTIONS handler.
116
- * @param _request HTTP request (unused)
117
- * @param _response HTTP response (unused)
118
- * @returns Promise resolving to ResponseFile with CORS headers
119
- */
107
+ * Default OPTIONS handler.
108
+ * @param _request HTTP request (unused)
109
+ * @param _response HTTP response (unused)
110
+ * @returns Promise resolving to ResponseFile with CORS headers
111
+ */
120
112
  options(_request: NodeRequest, _response: NodeResponse): Promise<ResponseFile<TFile>>;
121
113
  /**
122
- * Retrieves a file or list of files based on the request path.
123
- * @param request Node.js IncomingMessage with optional originalUrl.
124
- * @param response Node.js ServerResponse.
125
- * @returns Promise resolving to a single file, paginated list, or array of files.
126
- * @throws {UploadError} When file is not found or storage error occurs.
127
- */
114
+ * Retrieves a file or list of files based on the request path.
115
+ * @param request Node.js IncomingMessage with optional originalUrl.
116
+ * @param response Node.js ServerResponse.
117
+ * @returns Promise resolving to a single file, paginated list, or array of files.
118
+ * @throws {UploadError} When file is not found or storage error occurs.
119
+ */
128
120
  get(request: NodeRequest & {
129
121
  originalUrl?: string;
130
122
  }, _response: NodeResponse): Promise<ResponseFile<TFile> | ResponseList<TFile>>;
131
123
  /**
132
- * Returns a list of uploaded files with optional pagination support.
133
- * @param request Node.js IncomingMessage containing query parameters for pagination.
134
- * @param _response Node.js ServerResponse (unused).
135
- * @returns Promise resolving to a paginated or complete list of uploaded files.
136
- */
124
+ * Returns a list of uploaded files with optional pagination support.
125
+ * @param request Node.js IncomingMessage containing query parameters for pagination.
126
+ * @param _response Node.js ServerResponse (unused).
127
+ * @returns Promise resolving to a paginated or complete list of uploaded files.
128
+ */
137
129
  list(request: NodeRequest, _response: NodeResponse): Promise<ResponseList<TFile>>;
138
130
  /**
139
- * Streams download of a file with resumable support using HTTP range requests.
140
- * @param request Node.js IncomingMessage with optional originalUrl and range header.
141
- * @param response Node.js ServerResponse to stream the file to.
142
- * @throws {HttpError} When file is not found or streaming is not supported.
143
- */
131
+ * Streams download of a file with resumable support using HTTP range requests.
132
+ * @param request Node.js IncomingMessage with optional originalUrl and range header.
133
+ * @param response Node.js ServerResponse to stream the file to.
134
+ * @throws {HttpError} When file is not found or streaming is not supported.
135
+ */
144
136
  download(request: NodeRequest & {
145
137
  originalUrl?: string;
146
138
  }, response: NodeResponse): Promise<void>;
147
139
  /**
148
- * Check if error is related to undefined ID or path and throw appropriate HTTP error.
149
- * @param error Error object to check
150
- */
140
+ * Check if error is related to undefined ID or path and throw appropriate HTTP error.
141
+ * @param error Error object to check
142
+ */
151
143
  protected override checkForUndefinedIdOrPath(error: unknown): void;
152
144
  }
153
145
  /**
154
- * Multipart/form-data upload handler (Node.js version).
155
- * @example
156
- * ```ts
157
- * const multipart = new Multipart({
158
- * storage,
159
- * maxFileSize: 100 * 1024 * 1024, // 100MB
160
- * });
161
- *
162
- * app.use('/files', multipart.handle);
163
- * ```
164
- */
146
+ * Multipart/form-data upload handler (Node.js version).
147
+ * @example
148
+ * ```ts
149
+ * const multipart = new Multipart({
150
+ * storage,
151
+ * maxFileSize: 100 * 1024 * 1024, // 100MB
152
+ * });
153
+ *
154
+ * app.use('/files', multipart.handle);
155
+ * ```
156
+ */
165
157
  declare class Multipart<TFile extends UploadFile, NodeRequest extends IncomingMessage = IncomingMessage, NodeResponse extends ServerResponse = ServerResponse> extends BaseHandlerNode<TFile, NodeRequest, NodeResponse> {
166
158
  /**
167
- * Limiting enabled http method handler
168
- */
159
+ * Limiting enabled http method handler
160
+ */
169
161
  static override readonly methods: Handlers[];
170
162
  private readonly multipartBase;
171
163
  /**
172
- * Maximum file size allowed for multipart uploads
173
- */
164
+ * Maximum file size allowed for multipart uploads
165
+ */
174
166
  private maxFileSize;
175
167
  /**
176
- * Maximum header size allowed for multipart parser
177
- */
168
+ * Maximum header size allowed for multipart parser
169
+ */
178
170
  private maxHeaderSize;
179
171
  constructor(options: UploadOptions<TFile>);
180
172
  /**
181
- * Handles multipart/form-data POST requests for file uploads.
182
- * @param request Node.js IncomingMessage containing multipart data.
183
- * @returns Promise resolving to ResponseFile with upload result.
184
- */
173
+ * Handles multipart/form-data POST requests for file uploads.
174
+ * @param request Node.js IncomingMessage containing multipart data.
175
+ * @returns Promise resolving to ResponseFile with upload result.
176
+ */
185
177
  post(request: NodeRequest): Promise<ResponseFile<TFile>>;
186
178
  /**
187
- * Delete an uploaded file.
188
- * @param request Node.js IncomingMessage with file ID
189
- * @returns Promise resolving to ResponseFile with deletion result
190
- */
179
+ * Delete an uploaded file.
180
+ * @param request Node.js IncomingMessage with file ID
181
+ * @returns Promise resolving to ResponseFile with deletion result
182
+ */
191
183
  delete(request: NodeRequest): Promise<ResponseFile<TFile>>;
192
184
  /**
193
- * Compose and register HTTP method handlers.
194
- */
185
+ * Compose and register HTTP method handlers.
186
+ */
195
187
  protected compose(): void;
196
188
  }
197
189
  /**
198
- * REST API handler for direct binary file uploads (Node.js version).
199
- *
200
- * This handler provides a clean REST interface for file operations:
201
- * - POST: Create a new file with raw binary data or initialize chunked upload
202
- * - PUT: Create or update a file (requires ID in URL)
203
- * - PATCH: Upload chunks for chunked uploads (requires ID in URL)
204
- * - GET: Retrieve a file or list files
205
- * - DELETE: Delete a file (single) or multiple files (via ?ids=id1,id2 or JSON body)
206
- * - HEAD: Get file metadata and upload progress
207
- * - OPTIONS: CORS preflight
208
- * @example
209
- * ```ts
210
- * const rest = new Rest({
211
- * storage,
212
- * });
213
- *
214
- * app.use('/files', rest.handle);
215
- * ```
216
- */
190
+ * REST API handler for direct binary file uploads (Node.js version).
191
+ *
192
+ * This handler provides a clean REST interface for file operations:
193
+ * - POST: Create a new file with raw binary data or initialize chunked upload
194
+ * - PUT: Create or update a file (requires ID in URL)
195
+ * - PATCH: Upload chunks for chunked uploads (requires ID in URL)
196
+ * - GET: Retrieve a file or list files
197
+ * - DELETE: Delete a file (single) or multiple files (via ?ids=id1,id2 or JSON body)
198
+ * - HEAD: Get file metadata and upload progress
199
+ * - OPTIONS: CORS preflight
200
+ * @example
201
+ * ```ts
202
+ * const rest = new Rest({
203
+ * storage,
204
+ * });
205
+ *
206
+ * app.use('/files', rest.handle);
207
+ * ```
208
+ */
217
209
  declare class Rest<TFile extends UploadFile, NodeRequest extends IncomingMessage = IncomingMessage, NodeResponse extends ServerResponse = ServerResponse> extends BaseHandlerNode<TFile, NodeRequest, NodeResponse> {
218
210
  /**
219
- * Limiting enabled http method handler
220
- */
211
+ * Limiting enabled http method handler
212
+ */
221
213
  static override readonly methods: Handlers[];
222
214
  private readonly restBase;
223
215
  constructor(options: UploadOptions<TFile>);
224
216
  /**
225
- * Compose and register HTTP method handlers.
226
- */
217
+ * Compose and register HTTP method handlers.
218
+ */
227
219
  protected override compose(): void;
228
220
  /**
229
- * Build file URL from request and file data.
230
- * @param requestUrl Request URL string
231
- * @param file File object containing ID and content type
232
- * @returns Constructed file URL with extension based on content type
233
- */
221
+ * Build file URL from request and file data.
222
+ * @param requestUrl Request URL string
223
+ * @param file File object containing ID and content type
224
+ * @returns Constructed file URL with extension based on content type
225
+ */
234
226
  protected buildFileUrlForRest(requestUrl: string, file: TFile): string;
235
227
  /**
236
- * Creates a new file via POST request with raw binary data.
237
- * Supports both full file uploads and chunked upload initialization.
238
- * @param request Node.js IncomingMessage with file data.
239
- * @returns Promise resolving to ResponseFile with upload result.
240
- */
228
+ * Creates a new file via POST request with raw binary data.
229
+ * Supports both full file uploads and chunked upload initialization.
230
+ * @param request Node.js IncomingMessage with file data.
231
+ * @returns Promise resolving to ResponseFile with upload result.
232
+ */
241
233
  post(request: NodeRequest): Promise<ResponseFile<TFile>>;
242
234
  /**
243
- * Create or update a file via PUT request.
244
- * Requires file ID in the URL path.
245
- * @param request Node.js IncomingMessage with file ID and data
246
- * @returns Promise resolving to ResponseFile with upload result
247
- */
235
+ * Create or update a file via PUT request.
236
+ * Requires file ID in the URL path.
237
+ * @param request Node.js IncomingMessage with file ID and data
238
+ * @returns Promise resolving to ResponseFile with upload result
239
+ */
248
240
  put(request: NodeRequest): Promise<ResponseFile<TFile>>;
249
241
  /**
250
- * Delete an uploaded file or multiple files.
251
- * Supports single file (ID in URL) or batch delete (via ?ids=id1,id2 or JSON body).
252
- * @param request Node.js IncomingMessage with file ID(s)
253
- * @returns Promise resolving to ResponseFile (single) or ResponseList (batch) with deletion result
254
- */
242
+ * Delete an uploaded file or multiple files.
243
+ * Supports single file (ID in URL) or batch delete (via ?ids=id1,id2 or JSON body).
244
+ * @param request Node.js IncomingMessage with file ID(s)
245
+ * @returns Promise resolving to ResponseFile (single) or ResponseList (batch) with deletion result
246
+ */
255
247
  delete(request: NodeRequest): Promise<ResponseFile<TFile> | ResponseList<TFile>>;
256
248
  /**
257
- * Uploads a chunk via PATCH request for chunked uploads.
258
- * Headers required: X-Chunk-Offset (byte offset), Content-Length (chunk size).
259
- * Optional: X-Chunk-Checksum (SHA256 checksum for validation).
260
- * @param request Node.js IncomingMessage with chunk data.
261
- * @returns Promise resolving to ResponseFile with upload progress.
262
- */
249
+ * Uploads a chunk via PATCH request for chunked uploads.
250
+ * Headers required: X-Chunk-Offset (byte offset), Content-Length (chunk size).
251
+ * Optional: X-Chunk-Checksum (SHA256 checksum for validation).
252
+ * @param request Node.js IncomingMessage with chunk data.
253
+ * @returns Promise resolving to ResponseFile with upload progress.
254
+ */
263
255
  patch(request: NodeRequest): Promise<ResponseFile<TFile>>;
264
256
  /**
265
- * Get file metadata via HEAD request.
266
- * For chunked uploads, also returns upload progress information.
267
- * @param request Node.js IncomingMessage with file ID
268
- * @returns Promise resolving to ResponseFile with metadata headers
269
- */
257
+ * Get file metadata via HEAD request.
258
+ * For chunked uploads, also returns upload progress information.
259
+ * @param request Node.js IncomingMessage with file ID
260
+ * @returns Promise resolving to ResponseFile with metadata headers
261
+ */
270
262
  head(request: NodeRequest): Promise<ResponseFile<TFile>>;
271
263
  /**
272
- * Handle OPTIONS requests with REST API capabilities.
273
- * @returns Promise resolving to ResponseFile with CORS headers
274
- */
264
+ * Handle OPTIONS requests with REST API capabilities.
265
+ * @returns Promise resolving to ResponseFile with CORS headers
266
+ */
275
267
  override options(): Promise<ResponseFile<TFile>>;
276
268
  /**
277
- * Retrieves a file or list of files based on the request path.
278
- * Delegates to BaseHandlerNode.get() method.
279
- * @param request Node.js IncomingMessage with optional originalUrl.
280
- * @param response Node.js ServerResponse.
281
- * @returns Promise resolving to a single file, paginated list, or array of files.
282
- */
269
+ * Retrieves a file or list of files based on the request path.
270
+ * Delegates to BaseHandlerNode.get() method.
271
+ * @param request Node.js IncomingMessage with optional originalUrl.
272
+ * @param response Node.js ServerResponse.
273
+ * @returns Promise resolving to a single file, paginated list, or array of files.
274
+ */
283
275
  override get(request: NodeRequest, response: NodeResponse): Promise<ResponseFile<TFile> | ResponseList<TFile>>;
284
276
  }
285
277
  /**
286
- * TUS resumable upload protocol handler (Node.js version).
287
- *
288
- * [tus resumable upload protocol](https://github.com/tus/tus-resumable-upload-protocol/blob/master/protocol.md)
289
- * @example
290
- * ```ts
291
- * const tus = new Tus({storage});
292
- *
293
- * app.all('/files', tus.handle);
294
- * ```
295
- */
278
+ * TUS resumable upload protocol handler (Node.js version).
279
+ *
280
+ * [tus resumable upload protocol](https://github.com/tus/tus-resumable-upload-protocol/blob/master/protocol.md)
281
+ * @example
282
+ * ```ts
283
+ * const tus = new Tus({storage});
284
+ *
285
+ * app.all('/files', tus.handle);
286
+ * ```
287
+ */
296
288
  declare class Tus<TFile extends UploadFile, NodeRequest extends IncomingMessage = IncomingMessage, NodeResponse extends ServerResponse = ServerResponse> extends BaseHandlerNode<TFile, NodeRequest, NodeResponse> {
297
289
  /**
298
- * Limiting enabled http method handler
299
- */
290
+ * Limiting enabled http method handler
291
+ */
300
292
  static override readonly methods: Handlers[];
301
293
  override disableTerminationForFinishedUploads: boolean;
302
294
  private readonly tusBase;
303
295
  constructor(options: UploadOptions<TFile>);
304
296
  /**
305
- * Handle OPTIONS requests with TUS protocol capabilities.
306
- * @returns Promise resolving to ResponseFile with TUS headers
307
- */
297
+ * Handle OPTIONS requests with TUS protocol capabilities.
298
+ * @returns Promise resolving to ResponseFile with TUS headers
299
+ */
308
300
  override options(): Promise<ResponseFile<TFile>>;
309
301
  /**
310
- * Creates a new TUS upload and optionally starts uploading data.
311
- * @param request Node.js IncomingMessage with TUS headers.
312
- * @returns Promise resolving to ResponseFile with upload location and offset.
313
- */
302
+ * Creates a new TUS upload and optionally starts uploading data.
303
+ * @param request Node.js IncomingMessage with TUS headers.
304
+ * @returns Promise resolving to ResponseFile with upload location and offset.
305
+ */
314
306
  post(request: NodeRequest): Promise<ResponseFile<TFile>>;
315
307
  /**
316
- * Write a chunk of data to an existing TUS upload.
317
- * @param request Node.js IncomingMessage with chunk data and TUS headers
318
- * @returns Promise resolving to ResponseFile with updated offset
319
- */
308
+ * Write a chunk of data to an existing TUS upload.
309
+ * @param request Node.js IncomingMessage with chunk data and TUS headers
310
+ * @returns Promise resolving to ResponseFile with updated offset
311
+ */
320
312
  patch(request: NodeRequest): Promise<ResponseFile<TFile>>;
321
313
  /**
322
- * Get current upload offset and metadata for TUS resumable uploads.
323
- * @param request Node.js IncomingMessage with upload ID
324
- * @returns Promise resolving to ResponseFile with upload-offset and metadata headers
325
- */
314
+ * Get current upload offset and metadata for TUS resumable uploads.
315
+ * @param request Node.js IncomingMessage with upload ID
316
+ * @returns Promise resolving to ResponseFile with upload-offset and metadata headers
317
+ */
326
318
  head(request: NodeRequest): Promise<ResponseFile<TFile>>;
327
319
  /**
328
- * Get TUS upload metadata and current status.
329
- * @param request Node.js IncomingMessage with upload ID
330
- * @returns Promise resolving to ResponseFile with file metadata as JSON
331
- */
320
+ * Get TUS upload metadata and current status.
321
+ * @param request Node.js IncomingMessage with upload ID
322
+ * @returns Promise resolving to ResponseFile with file metadata as JSON
323
+ */
332
324
  override get(request: NodeRequest): Promise<ResponseFile<TFile>>;
333
325
  /**
334
- * Delete a TUS upload and its associated data.
335
- * @param request Node.js IncomingMessage with upload ID
336
- * @returns Promise resolving to ResponseFile with deletion confirmation
337
- */
326
+ * Delete a TUS upload and its associated data.
327
+ * @param request Node.js IncomingMessage with upload ID
328
+ * @returns Promise resolving to ResponseFile with deletion confirmation
329
+ */
338
330
  delete(request: NodeRequest): Promise<ResponseFile<TFile>>;
339
331
  /**
340
- * Send TUS protocol response with required headers.
341
- * @param response Node.js ServerResponse to send response to
342
- * @param uploadResponse Response data with body, headers, and status code
343
- */
344
- override send(response: NodeResponse, {
345
- body,
346
- headers,
347
- statusCode
348
- }: UploadResponse): void;
349
- /**
350
- * Compose and register HTTP method handlers.
351
- */
332
+ * Send TUS protocol response with required headers.
333
+ * @param response Node.js ServerResponse to send response to
334
+ * @param uploadResponse Response data with body, headers, and status code
335
+ */
336
+ override send(response: NodeResponse, { body, headers, statusCode }: UploadResponse): void;
337
+ /**
338
+ * Compose and register HTTP method handlers.
339
+ */
352
340
  protected compose(): void;
353
341
  /**
354
- * Build file URL for TUS uploads (without file extension).
355
- *
356
- * On the Node runtime the TUS protocol chain only carries the request *path* (`requestUrl` is
357
- * `request.originalUrl || request.url`), so an absolute `Location` can only be produced when that
358
- * path is itself an absolute URL (e.g. an upstream proxy rewrote it). When it is just a path the
359
- * `Location` is necessarily relative — the request headers are not threaded through the protocol
360
- * methods. Use the fetch/hono handlers (which receive `request.url` with the origin) or set
361
- * `useRelativeLocation: true` explicitly for relative URLs everywhere.
362
- * @param requestUrl Request URL string (path-only on Node unless rewritten to an absolute URL).
363
- * @param file File object containing ID
364
- * @returns Constructed file URL for TUS protocol
365
- */
342
+ * Build file URL for TUS uploads (without file extension).
343
+ *
344
+ * On the Node runtime the TUS protocol chain only carries the request *path* (`requestUrl` is
345
+ * `request.originalUrl || request.url`), so an absolute `Location` can only be produced when that
346
+ * path is itself an absolute URL (e.g. an upstream proxy rewrote it). When it is just a path the
347
+ * `Location` is necessarily relative — the request headers are not threaded through the protocol
348
+ * methods. Use the fetch/hono handlers (which receive `request.url` with the origin) or set
349
+ * `useRelativeLocation: true` explicitly for relative URLs everywhere.
350
+ * @param requestUrl Request URL string (path-only on Node unless rewritten to an absolute URL).
351
+ * @param file File object containing ID
352
+ * @returns Constructed file URL for TUS protocol
353
+ */
366
354
  protected buildFileUrlForTus(requestUrl: string, file: TFile): string;
367
355
  }
368
356
  export { type AsyncHandler, type Handlers, type MethodHandler, Multipart, Rest, Tus, type UploadOptions };
@@ -1 +1 @@
1
- import o from"../../../packem_shared/Multipart-D0ok6BBy.js";import m from"../../../packem_shared/Rest-DvfN4-kf.js";import{Tus as f}from"../../../packem_shared/Tus-BlBZykIL.js";import{TUS_RESUMABLE as S,TUS_VERSION as a}from"../../../packem_shared/TUS_RESUMABLE-CyTSRvPU.js";export{o as Multipart,m as Rest,S as TUS_RESUMABLE,a as TUS_VERSION,f as Tus};
1
+ import o from"../../../packem_shared/Multipart-C35TR2qL.js";import m from"../../../packem_shared/Rest-BrEMYgxZ.js";import{Tus as f}from"../../../packem_shared/Tus-CJBgnJrn.js";import{TUS_RESUMABLE as S,TUS_VERSION as a}from"../../../packem_shared/TUS_RESUMABLE-CyTSRvPU.js";export{o as Multipart,m as Rest,S as TUS_RESUMABLE,a as TUS_VERSION,f as Tus};