@depup/firebase__storage 0.14.1-depup.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 (101) hide show
  1. package/README.md +31 -0
  2. package/changes.json +10 -0
  3. package/dist/index.browser.cjs.js +3685 -0
  4. package/dist/index.browser.cjs.js.map +1 -0
  5. package/dist/index.cjs.js +3685 -0
  6. package/dist/index.cjs.js.map +1 -0
  7. package/dist/index.esm.js +3656 -0
  8. package/dist/index.esm.js.map +1 -0
  9. package/dist/index.node.cjs.js +3710 -0
  10. package/dist/index.node.cjs.js.map +1 -0
  11. package/dist/node-esm/index.node.esm.js +3681 -0
  12. package/dist/node-esm/index.node.esm.js.map +1 -0
  13. package/dist/node-esm/package.json +1 -0
  14. package/dist/node-esm/src/api.browser.d.ts +47 -0
  15. package/dist/node-esm/src/api.d.ts +200 -0
  16. package/dist/node-esm/src/api.node.d.ts +47 -0
  17. package/dist/node-esm/src/constants.d.ts +20 -0
  18. package/dist/node-esm/src/implementation/async.d.ts +22 -0
  19. package/dist/node-esm/src/implementation/backoff.d.ts +43 -0
  20. package/dist/node-esm/src/implementation/blob.d.ts +34 -0
  21. package/dist/node-esm/src/implementation/connection.d.ts +56 -0
  22. package/dist/node-esm/src/implementation/constants.d.ts +48 -0
  23. package/dist/node-esm/src/implementation/error.d.ts +126 -0
  24. package/dist/node-esm/src/implementation/failrequest.d.ts +29 -0
  25. package/dist/node-esm/src/implementation/fs.d.ts +17 -0
  26. package/dist/node-esm/src/implementation/json.d.ts +7 -0
  27. package/dist/node-esm/src/implementation/list.d.ts +19 -0
  28. package/dist/node-esm/src/implementation/location.d.ts +32 -0
  29. package/dist/node-esm/src/implementation/metadata.d.ts +40 -0
  30. package/dist/node-esm/src/implementation/observer.d.ts +47 -0
  31. package/dist/node-esm/src/implementation/path.d.ts +31 -0
  32. package/dist/node-esm/src/implementation/request.d.ts +47 -0
  33. package/dist/node-esm/src/implementation/requestinfo.d.ts +73 -0
  34. package/dist/node-esm/src/implementation/requests.d.ts +84 -0
  35. package/dist/node-esm/src/implementation/string.d.ts +73 -0
  36. package/dist/node-esm/src/implementation/taskenums.d.ts +77 -0
  37. package/dist/node-esm/src/implementation/type.d.ts +23 -0
  38. package/dist/node-esm/src/implementation/url.d.ts +22 -0
  39. package/dist/node-esm/src/implementation/utils.d.ts +23 -0
  40. package/dist/node-esm/src/index.d.ts +7 -0
  41. package/dist/node-esm/src/index.node.d.ts +7 -0
  42. package/dist/node-esm/src/list.d.ts +41 -0
  43. package/dist/node-esm/src/metadata.d.ts +27 -0
  44. package/dist/node-esm/src/platform/base64.d.ts +20 -0
  45. package/dist/node-esm/src/platform/browser/base64.d.ts +19 -0
  46. package/dist/node-esm/src/platform/browser/connection.d.ts +55 -0
  47. package/dist/node-esm/src/platform/connection.d.ts +22 -0
  48. package/dist/node-esm/src/platform/node/base64.d.ts +19 -0
  49. package/dist/node-esm/src/platform/node/connection.d.ts +58 -0
  50. package/dist/node-esm/src/public-types.d.ts +424 -0
  51. package/dist/node-esm/src/reference.d.ts +208 -0
  52. package/dist/node-esm/src/service.d.ts +131 -0
  53. package/dist/node-esm/src/task.d.ts +148 -0
  54. package/dist/node-esm/test/unit/connection.d.ts +47 -0
  55. package/dist/node-esm/test/unit/testshared.d.ts +60 -0
  56. package/dist/src/api.browser.d.ts +47 -0
  57. package/dist/src/api.d.ts +200 -0
  58. package/dist/src/api.node.d.ts +47 -0
  59. package/dist/src/constants.d.ts +20 -0
  60. package/dist/src/implementation/async.d.ts +22 -0
  61. package/dist/src/implementation/backoff.d.ts +43 -0
  62. package/dist/src/implementation/blob.d.ts +34 -0
  63. package/dist/src/implementation/connection.d.ts +56 -0
  64. package/dist/src/implementation/constants.d.ts +48 -0
  65. package/dist/src/implementation/error.d.ts +126 -0
  66. package/dist/src/implementation/failrequest.d.ts +29 -0
  67. package/dist/src/implementation/fs.d.ts +17 -0
  68. package/dist/src/implementation/json.d.ts +7 -0
  69. package/dist/src/implementation/list.d.ts +19 -0
  70. package/dist/src/implementation/location.d.ts +32 -0
  71. package/dist/src/implementation/metadata.d.ts +40 -0
  72. package/dist/src/implementation/observer.d.ts +47 -0
  73. package/dist/src/implementation/path.d.ts +31 -0
  74. package/dist/src/implementation/request.d.ts +47 -0
  75. package/dist/src/implementation/requestinfo.d.ts +73 -0
  76. package/dist/src/implementation/requests.d.ts +84 -0
  77. package/dist/src/implementation/string.d.ts +73 -0
  78. package/dist/src/implementation/taskenums.d.ts +77 -0
  79. package/dist/src/implementation/type.d.ts +23 -0
  80. package/dist/src/implementation/url.d.ts +22 -0
  81. package/dist/src/implementation/utils.d.ts +23 -0
  82. package/dist/src/index.d.ts +7 -0
  83. package/dist/src/index.node.d.ts +7 -0
  84. package/dist/src/list.d.ts +41 -0
  85. package/dist/src/metadata.d.ts +27 -0
  86. package/dist/src/platform/base64.d.ts +20 -0
  87. package/dist/src/platform/browser/base64.d.ts +19 -0
  88. package/dist/src/platform/browser/connection.d.ts +55 -0
  89. package/dist/src/platform/connection.d.ts +22 -0
  90. package/dist/src/platform/node/base64.d.ts +19 -0
  91. package/dist/src/platform/node/connection.d.ts +58 -0
  92. package/dist/src/public-types.d.ts +424 -0
  93. package/dist/src/reference.d.ts +208 -0
  94. package/dist/src/service.d.ts +131 -0
  95. package/dist/src/task.d.ts +148 -0
  96. package/dist/src/tsdoc-metadata.json +11 -0
  97. package/dist/storage-public.d.ts +725 -0
  98. package/dist/storage.d.ts +1391 -0
  99. package/dist/test/unit/connection.d.ts +47 -0
  100. package/dist/test/unit/testshared.d.ts +60 -0
  101. package/package.json +98 -0
@@ -0,0 +1,73 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { StorageError } from './error';
18
+ import { Headers, Connection, ConnectionType } from './connection';
19
+ /**
20
+ * Type for url params stored in RequestInfo.
21
+ */
22
+ export interface UrlParams {
23
+ [name: string]: string | number;
24
+ }
25
+ /**
26
+ * A function that converts a server response to the API type expected by the
27
+ * SDK.
28
+ *
29
+ * @param I - the type of the backend's network response
30
+ * @param O - the output response type used by the rest of the SDK.
31
+ */
32
+ export type RequestHandler<I extends ConnectionType, O> = (connection: Connection<I>, response: I) => O;
33
+ /** A function to handle an error. */
34
+ export type ErrorHandler = (connection: Connection<ConnectionType>, response: StorageError) => StorageError;
35
+ /**
36
+ * Contains a fully specified request.
37
+ *
38
+ * @param I - the type of the backend's network response.
39
+ * @param O - the output response type used by the rest of the SDK.
40
+ */
41
+ export declare class RequestInfo<I extends ConnectionType, O> {
42
+ url: string;
43
+ method: string;
44
+ /**
45
+ * Returns the value with which to resolve the request's promise. Only called
46
+ * if the request is successful. Throw from this function to reject the
47
+ * returned Request's promise with the thrown error.
48
+ * Note: The XhrIo passed to this function may be reused after this callback
49
+ * returns. Do not keep a reference to it in any way.
50
+ */
51
+ handler: RequestHandler<I, O>;
52
+ timeout: number;
53
+ urlParams: UrlParams;
54
+ headers: Headers;
55
+ body: Blob | string | Uint8Array | null;
56
+ errorHandler: ErrorHandler | null;
57
+ /**
58
+ * Called with the current number of bytes uploaded and total size (-1 if not
59
+ * computable) of the request body (i.e. used to report upload progress).
60
+ */
61
+ progressCallback: ((p1: number, p2: number) => void) | null;
62
+ successCodes: number[];
63
+ additionalRetryCodes: number[];
64
+ constructor(url: string, method: string,
65
+ /**
66
+ * Returns the value with which to resolve the request's promise. Only called
67
+ * if the request is successful. Throw from this function to reject the
68
+ * returned Request's promise with the thrown error.
69
+ * Note: The XhrIo passed to this function may be reused after this callback
70
+ * returns. Do not keep a reference to it in any way.
71
+ */
72
+ handler: RequestHandler<I, O>, timeout: number);
73
+ }
@@ -0,0 +1,84 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * @fileoverview Defines methods for interacting with the network.
19
+ */
20
+ import { Metadata } from '../metadata';
21
+ import { ListResult } from '../list';
22
+ import { FbsBlob } from './blob';
23
+ import { StorageError } from './error';
24
+ import { Location } from './location';
25
+ import { Mappings } from './metadata';
26
+ import { RequestInfo } from './requestinfo';
27
+ import { Connection, ConnectionType } from './connection';
28
+ import { FirebaseStorageImpl } from '../service';
29
+ /**
30
+ * Throws the UNKNOWN StorageError if cndn is false.
31
+ */
32
+ export declare function handlerCheck(cndn: boolean): void;
33
+ export declare function metadataHandler(service: FirebaseStorageImpl, mappings: Mappings): (p1: Connection<string>, p2: string) => Metadata;
34
+ export declare function listHandler(service: FirebaseStorageImpl, bucket: string): (p1: Connection<string>, p2: string) => ListResult;
35
+ export declare function downloadUrlHandler(service: FirebaseStorageImpl, mappings: Mappings): (p1: Connection<string>, p2: string) => string | null;
36
+ export declare function sharedErrorHandler(location: Location): (p1: Connection<ConnectionType>, p2: StorageError) => StorageError;
37
+ export declare function objectErrorHandler(location: Location): (p1: Connection<ConnectionType>, p2: StorageError) => StorageError;
38
+ export declare function getMetadata(service: FirebaseStorageImpl, location: Location, mappings: Mappings): RequestInfo<string, Metadata>;
39
+ export declare function list(service: FirebaseStorageImpl, location: Location, delimiter?: string, pageToken?: string | null, maxResults?: number | null): RequestInfo<string, ListResult>;
40
+ export declare function getBytes<I extends ConnectionType>(service: FirebaseStorageImpl, location: Location, maxDownloadSizeBytes?: number): RequestInfo<I, I>;
41
+ export declare function getDownloadUrl(service: FirebaseStorageImpl, location: Location, mappings: Mappings): RequestInfo<string, string | null>;
42
+ export declare function updateMetadata(service: FirebaseStorageImpl, location: Location, metadata: Partial<Metadata>, mappings: Mappings): RequestInfo<string, Metadata>;
43
+ export declare function deleteObject(service: FirebaseStorageImpl, location: Location): RequestInfo<string, void>;
44
+ export declare function determineContentType_(metadata: Metadata | null, blob: FbsBlob | null): string;
45
+ export declare function metadataForUpload_(location: Location, blob: FbsBlob, metadata?: Metadata | null): Metadata;
46
+ /**
47
+ * Prepare RequestInfo for uploads as Content-Type: multipart.
48
+ */
49
+ export declare function multipartUpload(service: FirebaseStorageImpl, location: Location, mappings: Mappings, blob: FbsBlob, metadata?: Metadata | null): RequestInfo<string, Metadata>;
50
+ /**
51
+ * @param current The number of bytes that have been uploaded so far.
52
+ * @param total The total number of bytes in the upload.
53
+ * @param opt_finalized True if the server has finished the upload.
54
+ * @param opt_metadata The upload metadata, should
55
+ * only be passed if opt_finalized is true.
56
+ */
57
+ export declare class ResumableUploadStatus {
58
+ current: number;
59
+ total: number;
60
+ finalized: boolean;
61
+ metadata: Metadata | null;
62
+ constructor(current: number, total: number, finalized?: boolean, metadata?: Metadata | null);
63
+ }
64
+ export declare function checkResumeHeader_(xhr: Connection<string>, allowed?: string[]): string;
65
+ export declare function createResumableUpload(service: FirebaseStorageImpl, location: Location, mappings: Mappings, blob: FbsBlob, metadata?: Metadata | null): RequestInfo<string, string>;
66
+ /**
67
+ * @param url From a call to fbs.requests.createResumableUpload.
68
+ */
69
+ export declare function getResumableUploadStatus(service: FirebaseStorageImpl, location: Location, url: string, blob: FbsBlob): RequestInfo<string, ResumableUploadStatus>;
70
+ /**
71
+ * Any uploads via the resumable upload API must transfer a number of bytes
72
+ * that is a multiple of this number.
73
+ */
74
+ export declare const RESUMABLE_UPLOAD_CHUNK_SIZE: number;
75
+ /**
76
+ * @param url From a call to fbs.requests.createResumableUpload.
77
+ * @param chunkSize Number of bytes to upload.
78
+ * @param status The previous status.
79
+ * If not passed or null, we start from the beginning.
80
+ * @throws fbs.Error If the upload is already complete, the passed in status
81
+ * has a final size inconsistent with the blob, or the blob cannot be sliced
82
+ * for upload.
83
+ */
84
+ export declare function continueResumableUpload(location: Location, service: FirebaseStorageImpl, url: string, blob: FbsBlob, chunkSize: number, mappings: Mappings, status?: ResumableUploadStatus | null, progressCallback?: ((p1: number, p2: number) => void) | null): RequestInfo<string, ResumableUploadStatus>;
@@ -0,0 +1,73 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * An enumeration of the possible string formats for upload.
19
+ * @public
20
+ */
21
+ export type StringFormat = (typeof StringFormat)[keyof typeof StringFormat];
22
+ /**
23
+ * An enumeration of the possible string formats for upload.
24
+ * @public
25
+ */
26
+ export declare const StringFormat: {
27
+ /**
28
+ * Indicates the string should be interpreted "raw", that is, as normal text.
29
+ * The string will be interpreted as UTF-16, then uploaded as a UTF-8 byte
30
+ * sequence.
31
+ * Example: The string 'Hello! \\ud83d\\ude0a' becomes the byte sequence
32
+ * 48 65 6c 6c 6f 21 20 f0 9f 98 8a
33
+ */
34
+ readonly RAW: "raw";
35
+ /**
36
+ * Indicates the string should be interpreted as base64-encoded data.
37
+ * Padding characters (trailing '='s) are optional.
38
+ * Example: The string 'rWmO++E6t7/rlw==' becomes the byte sequence
39
+ * ad 69 8e fb e1 3a b7 bf eb 97
40
+ */
41
+ readonly BASE64: "base64";
42
+ /**
43
+ * Indicates the string should be interpreted as base64url-encoded data.
44
+ * Padding characters (trailing '='s) are optional.
45
+ * Example: The string 'rWmO--E6t7_rlw==' becomes the byte sequence
46
+ * ad 69 8e fb e1 3a b7 bf eb 97
47
+ */
48
+ readonly BASE64URL: "base64url";
49
+ /**
50
+ * Indicates the string is a data URL, such as one obtained from
51
+ * canvas.toDataURL().
52
+ * Example: the string 'data:application/octet-stream;base64,aaaa'
53
+ * becomes the byte sequence
54
+ * 69 a6 9a
55
+ * (the content-type "application/octet-stream" is also applied, but can
56
+ * be overridden in the metadata object).
57
+ */
58
+ readonly DATA_URL: "data_url";
59
+ };
60
+ export declare class StringData {
61
+ data: Uint8Array;
62
+ contentType: string | null;
63
+ constructor(data: Uint8Array, contentType?: string | null);
64
+ }
65
+ /**
66
+ * @internal
67
+ */
68
+ export declare function dataFromString(format: StringFormat, stringData: string): StringData;
69
+ export declare function utf8Bytes_(value: string): Uint8Array;
70
+ export declare function percentEncodedBytes_(value: string): Uint8Array;
71
+ export declare function base64Bytes_(format: StringFormat, value: string): Uint8Array;
72
+ export declare function dataURLBytes_(dataUrl: string): Uint8Array;
73
+ export declare function dataURLContentType_(dataUrl: string): string | null;
@@ -0,0 +1,77 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * @fileoverview Enumerations used for upload tasks.
19
+ */
20
+ /**
21
+ * An event that is triggered on a task.
22
+ * @internal
23
+ */
24
+ export type TaskEvent = string;
25
+ /**
26
+ * An event that is triggered on a task.
27
+ * @internal
28
+ */
29
+ export declare const TaskEvent: {
30
+ /**
31
+ * For this event,
32
+ * <ul>
33
+ * <li>The `next` function is triggered on progress updates and when the
34
+ * task is paused/resumed with an `UploadTaskSnapshot` as the first
35
+ * argument.</li>
36
+ * <li>The `error` function is triggered if the upload is canceled or fails
37
+ * for another reason.</li>
38
+ * <li>The `complete` function is triggered if the upload completes
39
+ * successfully.</li>
40
+ * </ul>
41
+ */
42
+ STATE_CHANGED: string;
43
+ };
44
+ /**
45
+ * Internal enum for task state.
46
+ */
47
+ export declare const enum InternalTaskState {
48
+ RUNNING = "running",
49
+ PAUSING = "pausing",
50
+ PAUSED = "paused",
51
+ SUCCESS = "success",
52
+ CANCELING = "canceling",
53
+ CANCELED = "canceled",
54
+ ERROR = "error"
55
+ }
56
+ /**
57
+ * Represents the current state of a running upload.
58
+ * @internal
59
+ */
60
+ export type TaskState = (typeof TaskState)[keyof typeof TaskState];
61
+ /**
62
+ * Represents the current state of a running upload.
63
+ * @internal
64
+ */
65
+ export declare const TaskState: {
66
+ /** The task is currently transferring data. */
67
+ readonly RUNNING: "running";
68
+ /** The task was paused by the user. */
69
+ readonly PAUSED: "paused";
70
+ /** The task completed successfully. */
71
+ readonly SUCCESS: "success";
72
+ /** The task was canceled. */
73
+ readonly CANCELED: "canceled";
74
+ /** The task failed with an error. */
75
+ readonly ERROR: "error";
76
+ };
77
+ export declare function taskStateFromInternalTaskState(state: InternalTaskState): TaskState;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ export declare function isJustDef<T>(p: T | null | undefined): p is T | null;
18
+ export declare function isFunction(p: unknown): p is Function;
19
+ export declare function isNonArrayObject(p: unknown): boolean;
20
+ export declare function isString(p: unknown): p is string;
21
+ export declare function isNativeBlob(p: unknown): p is Blob;
22
+ export declare function isNativeBlobDefined(): boolean;
23
+ export declare function validateNumber(argument: string, minValue: number, maxValue: number, value: number): void;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * @fileoverview Functions to create and manipulate URLs for the server API.
19
+ */
20
+ import { UrlParams } from './requestinfo';
21
+ export declare function makeUrl(urlPart: string, host: string, protocol: string): string;
22
+ export declare function makeQueryString(params: UrlParams): string;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * Checks the status code to see if the action should be retried.
19
+ *
20
+ * @param status Current HTTP status code returned by server.
21
+ * @param additionalRetryCodes additional retry codes to check against
22
+ */
23
+ export declare function isRetryStatusCode(status: number, additionalRetryCodes: number[]): boolean;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Cloud Storage for Firebase
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ export * from './api';
7
+ export * from './api.browser';
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Cloud Storage for Firebase
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ export * from './api';
7
+ export * from './api.node';
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2019 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Reference } from './reference';
18
+ /**
19
+ * Result returned by `list()`.
20
+ * @public
21
+ */
22
+ export interface ListResult {
23
+ /**
24
+ * References to prefixes (sub-folders). You can call list() on them to
25
+ * get its contents.
26
+ *
27
+ * Folders are implicit based on '/' in the object paths.
28
+ * For example, if a bucket has two objects '/a/b/1' and '/a/b/2', list('/a')
29
+ * will return '/a/b' as a prefix.
30
+ */
31
+ prefixes: Reference[];
32
+ /**
33
+ * Objects in this directory.
34
+ * You can call getMetadata() and getDownloadUrl() on them.
35
+ */
36
+ items: Reference[];
37
+ /**
38
+ * If set, there might be more results for this list. Use this token to resume the list.
39
+ */
40
+ nextPageToken?: string;
41
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { FullMetadata } from './public-types';
18
+ /**
19
+ * @fileoverview Documentation for the metadata format.
20
+ */
21
+ /**
22
+ * The full set of object metadata, including read-only properties.
23
+ */
24
+ interface Metadata extends FullMetadata {
25
+ [prop: string]: unknown;
26
+ }
27
+ export { Metadata };
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /** Converts a Base64 encoded string to a binary string. */
18
+ export declare function decodeBase64(encoded: string): string;
19
+ /** Converts a Uint8Array to a string. */
20
+ export declare function decodeUint8Array(data: Uint8Array): string;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /** Converts a Base64 encoded string to a binary string. */
18
+ export declare function decodeBase64(encoded: string): string;
19
+ export declare function decodeUint8Array(data: Uint8Array): string;
@@ -0,0 +1,55 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Connection, ConnectionType, ErrorCode, Headers } from '../../implementation/connection';
18
+ /**
19
+ * Network layer for browsers. We use this instead of goog.net.XhrIo because
20
+ * goog.net.XhrIo is hyuuuuge and doesn't work in React Native on Android.
21
+ */
22
+ declare abstract class XhrConnection<T extends ConnectionType> implements Connection<T> {
23
+ protected xhr_: XMLHttpRequest;
24
+ private errorCode_;
25
+ private sendPromise_;
26
+ protected sent_: boolean;
27
+ constructor();
28
+ abstract initXhr(): void;
29
+ send(url: string, method: string, isUsingEmulator: boolean, body?: ArrayBufferView | Blob | string, headers?: Headers): Promise<void>;
30
+ getErrorCode(): ErrorCode;
31
+ getStatus(): number;
32
+ getResponse(): T;
33
+ getErrorText(): string;
34
+ /** Aborts the request. */
35
+ abort(): void;
36
+ getResponseHeader(header: string): string | null;
37
+ addUploadProgressListener(listener: (p1: ProgressEvent) => void): void;
38
+ removeUploadProgressListener(listener: (p1: ProgressEvent) => void): void;
39
+ }
40
+ export declare class XhrTextConnection extends XhrConnection<string> {
41
+ initXhr(): void;
42
+ }
43
+ export declare function newTextConnection(): Connection<string>;
44
+ export declare class XhrBytesConnection extends XhrConnection<ArrayBuffer> {
45
+ private data_?;
46
+ initXhr(): void;
47
+ }
48
+ export declare function newBytesConnection(): Connection<ArrayBuffer>;
49
+ export declare class XhrBlobConnection extends XhrConnection<Blob> {
50
+ initXhr(): void;
51
+ }
52
+ export declare function newBlobConnection(): Connection<Blob>;
53
+ export declare function newStreamConnection(): Connection<ReadableStream>;
54
+ export declare function injectTestConnection(factory: (() => Connection<string>) | null): void;
55
+ export {};
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Connection } from '../implementation/connection';
18
+ export declare function injectTestConnection(factory: (() => Connection<string>) | null): void;
19
+ export declare function newTextConnection(): Connection<string>;
20
+ export declare function newBytesConnection(): Connection<ArrayBuffer>;
21
+ export declare function newBlobConnection(): Connection<Blob>;
22
+ export declare function newStreamConnection(): Connection<ReadableStream<Uint8Array>>;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /** Converts a Base64 encoded string to a binary string. */
18
+ export declare function decodeBase64(encoded: string): string;
19
+ export declare function decodeUint8Array(data: Uint8Array): string;
@@ -0,0 +1,58 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Connection, ConnectionType, ErrorCode } from '../../implementation/connection';
18
+ /**
19
+ * Network layer that works in Node.
20
+ *
21
+ * This network implementation should not be used in browsers as it does not
22
+ * support progress updates.
23
+ */
24
+ declare abstract class FetchConnection<T extends ConnectionType> implements Connection<T> {
25
+ protected errorCode_: ErrorCode;
26
+ protected statusCode_: number | undefined;
27
+ protected body_: ArrayBuffer | undefined;
28
+ protected errorText_: string;
29
+ protected headers_: Headers | undefined;
30
+ protected sent_: boolean;
31
+ constructor();
32
+ send(url: string, method: string, isUsingEmulator: boolean, body?: NodeJS.ArrayBufferView | Blob | string, headers?: Record<string, string>): Promise<void>;
33
+ getErrorCode(): ErrorCode;
34
+ getStatus(): number;
35
+ abstract getResponse(): T;
36
+ getErrorText(): string;
37
+ abort(): void;
38
+ getResponseHeader(header: string): string | null;
39
+ addUploadProgressListener(listener: (p1: ProgressEvent) => void): void;
40
+ removeUploadProgressListener(listener: (p1: ProgressEvent) => void): void;
41
+ }
42
+ export declare class FetchTextConnection extends FetchConnection<string> {
43
+ getResponse(): string;
44
+ }
45
+ export declare function newTextConnection(): Connection<string>;
46
+ export declare class FetchBytesConnection extends FetchConnection<ArrayBuffer> {
47
+ getResponse(): ArrayBuffer;
48
+ }
49
+ export declare function newBytesConnection(): Connection<ArrayBuffer>;
50
+ export declare class FetchStreamConnection extends FetchConnection<ReadableStream<Uint8Array>> {
51
+ private stream_;
52
+ send(url: string, method: string, isUsingEmulator: boolean, body?: NodeJS.ArrayBufferView | Blob | string, headers?: Record<string, string>): Promise<void>;
53
+ getResponse(): ReadableStream;
54
+ }
55
+ export declare function newStreamConnection(): Connection<ReadableStream<Uint8Array>>;
56
+ export declare function newBlobConnection(): Connection<Blob>;
57
+ export declare function injectTestConnection(factory: (() => Connection<string>) | null): void;
58
+ export {};