@memberjunction/storage 2.39.0 → 2.41.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/drivers/AWSFileStorage.d.ts +360 -4
- package/dist/drivers/AWSFileStorage.d.ts.map +1 -1
- package/dist/drivers/AWSFileStorage.js +357 -4
- package/dist/drivers/AWSFileStorage.js.map +1 -1
- package/dist/drivers/AzureFileStorage.d.ts +362 -2
- package/dist/drivers/AzureFileStorage.d.ts.map +1 -1
- package/dist/drivers/AzureFileStorage.js +357 -2
- package/dist/drivers/AzureFileStorage.js.map +1 -1
- package/dist/drivers/BoxFileStorage.d.ts +648 -20
- package/dist/drivers/BoxFileStorage.d.ts.map +1 -1
- package/dist/drivers/BoxFileStorage.js +951 -126
- package/dist/drivers/BoxFileStorage.js.map +1 -1
- package/dist/drivers/DropboxFileStorage.d.ts +437 -15
- package/dist/drivers/DropboxFileStorage.d.ts.map +1 -1
- package/dist/drivers/DropboxFileStorage.js +431 -15
- package/dist/drivers/DropboxFileStorage.js.map +1 -1
- package/dist/drivers/GoogleDriveFileStorage.d.ts +342 -16
- package/dist/drivers/GoogleDriveFileStorage.d.ts.map +1 -1
- package/dist/drivers/GoogleDriveFileStorage.js +340 -16
- package/dist/drivers/GoogleDriveFileStorage.js.map +1 -1
- package/dist/drivers/GoogleFileStorage.d.ts +358 -2
- package/dist/drivers/GoogleFileStorage.d.ts.map +1 -1
- package/dist/drivers/GoogleFileStorage.js +356 -2
- package/dist/drivers/GoogleFileStorage.js.map +1 -1
- package/dist/drivers/SharePointFileStorage.d.ts +434 -20
- package/dist/drivers/SharePointFileStorage.d.ts.map +1 -1
- package/dist/drivers/SharePointFileStorage.js +453 -22
- package/dist/drivers/SharePointFileStorage.js.map +1 -1
- package/dist/generic/FileStorageBase.d.ts +326 -108
- package/dist/generic/FileStorageBase.d.ts.map +1 -1
- package/dist/generic/FileStorageBase.js +54 -6
- package/dist/generic/FileStorageBase.js.map +1 -1
- package/dist/util.d.ts +125 -18
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +125 -18
- package/dist/util.js.map +1 -1
- package/package.json +8 -7
- package/readme.md +211 -1
|
@@ -1,37 +1,393 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { CreatePreAuthUploadUrlPayload, FileStorageBase, StorageListResult, StorageObjectMetadata } from '../generic/FileStorageBase';
|
|
3
|
+
/**
|
|
4
|
+
* AWS S3 implementation of the FileStorageBase interface.
|
|
5
|
+
*
|
|
6
|
+
* This class provides methods for interacting with Amazon S3 as a file storage provider.
|
|
7
|
+
* It implements all the abstract methods defined in FileStorageBase and handles AWS-specific
|
|
8
|
+
* authentication, authorization, and file operations.
|
|
9
|
+
*
|
|
10
|
+
* It requires the following environment variables to be set:
|
|
11
|
+
* - STORAGE_AWS_REGION: The AWS region (e.g., 'us-east-1')
|
|
12
|
+
* - STORAGE_AWS_BUCKET_NAME: The S3 bucket name
|
|
13
|
+
* - STORAGE_AWS_ACCESS_KEY_ID: The AWS access key ID
|
|
14
|
+
* - STORAGE_AWS_SECRET_ACCESS_KEY: The AWS secret access key
|
|
15
|
+
* - STORAGE_AWS_KEY_PREFIX: (Optional) Prefix for all object keys, defaults to '/'
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* // Create an instance of AWSFileStorage
|
|
20
|
+
* const s3Storage = new AWSFileStorage();
|
|
21
|
+
*
|
|
22
|
+
* // Generate a pre-authenticated upload URL
|
|
23
|
+
* const { UploadUrl } = await s3Storage.CreatePreAuthUploadUrl('documents/report.pdf');
|
|
24
|
+
*
|
|
25
|
+
* // Generate a pre-authenticated download URL
|
|
26
|
+
* const downloadUrl = await s3Storage.CreatePreAuthDownloadUrl('documents/report.pdf');
|
|
27
|
+
*
|
|
28
|
+
* // List files in a directory
|
|
29
|
+
* const files = await s3Storage.ListObjects('documents/');
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
3
32
|
export declare class AWSFileStorage extends FileStorageBase {
|
|
33
|
+
/** The name of this storage provider, used in error messages */
|
|
4
34
|
protected readonly providerName = "AWS S3";
|
|
35
|
+
/** The S3 bucket name */
|
|
5
36
|
private _bucket;
|
|
37
|
+
/** The key prefix to prepend to all object keys */
|
|
6
38
|
private _keyPrefix;
|
|
39
|
+
/** The S3 client instance */
|
|
7
40
|
private _client;
|
|
41
|
+
/**
|
|
42
|
+
* Creates a new instance of AWSFileStorage.
|
|
43
|
+
*
|
|
44
|
+
* Initializes the connection to AWS S3 using environment variables.
|
|
45
|
+
* Throws an error if any required environment variables are missing.
|
|
46
|
+
*/
|
|
8
47
|
constructor();
|
|
9
48
|
/**
|
|
10
|
-
* Normalizes the object name by ensuring it has the proper key prefix
|
|
49
|
+
* Normalizes the object name by ensuring it has the proper key prefix.
|
|
11
50
|
*
|
|
12
|
-
*
|
|
51
|
+
* This is a helper method used internally to ensure all object keys have
|
|
52
|
+
* the configured prefix. It handles cases where the object name already
|
|
53
|
+
* includes the prefix or has leading slashes.
|
|
54
|
+
*
|
|
55
|
+
* @param objectName - The object name to normalize
|
|
13
56
|
* @returns The normalized object name with the proper prefix
|
|
57
|
+
* @private
|
|
14
58
|
*/
|
|
15
59
|
private _normalizeKey;
|
|
16
60
|
/**
|
|
17
|
-
* Removes the prefix from a key to get the relative object name
|
|
61
|
+
* Removes the prefix from a key to get the relative object name.
|
|
62
|
+
*
|
|
63
|
+
* This is a helper method used internally to convert a full S3 key
|
|
64
|
+
* (including the prefix) back to the relative object name that
|
|
65
|
+
* clients will recognize.
|
|
18
66
|
*
|
|
19
|
-
* @param key The full key including the prefix
|
|
67
|
+
* @param key - The full key including the prefix
|
|
20
68
|
* @returns The object name without the prefix
|
|
69
|
+
* @private
|
|
21
70
|
*/
|
|
22
71
|
private _removePrefix;
|
|
72
|
+
/**
|
|
73
|
+
* Creates a pre-authenticated upload URL for an object in S3.
|
|
74
|
+
*
|
|
75
|
+
* This method generates a pre-signed URL that allows for uploading
|
|
76
|
+
* an object to S3 without needing AWS credentials. The URL is valid
|
|
77
|
+
* for 10 minutes and includes the content type based on the file extension.
|
|
78
|
+
*
|
|
79
|
+
* @param objectName - The name of the object to upload (including any path/directory)
|
|
80
|
+
* @returns A Promise resolving to an object with the upload URL
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```typescript
|
|
84
|
+
* // Generate a pre-authenticated upload URL for a PDF file
|
|
85
|
+
* const { UploadUrl } = await s3Storage.CreatePreAuthUploadUrl('documents/report.pdf');
|
|
86
|
+
*
|
|
87
|
+
* // The URL can be used with fetch or other HTTP clients to upload the file
|
|
88
|
+
* console.log(UploadUrl);
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
23
91
|
CreatePreAuthUploadUrl(objectName: string): Promise<CreatePreAuthUploadUrlPayload>;
|
|
92
|
+
/**
|
|
93
|
+
* Creates a pre-authenticated download URL for an object in S3.
|
|
94
|
+
*
|
|
95
|
+
* This method generates a pre-signed URL that allows for downloading
|
|
96
|
+
* an object from S3 without needing AWS credentials. The URL is valid
|
|
97
|
+
* for 10 minutes and can be shared with clients.
|
|
98
|
+
*
|
|
99
|
+
* @param objectName - The name of the object to download (including any path/directory)
|
|
100
|
+
* @returns A Promise resolving to the download URL
|
|
101
|
+
*
|
|
102
|
+
* @example
|
|
103
|
+
* ```typescript
|
|
104
|
+
* // Generate a pre-authenticated download URL for a PDF file
|
|
105
|
+
* const downloadUrl = await s3Storage.CreatePreAuthDownloadUrl('documents/report.pdf');
|
|
106
|
+
*
|
|
107
|
+
* // The URL can be shared with users or used in applications for direct download
|
|
108
|
+
* console.log(downloadUrl);
|
|
109
|
+
* ```
|
|
110
|
+
*/
|
|
24
111
|
CreatePreAuthDownloadUrl(objectName: string): Promise<string>;
|
|
112
|
+
/**
|
|
113
|
+
* Moves an object from one location to another within S3.
|
|
114
|
+
*
|
|
115
|
+
* Since S3 doesn't provide a native move operation, this method
|
|
116
|
+
* implements move as a copy followed by a delete operation.
|
|
117
|
+
* It first copies the object to the new location, and if successful,
|
|
118
|
+
* deletes the object from the original location.
|
|
119
|
+
*
|
|
120
|
+
* @param oldObjectName - The current name/path of the object
|
|
121
|
+
* @param newObjectName - The new name/path for the object
|
|
122
|
+
* @returns A Promise resolving to a boolean indicating success
|
|
123
|
+
*
|
|
124
|
+
* @example
|
|
125
|
+
* ```typescript
|
|
126
|
+
* // Move a file from drafts to published folder
|
|
127
|
+
* const success = await s3Storage.MoveObject(
|
|
128
|
+
* 'drafts/report.docx',
|
|
129
|
+
* 'published/final-report.docx'
|
|
130
|
+
* );
|
|
131
|
+
*
|
|
132
|
+
* if (success) {
|
|
133
|
+
* console.log('File successfully moved');
|
|
134
|
+
* } else {
|
|
135
|
+
* console.log('Failed to move file');
|
|
136
|
+
* }
|
|
137
|
+
* ```
|
|
138
|
+
*/
|
|
25
139
|
MoveObject(oldObjectName: string, newObjectName: string): Promise<boolean>;
|
|
140
|
+
/**
|
|
141
|
+
* Deletes an object from S3.
|
|
142
|
+
*
|
|
143
|
+
* This method attempts to delete the specified object. It returns true
|
|
144
|
+
* if the operation was successful, false otherwise.
|
|
145
|
+
*
|
|
146
|
+
* @param objectName - The name of the object to delete (including any path/directory)
|
|
147
|
+
* @returns A Promise resolving to a boolean indicating success
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* ```typescript
|
|
151
|
+
* // Delete a temporary file
|
|
152
|
+
* const deleted = await s3Storage.DeleteObject('temp/report-draft.pdf');
|
|
153
|
+
*
|
|
154
|
+
* if (deleted) {
|
|
155
|
+
* console.log('File successfully deleted');
|
|
156
|
+
* } else {
|
|
157
|
+
* console.log('Failed to delete file');
|
|
158
|
+
* }
|
|
159
|
+
* ```
|
|
160
|
+
*/
|
|
26
161
|
DeleteObject(objectName: string): Promise<boolean>;
|
|
162
|
+
/**
|
|
163
|
+
* Lists objects with the specified prefix in S3.
|
|
164
|
+
*
|
|
165
|
+
* This method returns a list of objects (files) and common prefixes (directories)
|
|
166
|
+
* under the specified path prefix. It uses the S3 ListObjectsV2 API which supports
|
|
167
|
+
* delimiter-based hierarchy simulation.
|
|
168
|
+
*
|
|
169
|
+
* @param prefix - The path prefix to list objects from (e.g., 'documents/')
|
|
170
|
+
* @param delimiter - The character used to simulate directory structure, defaults to '/'
|
|
171
|
+
* @returns A Promise resolving to a StorageListResult containing objects and prefixes
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* ```typescript
|
|
175
|
+
* // List all files and directories in the documents folder
|
|
176
|
+
* const result = await s3Storage.ListObjects('documents/');
|
|
177
|
+
*
|
|
178
|
+
* // Process files
|
|
179
|
+
* for (const file of result.objects) {
|
|
180
|
+
* console.log(`File: ${file.name}, Size: ${file.size}, Type: ${file.contentType}`);
|
|
181
|
+
* }
|
|
182
|
+
*
|
|
183
|
+
* // Process subdirectories
|
|
184
|
+
* for (const dir of result.prefixes) {
|
|
185
|
+
* console.log(`Directory: ${dir}`);
|
|
186
|
+
* }
|
|
187
|
+
* ```
|
|
188
|
+
*/
|
|
27
189
|
ListObjects(prefix: string, delimiter?: string): Promise<StorageListResult>;
|
|
190
|
+
/**
|
|
191
|
+
* Creates a directory (virtual) in S3.
|
|
192
|
+
*
|
|
193
|
+
* Since S3 doesn't have a native directory concept, this method creates
|
|
194
|
+
* a zero-byte object with a trailing slash to simulate a directory.
|
|
195
|
+
* The object has a special content type to indicate it's a directory.
|
|
196
|
+
*
|
|
197
|
+
* @param directoryPath - The path of the directory to create
|
|
198
|
+
* @returns A Promise resolving to a boolean indicating success
|
|
199
|
+
*
|
|
200
|
+
* @example
|
|
201
|
+
* ```typescript
|
|
202
|
+
* // Create a new directory structure
|
|
203
|
+
* const created = await s3Storage.CreateDirectory('documents/reports/annual/');
|
|
204
|
+
*
|
|
205
|
+
* if (created) {
|
|
206
|
+
* console.log('Directory created successfully');
|
|
207
|
+
* } else {
|
|
208
|
+
* console.log('Failed to create directory');
|
|
209
|
+
* }
|
|
210
|
+
* ```
|
|
211
|
+
*/
|
|
28
212
|
CreateDirectory(directoryPath: string): Promise<boolean>;
|
|
213
|
+
/**
|
|
214
|
+
* Deletes a directory (virtual) and optionally its contents from S3.
|
|
215
|
+
*
|
|
216
|
+
* For non-recursive deletion, this method simply deletes the directory
|
|
217
|
+
* placeholder object. For recursive deletion, it lists all objects with
|
|
218
|
+
* the directory path as prefix and deletes them using the DeleteObjects API,
|
|
219
|
+
* which allows for deleting up to 1000 objects in a single request.
|
|
220
|
+
*
|
|
221
|
+
* Note: This implementation doesn't handle pagination for directories with
|
|
222
|
+
* more than 1000 objects. In a production environment, you might want to
|
|
223
|
+
* enhance this to handle such cases.
|
|
224
|
+
*
|
|
225
|
+
* @param directoryPath - The path of the directory to delete
|
|
226
|
+
* @param recursive - If true, deletes all contents recursively (default: false)
|
|
227
|
+
* @returns A Promise resolving to a boolean indicating success
|
|
228
|
+
*
|
|
229
|
+
* @example
|
|
230
|
+
* ```typescript
|
|
231
|
+
* // Delete an empty directory
|
|
232
|
+
* const deleted = await s3Storage.DeleteDirectory('documents/temp/');
|
|
233
|
+
*
|
|
234
|
+
* // Delete a directory and all its contents
|
|
235
|
+
* const recursivelyDeleted = await s3Storage.DeleteDirectory('documents/old_projects/', true);
|
|
236
|
+
* ```
|
|
237
|
+
*/
|
|
29
238
|
DeleteDirectory(directoryPath: string, recursive?: boolean): Promise<boolean>;
|
|
239
|
+
/**
|
|
240
|
+
* Retrieves metadata for a specific object in S3.
|
|
241
|
+
*
|
|
242
|
+
* This method fetches the properties of an object using the HeadObject API,
|
|
243
|
+
* which doesn't download the object content. This is more efficient for
|
|
244
|
+
* checking file attributes like size, content type, and last modified date.
|
|
245
|
+
*
|
|
246
|
+
* @param objectName - The name of the object to get metadata for
|
|
247
|
+
* @returns A Promise resolving to a StorageObjectMetadata object
|
|
248
|
+
* @throws Error if the object doesn't exist or cannot be accessed
|
|
249
|
+
*
|
|
250
|
+
* @example
|
|
251
|
+
* ```typescript
|
|
252
|
+
* try {
|
|
253
|
+
* const metadata = await s3Storage.GetObjectMetadata('documents/report.pdf');
|
|
254
|
+
* console.log(`File: ${metadata.name}`);
|
|
255
|
+
* console.log(`Size: ${metadata.size} bytes`);
|
|
256
|
+
* console.log(`Last modified: ${metadata.lastModified}`);
|
|
257
|
+
* } catch (error) {
|
|
258
|
+
* console.error('File does not exist or cannot be accessed');
|
|
259
|
+
* }
|
|
260
|
+
* ```
|
|
261
|
+
*/
|
|
30
262
|
GetObjectMetadata(objectName: string): Promise<StorageObjectMetadata>;
|
|
263
|
+
/**
|
|
264
|
+
* Downloads an object's content from S3.
|
|
265
|
+
*
|
|
266
|
+
* This method retrieves the full content of an object using the GetObject API
|
|
267
|
+
* and returns it as a Buffer for processing in memory.
|
|
268
|
+
*
|
|
269
|
+
* @param objectName - The name of the object to download
|
|
270
|
+
* @returns A Promise resolving to a Buffer containing the object's data
|
|
271
|
+
* @throws Error if the object doesn't exist or cannot be downloaded
|
|
272
|
+
*
|
|
273
|
+
* @example
|
|
274
|
+
* ```typescript
|
|
275
|
+
* try {
|
|
276
|
+
* const content = await s3Storage.GetObject('documents/config.json');
|
|
277
|
+
* // Parse the JSON content
|
|
278
|
+
* const config = JSON.parse(content.toString('utf8'));
|
|
279
|
+
* console.log('Configuration loaded:', config);
|
|
280
|
+
* } catch (error) {
|
|
281
|
+
* console.error('Failed to download file:', error.message);
|
|
282
|
+
* }
|
|
283
|
+
* ```
|
|
284
|
+
*/
|
|
31
285
|
GetObject(objectName: string): Promise<Buffer>;
|
|
286
|
+
/**
|
|
287
|
+
* Uploads data to an object in S3.
|
|
288
|
+
*
|
|
289
|
+
* This method directly uploads a Buffer of data to an object with the specified name.
|
|
290
|
+
* It's useful for server-side operations where you already have the data in memory.
|
|
291
|
+
*
|
|
292
|
+
* @param objectName - The name to assign to the uploaded object
|
|
293
|
+
* @param data - The Buffer containing the data to upload
|
|
294
|
+
* @param contentType - Optional MIME type for the object (inferred from name if not provided)
|
|
295
|
+
* @param metadata - Optional key-value pairs of custom metadata to associate with the object
|
|
296
|
+
* @returns A Promise resolving to a boolean indicating success
|
|
297
|
+
*
|
|
298
|
+
* @example
|
|
299
|
+
* ```typescript
|
|
300
|
+
* // Upload a text file
|
|
301
|
+
* const content = Buffer.from('Hello, World!', 'utf8');
|
|
302
|
+
* const uploaded = await s3Storage.PutObject(
|
|
303
|
+
* 'documents/hello.txt',
|
|
304
|
+
* content,
|
|
305
|
+
* 'text/plain',
|
|
306
|
+
* { author: 'John Doe', department: 'Engineering' }
|
|
307
|
+
* );
|
|
308
|
+
*
|
|
309
|
+
* if (uploaded) {
|
|
310
|
+
* console.log('File uploaded successfully');
|
|
311
|
+
* } else {
|
|
312
|
+
* console.log('Failed to upload file');
|
|
313
|
+
* }
|
|
314
|
+
* ```
|
|
315
|
+
*/
|
|
32
316
|
PutObject(objectName: string, data: Buffer, contentType?: string, metadata?: Record<string, string>): Promise<boolean>;
|
|
317
|
+
/**
|
|
318
|
+
* Copies an object within S3.
|
|
319
|
+
*
|
|
320
|
+
* This method creates a copy of an object at a new location without removing the original.
|
|
321
|
+
* It uses the CopyObject API, which allows for copying objects within the same bucket.
|
|
322
|
+
*
|
|
323
|
+
* @param sourceObjectName - The name of the object to copy
|
|
324
|
+
* @param destinationObjectName - The name to assign to the copied object
|
|
325
|
+
* @returns A Promise resolving to a boolean indicating success
|
|
326
|
+
*
|
|
327
|
+
* @example
|
|
328
|
+
* ```typescript
|
|
329
|
+
* // Create a backup copy of an important file
|
|
330
|
+
* const copied = await s3Storage.CopyObject(
|
|
331
|
+
* 'documents/contract.pdf',
|
|
332
|
+
* 'backups/contract_2024-05-16.pdf'
|
|
333
|
+
* );
|
|
334
|
+
*
|
|
335
|
+
* if (copied) {
|
|
336
|
+
* console.log('File copied successfully');
|
|
337
|
+
* } else {
|
|
338
|
+
* console.log('Failed to copy file');
|
|
339
|
+
* }
|
|
340
|
+
* ```
|
|
341
|
+
*/
|
|
33
342
|
CopyObject(sourceObjectName: string, destinationObjectName: string): Promise<boolean>;
|
|
343
|
+
/**
|
|
344
|
+
* Checks if an object exists in S3.
|
|
345
|
+
*
|
|
346
|
+
* This method verifies the existence of an object using the HeadObject API,
|
|
347
|
+
* which doesn't download the object content. This is efficient for validation purposes.
|
|
348
|
+
*
|
|
349
|
+
* @param objectName - The name of the object to check
|
|
350
|
+
* @returns A Promise resolving to a boolean indicating if the object exists
|
|
351
|
+
*
|
|
352
|
+
* @example
|
|
353
|
+
* ```typescript
|
|
354
|
+
* // Check if a file exists before attempting to use it
|
|
355
|
+
* const exists = await s3Storage.ObjectExists('documents/report.pdf');
|
|
356
|
+
*
|
|
357
|
+
* if (exists) {
|
|
358
|
+
* console.log('File exists, proceeding with download');
|
|
359
|
+
* const content = await s3Storage.GetObject('documents/report.pdf');
|
|
360
|
+
* // Process the content...
|
|
361
|
+
* } else {
|
|
362
|
+
* console.log('File does not exist');
|
|
363
|
+
* }
|
|
364
|
+
* ```
|
|
365
|
+
*/
|
|
34
366
|
ObjectExists(objectName: string): Promise<boolean>;
|
|
367
|
+
/**
|
|
368
|
+
* Checks if a directory (virtual) exists in S3.
|
|
369
|
+
*
|
|
370
|
+
* Since S3 doesn't have a native directory concept, this method checks for either:
|
|
371
|
+
* 1. The existence of a directory placeholder object (zero-byte object with trailing slash)
|
|
372
|
+
* 2. The existence of any objects with the directory path as a prefix
|
|
373
|
+
*
|
|
374
|
+
* @param directoryPath - The path of the directory to check
|
|
375
|
+
* @returns A Promise resolving to a boolean indicating if the directory exists
|
|
376
|
+
*
|
|
377
|
+
* @example
|
|
378
|
+
* ```typescript
|
|
379
|
+
* // Check if a directory exists before trying to save files to it
|
|
380
|
+
* const exists = await s3Storage.DirectoryExists('documents/reports/');
|
|
381
|
+
*
|
|
382
|
+
* if (!exists) {
|
|
383
|
+
* console.log('Directory does not exist, creating it first');
|
|
384
|
+
* await s3Storage.CreateDirectory('documents/reports/');
|
|
385
|
+
* }
|
|
386
|
+
*
|
|
387
|
+
* // Now safe to use the directory
|
|
388
|
+
* await s3Storage.PutObject('documents/reports/new-report.pdf', fileData);
|
|
389
|
+
* ```
|
|
390
|
+
*/
|
|
35
391
|
DirectoryExists(directoryPath: string): Promise<boolean>;
|
|
36
392
|
}
|
|
37
393
|
//# sourceMappingURL=AWSFileStorage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AWSFileStorage.d.ts","sourceRoot":"","sources":["../../src/drivers/AWSFileStorage.ts"],"names":[],"mappings":";AAcA,OAAO,EACL,6BAA6B,EAC7B,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAEpC,qBACa,cAAe,SAAQ,eAAe;IACjD,SAAS,CAAC,QAAQ,CAAC,YAAY,YAAY;
|
|
1
|
+
{"version":3,"file":"AWSFileStorage.d.ts","sourceRoot":"","sources":["../../src/drivers/AWSFileStorage.ts"],"names":[],"mappings":";AAcA,OAAO,EACL,6BAA6B,EAC7B,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAEpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBACa,cAAe,SAAQ,eAAe;IACjD,gEAAgE;IAChE,SAAS,CAAC,QAAQ,CAAC,YAAY,YAAY;IAE3C,yBAAyB;IACzB,OAAO,CAAC,OAAO,CAAS;IAExB,mDAAmD;IACnD,OAAO,CAAC,UAAU,CAAS;IAE3B,6BAA6B;IAC7B,OAAO,CAAC,OAAO,CAAW;IAE1B;;;;;OAKG;;IAkBH;;;;;;;;;;OAUG;IACH,OAAO,CAAC,aAAa;IAUrB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,aAAa;IAOrB;;;;;;;;;;;;;;;;;;OAkBG;IACU,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAgB/F;;;;;;;;;;;;;;;;;;OAkBG;IACI,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOpE;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACU,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUvF;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa/D;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA2DrF;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBrE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACU,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAiDxF;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACU,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAkClF;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAuB3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACU,SAAS,CACpB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC;IAwBnB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACU,UAAU,CAAC,gBAAgB,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBlG;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACU,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgB/D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACU,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CA6BtE"}
|