@neoware_inc/neozipkit 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/README.md +134 -0
  2. package/dist/browser/ZipkitBrowser.d.ts +27 -0
  3. package/dist/browser/ZipkitBrowser.d.ts.map +1 -0
  4. package/dist/browser/ZipkitBrowser.js +303 -0
  5. package/dist/browser/ZipkitBrowser.js.map +1 -0
  6. package/dist/browser/index.d.ts +9 -0
  7. package/dist/browser/index.d.ts.map +1 -0
  8. package/dist/browser/index.esm.d.ts +12 -0
  9. package/dist/browser/index.esm.d.ts.map +1 -0
  10. package/dist/browser/index.esm.js +46 -0
  11. package/dist/browser/index.esm.js.map +1 -0
  12. package/dist/browser/index.js +38 -0
  13. package/dist/browser/index.js.map +1 -0
  14. package/dist/browser-esm/index.d.ts +9 -0
  15. package/dist/browser-esm/index.js +50211 -0
  16. package/dist/browser-esm/index.js.map +7 -0
  17. package/dist/browser-umd/index.d.ts +9 -0
  18. package/dist/browser-umd/index.js +50221 -0
  19. package/dist/browser-umd/index.js.map +7 -0
  20. package/dist/browser-umd/index.min.js +39 -0
  21. package/dist/browser.d.ts +9 -0
  22. package/dist/browser.js +38 -0
  23. package/dist/core/ZipCompress.d.ts +99 -0
  24. package/dist/core/ZipCompress.d.ts.map +1 -0
  25. package/dist/core/ZipCompress.js +287 -0
  26. package/dist/core/ZipCompress.js.map +1 -0
  27. package/dist/core/ZipCopy.d.ts +175 -0
  28. package/dist/core/ZipCopy.d.ts.map +1 -0
  29. package/dist/core/ZipCopy.js +310 -0
  30. package/dist/core/ZipCopy.js.map +1 -0
  31. package/dist/core/ZipDecompress.d.ts +57 -0
  32. package/dist/core/ZipDecompress.d.ts.map +1 -0
  33. package/dist/core/ZipDecompress.js +155 -0
  34. package/dist/core/ZipDecompress.js.map +1 -0
  35. package/dist/core/ZipEntry.d.ts +138 -0
  36. package/dist/core/ZipEntry.d.ts.map +1 -0
  37. package/dist/core/ZipEntry.js +829 -0
  38. package/dist/core/ZipEntry.js.map +1 -0
  39. package/dist/core/Zipkit.d.ts +315 -0
  40. package/dist/core/Zipkit.d.ts.map +1 -0
  41. package/dist/core/Zipkit.js +647 -0
  42. package/dist/core/Zipkit.js.map +1 -0
  43. package/dist/core/ZstdManager.d.ts +56 -0
  44. package/dist/core/ZstdManager.d.ts.map +1 -0
  45. package/dist/core/ZstdManager.js +144 -0
  46. package/dist/core/ZstdManager.js.map +1 -0
  47. package/dist/core/components/HashCalculator.d.ts +138 -0
  48. package/dist/core/components/HashCalculator.d.ts.map +1 -0
  49. package/dist/core/components/HashCalculator.js +360 -0
  50. package/dist/core/components/HashCalculator.js.map +1 -0
  51. package/dist/core/components/Logger.d.ts +73 -0
  52. package/dist/core/components/Logger.d.ts.map +1 -0
  53. package/dist/core/components/Logger.js +156 -0
  54. package/dist/core/components/Logger.js.map +1 -0
  55. package/dist/core/components/ProgressTracker.d.ts +43 -0
  56. package/dist/core/components/ProgressTracker.d.ts.map +1 -0
  57. package/dist/core/components/ProgressTracker.js +112 -0
  58. package/dist/core/components/ProgressTracker.js.map +1 -0
  59. package/dist/core/components/Support.d.ts +64 -0
  60. package/dist/core/components/Support.d.ts.map +1 -0
  61. package/dist/core/components/Support.js +71 -0
  62. package/dist/core/components/Support.js.map +1 -0
  63. package/dist/core/components/Util.d.ts +26 -0
  64. package/dist/core/components/Util.d.ts.map +1 -0
  65. package/dist/core/components/Util.js +95 -0
  66. package/dist/core/components/Util.js.map +1 -0
  67. package/dist/core/constants/Errors.d.ts +52 -0
  68. package/dist/core/constants/Errors.d.ts.map +1 -0
  69. package/dist/core/constants/Errors.js +67 -0
  70. package/dist/core/constants/Errors.js.map +1 -0
  71. package/dist/core/constants/Headers.d.ts +170 -0
  72. package/dist/core/constants/Headers.d.ts.map +1 -0
  73. package/dist/core/constants/Headers.js +194 -0
  74. package/dist/core/constants/Headers.js.map +1 -0
  75. package/dist/core/encryption/Manager.d.ts +58 -0
  76. package/dist/core/encryption/Manager.d.ts.map +1 -0
  77. package/dist/core/encryption/Manager.js +121 -0
  78. package/dist/core/encryption/Manager.js.map +1 -0
  79. package/dist/core/encryption/ZipCrypto.d.ts +172 -0
  80. package/dist/core/encryption/ZipCrypto.d.ts.map +1 -0
  81. package/dist/core/encryption/ZipCrypto.js +554 -0
  82. package/dist/core/encryption/ZipCrypto.js.map +1 -0
  83. package/dist/core/encryption/index.d.ts +9 -0
  84. package/dist/core/encryption/index.d.ts.map +1 -0
  85. package/dist/core/encryption/index.js +17 -0
  86. package/dist/core/encryption/index.js.map +1 -0
  87. package/dist/core/encryption/types.d.ts +29 -0
  88. package/dist/core/encryption/types.d.ts.map +1 -0
  89. package/dist/core/encryption/types.js +12 -0
  90. package/dist/core/encryption/types.js.map +1 -0
  91. package/dist/core/index.d.ts +27 -0
  92. package/dist/core/index.d.ts.map +1 -0
  93. package/dist/core/index.js +59 -0
  94. package/dist/core/index.js.map +1 -0
  95. package/dist/core/version.d.ts +5 -0
  96. package/dist/core/version.d.ts.map +1 -0
  97. package/dist/core/version.js +31 -0
  98. package/dist/core/version.js.map +1 -0
  99. package/dist/index.d.ts +9 -0
  100. package/dist/index.d.ts.map +1 -0
  101. package/dist/index.js +38 -0
  102. package/dist/index.js.map +1 -0
  103. package/dist/node/ZipCompressNode.d.ts +123 -0
  104. package/dist/node/ZipCompressNode.d.ts.map +1 -0
  105. package/dist/node/ZipCompressNode.js +565 -0
  106. package/dist/node/ZipCompressNode.js.map +1 -0
  107. package/dist/node/ZipCopyNode.d.ts +165 -0
  108. package/dist/node/ZipCopyNode.d.ts.map +1 -0
  109. package/dist/node/ZipCopyNode.js +347 -0
  110. package/dist/node/ZipCopyNode.js.map +1 -0
  111. package/dist/node/ZipDecompressNode.d.ts +197 -0
  112. package/dist/node/ZipDecompressNode.d.ts.map +1 -0
  113. package/dist/node/ZipDecompressNode.js +678 -0
  114. package/dist/node/ZipDecompressNode.js.map +1 -0
  115. package/dist/node/ZipkitNode.d.ts +466 -0
  116. package/dist/node/ZipkitNode.d.ts.map +1 -0
  117. package/dist/node/ZipkitNode.js +1426 -0
  118. package/dist/node/ZipkitNode.js.map +1 -0
  119. package/dist/node/index.d.ts +25 -0
  120. package/dist/node/index.d.ts.map +1 -0
  121. package/dist/node/index.js +54 -0
  122. package/dist/node/index.js.map +1 -0
  123. package/dist/types/index.d.ts +45 -0
  124. package/dist/types/index.d.ts.map +1 -0
  125. package/dist/types/index.js +11 -0
  126. package/dist/types/index.js.map +1 -0
  127. package/examples/README.md +261 -0
  128. package/examples/append-data.json +44 -0
  129. package/examples/copy-zip-append.ts +139 -0
  130. package/examples/copy-zip.ts +152 -0
  131. package/examples/create-zip.ts +172 -0
  132. package/examples/extract-zip.ts +118 -0
  133. package/examples/list-zip.ts +161 -0
  134. package/examples/test-files/data.json +116 -0
  135. package/examples/test-files/document.md +80 -0
  136. package/examples/test-files/document.txt +6 -0
  137. package/examples/test-files/file1.txt +48 -0
  138. package/examples/test-files/file2.txt +80 -0
  139. package/examples/tsconfig.json +44 -0
  140. package/package.json +167 -0
  141. package/src/browser/ZipkitBrowser.ts +305 -0
  142. package/src/browser/index.esm.ts +32 -0
  143. package/src/browser/index.ts +19 -0
  144. package/src/core/ZipCompress.ts +370 -0
  145. package/src/core/ZipCopy.ts +434 -0
  146. package/src/core/ZipDecompress.ts +191 -0
  147. package/src/core/ZipEntry.ts +917 -0
  148. package/src/core/Zipkit.ts +794 -0
  149. package/src/core/ZstdManager.ts +165 -0
  150. package/src/core/components/HashCalculator.ts +384 -0
  151. package/src/core/components/Logger.ts +180 -0
  152. package/src/core/components/ProgressTracker.ts +134 -0
  153. package/src/core/components/Support.ts +77 -0
  154. package/src/core/components/Util.ts +91 -0
  155. package/src/core/constants/Errors.ts +78 -0
  156. package/src/core/constants/Headers.ts +205 -0
  157. package/src/core/encryption/Manager.ts +137 -0
  158. package/src/core/encryption/ZipCrypto.ts +650 -0
  159. package/src/core/encryption/index.ts +15 -0
  160. package/src/core/encryption/types.ts +33 -0
  161. package/src/core/index.ts +42 -0
  162. package/src/core/version.ts +33 -0
  163. package/src/index.ts +19 -0
  164. package/src/node/ZipCompressNode.ts +618 -0
  165. package/src/node/ZipCopyNode.ts +437 -0
  166. package/src/node/ZipDecompressNode.ts +793 -0
  167. package/src/node/ZipkitNode.ts +1706 -0
  168. package/src/node/index.ts +40 -0
  169. package/src/types/index.ts +68 -0
  170. package/src/types/modules.d.ts +22 -0
  171. package/src/types/opentimestamps.d.ts +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZipDecompressNode.js","sourceRoot":"","sources":["../../src/node/ZipDecompressNode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,466 @@
1
+ import Zipkit, { CompressOptions, StreamingFileHandle } from '../core';
2
+ import ZipEntry from '../core/ZipEntry';
3
+ import Errors from '../core/constants/Errors';
4
+ import * as fs from 'fs';
5
+ export * from '../core';
6
+ export { ZipEntry, Errors };
7
+ /**
8
+ * Interface for ZIP file writing operations
9
+ * Tracks file descriptor, stream, current position, and entry positions
10
+ */
11
+ export interface ZipFileWriter {
12
+ outputFd: number;
13
+ outputStream: fs.WriteStream;
14
+ currentPosition: number;
15
+ entryPositions: Map<string, number>;
16
+ }
17
+ /**
18
+ * ZipkitNode - Node.js file-based ZIP operations
19
+ *
20
+ * Extends Zipkit to provide file I/O operations for Node.js environments.
21
+ * Similar to ZipkitBrowser which provides Blob operations for browser environments.
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const zip = new ZipkitNode();
26
+ * await zip.loadZipFile('archive.zip');
27
+ * await zip.extractToFile(entry, './output/file.txt');
28
+ * ```
29
+ */
30
+ export default class ZipkitNode extends Zipkit {
31
+ private _zipkitCmpNode;
32
+ private _zipkitDeCmpNode;
33
+ private fileHandle;
34
+ private filePath;
35
+ private fileSize;
36
+ constructor(config?: {
37
+ bufferSize?: number;
38
+ debug?: boolean;
39
+ });
40
+ /**
41
+ * Lazy-load ZipCompressNode instance and override base class _zipkitCmp
42
+ * @returns ZipCompressNode instance (created on first access)
43
+ */
44
+ private getZipCompressNode;
45
+ /**
46
+ * Lazy-load ZipDecompressNode instance and override base class _zipkitDeCmp
47
+ * @returns ZipDecompressNode instance (created on first access)
48
+ */
49
+ private getZipDecompressNode;
50
+ /**
51
+ * Load ZIP file from file path (streaming mode)
52
+ *
53
+ * **Required**: You must call this method before calling `getDirectory()` or any other ZIP operations.
54
+ * This method:
55
+ * 1. Resets all ZIP data
56
+ * 2. Opens the file handle
57
+ * 3. Loads EOCD and parses central directory
58
+ * 4. Populates this.zipEntries[] array
59
+ *
60
+ * @param filePath - Path to the ZIP file to load
61
+ * @returns Promise<ZipEntry[]> Array of all entries in the ZIP file
62
+ * @throws Error if Node.js environment not available
63
+ */
64
+ loadZipFile(filePath: string): Promise<ZipEntry[]>;
65
+ /**
66
+ * Alias for loadZipFile() for consistency
67
+ * @param filePath - Path to the ZIP file to load
68
+ * @returns Promise<ZipEntry[]> Array of all entries in the ZIP file
69
+ */
70
+ loadZipFromFile(filePath: string): Promise<ZipEntry[]>;
71
+ /**
72
+ * Extract file directly to disk with true streaming (no memory buffering)
73
+ * Wrapper for ZipDecompress.extractToFile()
74
+ *
75
+ * Note: ZSTD codec is lazily initialized on first use (module-level singleton).
76
+ * Initialization happens automatically when needed.
77
+ *
78
+ * @param entry - ZIP entry to extract
79
+ * @param outputPath - Path where the file should be written
80
+ * @param options - Optional extraction options:
81
+ * - skipHashCheck: Skip hash verification (default: false)
82
+ * - onProgress: Callback function receiving bytes extracted as parameter
83
+ * @returns Promise that resolves when extraction is complete
84
+ * @throws Error if not a File-based ZIP
85
+ */
86
+ extractToFile(entry: ZipEntry, outputPath: string, options?: {
87
+ skipHashCheck?: boolean;
88
+ onProgress?: (bytes: number) => void;
89
+ }): Promise<void>;
90
+ /**
91
+ * Alias for extractToFile() for consistency
92
+ * @param entry - ZIP entry to extract
93
+ * @param outputPath - Path where the file should be written
94
+ * @param options - Optional extraction options
95
+ * @returns Promise that resolves when extraction is complete
96
+ */
97
+ extractEntryToFile(entry: ZipEntry, outputPath: string, options?: {
98
+ skipHashCheck?: boolean;
99
+ onProgress?: (bytes: number) => void;
100
+ }): Promise<void>;
101
+ /**
102
+ * Extract file to Buffer (in-memory) for file-based ZIP
103
+ *
104
+ * This method extracts a ZIP entry directly to a Buffer without writing to disk.
105
+ * This is ideal for reading metadata files (like NZIP.TOKEN) that don't need
106
+ * to be written to temporary files.
107
+ *
108
+ * @param entry - ZIP entry to extract
109
+ * @param options - Optional extraction options:
110
+ * - skipHashCheck: Skip hash verification (default: false)
111
+ * - onProgress: Callback function receiving bytes extracted as parameter
112
+ * @returns Promise that resolves to Buffer containing the extracted file data
113
+ * @throws Error if not a File-based ZIP or if extraction fails
114
+ */
115
+ extractToBuffer(entry: ZipEntry, options?: {
116
+ skipHashCheck?: boolean;
117
+ onProgress?: (bytes: number) => void;
118
+ }): Promise<Buffer>;
119
+ /**
120
+ * Get comprehensive archive statistics
121
+ *
122
+ * Calculates statistics about the loaded ZIP archive including file counts,
123
+ * sizes, compression ratios, and file system metadata.
124
+ *
125
+ * @param archivePath - Optional path to archive file (if not already loaded)
126
+ * @returns Promise that resolves to ArchiveStatistics object
127
+ * @throws Error if archive is not loaded and archivePath is not provided
128
+ *
129
+ * @example
130
+ * ```typescript
131
+ * const zipkit = new ZipkitNode();
132
+ * await zipkit.loadZipFile('archive.zip');
133
+ * const stats = await zipkit.getArchiveStatistics();
134
+ * console.log(`Total files: ${stats.totalFiles}`);
135
+ * console.log(`Compression ratio: ${stats.compressionRatio.toFixed(2)}%`);
136
+ * ```
137
+ */
138
+ getArchiveStatistics(archivePath?: string): Promise<import('../types').ArchiveStatistics>;
139
+ /**
140
+ * Test entry integrity without extracting to disk
141
+ * Validates CRC-32 or SHA-256 hash without writing decompressed data
142
+ *
143
+ * This method processes chunks as they are decompressed and validates them,
144
+ * but discards the decompressed data instead of writing to disk. This is useful
145
+ * for verifying ZIP file integrity without extracting files.
146
+ *
147
+ * @param entry - ZIP entry to test
148
+ * @param options - Optional test options:
149
+ * - skipHashCheck: Skip hash verification (default: false)
150
+ * - onProgress: Callback function receiving bytes processed as parameter
151
+ * @returns Promise that resolves to an object containing the verified hash (if SHA-256) or undefined
152
+ * @throws Error if validation fails (INVALID_CRC or INVALID_SHA256) or if not a File-based ZIP
153
+ */
154
+ testEntry(entry: ZipEntry, options?: {
155
+ skipHashCheck?: boolean;
156
+ onProgress?: (bytes: number) => void;
157
+ }): Promise<{
158
+ verifiedHash?: string;
159
+ }>;
160
+ /**
161
+ * Compress data for a ZIP entry (Buffer-based)
162
+ * Override to use ZipCompressNode instead of ZipCompress
163
+ *
164
+ * @param entry - ZIP entry to compress
165
+ * @param data - Buffer containing data to compress
166
+ * @param options - Compression options
167
+ * @param onOutputBuffer - Optional callback for streaming output
168
+ * @returns Promise resolving to Buffer containing compressed data
169
+ */
170
+ compressData(entry: ZipEntry, data: Buffer, options?: CompressOptions, onOutputBuffer?: (data: Buffer) => Promise<void>): Promise<Buffer>;
171
+ /**
172
+ * Compress a file from disk
173
+ * Wrapper for ZipCompressNode.compressFile()
174
+ *
175
+ * @param filePath - Path to the file to compress
176
+ * @param entry - ZIP entry to compress (filename should already be set)
177
+ * @param options - Optional compression options
178
+ * @returns Promise resolving to Buffer containing compressed data
179
+ */
180
+ compressFile(filePath: string, entry: ZipEntry, options?: CompressOptions): Promise<Buffer>;
181
+ /**
182
+ * Compress a file from disk using streaming for large files
183
+ * Wrapper for ZipCompressNode.compressFileStream()
184
+ *
185
+ * @param filePath - Path to the file to compress
186
+ * @param entry - ZIP entry to compress (filename should already be set)
187
+ * @param options - Optional compression options
188
+ * @param onOutputBuffer - Optional callback for streaming output
189
+ * @returns Promise resolving to Buffer containing compressed data
190
+ */
191
+ compressFileStream(filePath: string, entry: ZipEntry, options?: CompressOptions, onOutputBuffer?: (data: Buffer) => Promise<void>): Promise<Buffer>;
192
+ /**
193
+ * Extract all entries from ZIP to a directory
194
+ *
195
+ * @param outputDir - Directory where files should be extracted
196
+ * @param options - Optional extraction options:
197
+ * - skipHashCheck: Skip hash verification (default: false)
198
+ * - onProgress: Callback function receiving (entry, bytes) as parameters
199
+ * - preservePaths: Preserve directory structure (default: true)
200
+ * @returns Promise that resolves when all extractions are complete
201
+ * @throws Error if not a File-based ZIP
202
+ */
203
+ extractAll(outputDir: string, options?: {
204
+ skipHashCheck?: boolean;
205
+ onProgress?: (entry: ZipEntry, bytes: number) => void;
206
+ preservePaths?: boolean;
207
+ }): Promise<void>;
208
+ /**
209
+ * Initialize ZIP file for writing
210
+ * Creates output file with seek capability and returns writer object
211
+ *
212
+ * @param outputPath - Path where the ZIP file should be created
213
+ * @returns Promise resolving to ZipFileWriter object
214
+ */
215
+ initializeZipFile(outputPath: string): Promise<ZipFileWriter>;
216
+ /**
217
+ * Prepare ZipEntry from file path
218
+ * Validates file exists and creates entry with metadata from file stats
219
+ *
220
+ * @param filePath - Path to the file
221
+ * @param entryName - Optional entry name (defaults to basename)
222
+ * @returns Promise resolving to ZipEntry ready for compression
223
+ */
224
+ prepareEntryFromFile(filePath: string, entryName?: string): Promise<ZipEntry>;
225
+ /**
226
+ * Write a ZIP entry to the file
227
+ * Handles sequential write: header (placeholder) → compress → data → update header
228
+ *
229
+ * @param writer - ZipFileWriter object
230
+ * @param entry - ZipEntry to write
231
+ * @param filePath - Path to source file
232
+ * @param options - Optional compression options
233
+ * @param callbacks - Optional callbacks for progress and hash calculation
234
+ * @returns Promise that resolves when entry is written
235
+ */
236
+ writeZipEntry(writer: ZipFileWriter, entry: ZipEntry, filePath: string, options?: CompressOptions, callbacks?: {
237
+ onProgress?: (entry: ZipEntry, bytes: number) => void;
238
+ onHashCalculated?: (entry: ZipEntry, hash: Buffer) => void;
239
+ }): Promise<void>;
240
+ /**
241
+ * Write central directory entries to ZIP file
242
+ *
243
+ * @param writer - ZipFileWriter object
244
+ * @param entries - Array of ZipEntry objects
245
+ * @param options - Optional options for archive comment and progress
246
+ * @returns Promise resolving to central directory size in bytes
247
+ */
248
+ writeCentralDirectory(writer: ZipFileWriter, entries: ZipEntry[], options?: {
249
+ archiveComment?: string;
250
+ onProgress?: (entry: ZipEntry) => void;
251
+ }): Promise<number>;
252
+ /**
253
+ * Write End of Central Directory record
254
+ *
255
+ * @param writer - ZipFileWriter object
256
+ * @param totalEntries - Total number of entries in ZIP
257
+ * @param centralDirSize - Size of central directory in bytes
258
+ * @param centralDirOffset - Offset to start of central directory
259
+ * @param archiveComment - Optional archive comment (max 65535 bytes)
260
+ * @returns Promise that resolves when EOCD is written
261
+ */
262
+ writeEndOfCentralDirectory(writer: ZipFileWriter, totalEntries: number, centralDirSize: number, centralDirOffset: number, archiveComment?: string): Promise<void>;
263
+ /**
264
+ * Finalize ZIP file by closing handles
265
+ *
266
+ * @param writer - ZipFileWriter object
267
+ * @returns Promise that resolves when file is closed
268
+ */
269
+ finalizeZipFile(writer: ZipFileWriter): Promise<void>;
270
+ /**
271
+ * Create a ZIP file from multiple file paths
272
+ * Simple API that uses the modular subfunctions
273
+ *
274
+ * @param filePaths - Array of file paths to add to ZIP
275
+ * @param outputPath - Path where the ZIP file should be created
276
+ * @param options - Optional compression options
277
+ * @returns Promise that resolves when ZIP creation is complete
278
+ */
279
+ createZipFromFiles(filePaths: string[], outputPath: string, options?: CompressOptions): Promise<void>;
280
+ /**
281
+ * Add a file to the current ZIP
282
+ *
283
+ * @param filePath - Path to the file to add
284
+ * @param entryName - Name to use in ZIP (defaults to filename)
285
+ * @param options - Optional compression options
286
+ * @returns Promise resolving to the created ZipEntry
287
+ */
288
+ addFileToZip(filePath: string, entryName?: string, options?: CompressOptions): Promise<ZipEntry>;
289
+ /**
290
+ * Get underlying file handle for advanced operations
291
+ *
292
+ * @returns StreamingFileHandle if file is loaded
293
+ * @throws Error if file handle not available
294
+ */
295
+ getFileHandle(): StreamingFileHandle;
296
+ /**
297
+ * Close file handle explicitly
298
+ *
299
+ * @returns Promise that resolves when file is closed
300
+ */
301
+ closeFile(): Promise<void>;
302
+ /**
303
+ * Copy entry from another ZIP (compatibility method)
304
+ * Reads the local header and compressed data from the file and returns it as a Buffer
305
+ * This is used when updating an existing ZIP file to copy unchanged entries
306
+ *
307
+ * @param entry - ZIP entry to copy
308
+ * @returns Promise resolving to Buffer containing local header + compressed data
309
+ * @throws Error if file handle not available
310
+ */
311
+ copyEntry(entry: ZipEntry): Promise<Buffer>;
312
+ /**
313
+ * Update existing ZIP file
314
+ *
315
+ * This is a placeholder for future implementation.
316
+ * Full implementation would require:
317
+ * - Reading existing ZIP structure
318
+ * - Identifying entries to update/add/remove
319
+ * - Writing updated ZIP file
320
+ *
321
+ * @param zipPath - Path to the ZIP file to update
322
+ * @param updates - Update operations (add, update, remove entries)
323
+ * @returns Promise that resolves when update is complete
324
+ */
325
+ updateZipFile(zipPath: string, updates: {
326
+ add?: Array<{
327
+ filePath: string;
328
+ entryName?: string;
329
+ options?: CompressOptions;
330
+ }>;
331
+ update?: Array<{
332
+ entryName: string;
333
+ filePath: string;
334
+ options?: CompressOptions;
335
+ }>;
336
+ remove?: string[];
337
+ }): Promise<void>;
338
+ /**
339
+ * Open file handle for streaming mode
340
+ */
341
+ private openFileHandle;
342
+ /**
343
+ * Load End of Central Directory (EOCD) in streaming mode
344
+ */
345
+ private loadEOCD;
346
+ /**
347
+ * Load ZIP64 End of Central Directory
348
+ */
349
+ private loadZIP64EOCD;
350
+ /**
351
+ * Reset file-based ZIP data to initial state
352
+ */
353
+ private resetFileData;
354
+ /**
355
+ * Filter ZIP entries based on include/exclude patterns
356
+ *
357
+ * @param entries - Array of ZipEntry objects to filter
358
+ * @param options - Optional filtering options
359
+ * @returns Filtered array of ZipEntry objects
360
+ */
361
+ filterEntries(entries: ZipEntry[], options?: {
362
+ include?: string[];
363
+ exclude?: string[];
364
+ skipMetadata?: boolean;
365
+ }): ZipEntry[];
366
+ /**
367
+ * Prepare extraction path for a ZIP entry
368
+ *
369
+ * @param entry - ZipEntry to extract
370
+ * @param destination - Destination directory
371
+ * @param options - Optional path options
372
+ * @returns Absolute output path for the entry
373
+ */
374
+ prepareExtractionPath(entry: ZipEntry, destination: string, options?: {
375
+ junkPaths?: boolean;
376
+ }): string;
377
+ /**
378
+ * Extract timestamps from ZIP entry
379
+ *
380
+ * @param entry - ZipEntry to extract timestamps from
381
+ * @returns Object with mtime, atime, ctime (Date objects or null)
382
+ */
383
+ extractEntryTimestamps(entry: ZipEntry): {
384
+ mtime: Date | null;
385
+ atime: Date | null;
386
+ ctime: Date | null;
387
+ };
388
+ /**
389
+ * Determine if an entry should be extracted based on overwrite logic
390
+ *
391
+ * @param entry - ZipEntry to check
392
+ * @param outputPath - Path where file would be extracted
393
+ * @param options - Optional overwrite options
394
+ * @returns Promise resolving to decision object
395
+ */
396
+ shouldExtractEntry(entry: ZipEntry, outputPath: string, options?: {
397
+ overwrite?: boolean;
398
+ never?: boolean;
399
+ freshenOnly?: boolean;
400
+ updateOnly?: boolean;
401
+ onOverwritePrompt?: (filename: string) => Promise<'y' | 'n' | 'a' | 'q'>;
402
+ }): Promise<{
403
+ shouldExtract: boolean;
404
+ reason?: string;
405
+ }>;
406
+ /**
407
+ * Restore entry metadata (timestamps and permissions) to extracted file
408
+ *
409
+ * @param filePath - Path to the extracted file
410
+ * @param entry - ZipEntry that was extracted
411
+ * @param options - Optional metadata options
412
+ */
413
+ restoreEntryMetadata(filePath: string, entry: ZipEntry, options?: {
414
+ preserveTimestamps?: boolean;
415
+ preservePermissions?: boolean;
416
+ }): void;
417
+ /**
418
+ * Extract a single entry to a file path
419
+ * Handles symlinks, hardlinks, timestamps, and permissions
420
+ *
421
+ * @param entry - ZipEntry to extract
422
+ * @param outputPath - Path where file should be extracted
423
+ * @param options - Optional extraction options
424
+ * @returns Promise resolving to extraction result
425
+ */
426
+ extractEntryToPath(entry: ZipEntry, outputPath: string, options?: {
427
+ skipHashCheck?: boolean;
428
+ preserveTimestamps?: boolean;
429
+ preservePermissions?: boolean;
430
+ symlinks?: boolean;
431
+ hardLinks?: boolean;
432
+ onProgress?: (entry: ZipEntry, bytes: number) => void;
433
+ }): Promise<{
434
+ success: boolean;
435
+ bytesExtracted: number;
436
+ error?: string;
437
+ }>;
438
+ /**
439
+ * Extract all files from a ZIP archive to a destination directory
440
+ * Simple API that uses the modular subfunctions
441
+ *
442
+ * @param archivePath - Path to the ZIP file
443
+ * @param destination - Directory where files should be extracted (ignored if testOnly is true)
444
+ * @param options - Optional extraction options
445
+ * @returns Promise resolving to extraction statistics
446
+ */
447
+ extractZipFile(archivePath: string, destination: string, options?: {
448
+ password?: string;
449
+ overwrite?: boolean;
450
+ junkPaths?: boolean;
451
+ include?: string[];
452
+ exclude?: string[];
453
+ preserveTimestamps?: boolean;
454
+ preservePermissions?: boolean;
455
+ symlinks?: boolean;
456
+ hardLinks?: boolean;
457
+ skipHashCheck?: boolean;
458
+ testOnly?: boolean;
459
+ onProgress?: (entry: ZipEntry, bytes: number) => void;
460
+ onOverwritePrompt?: (filename: string) => Promise<'y' | 'n' | 'a' | 'q'>;
461
+ }): Promise<{
462
+ filesExtracted: number;
463
+ bytesExtracted: number;
464
+ }>;
465
+ }
466
+ //# sourceMappingURL=ZipkitNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZipkitNode.d.ts","sourceRoot":"","sources":["../../src/node/ZipkitNode.ts"],"names":[],"mappings":"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"}