@firebase/database 1.0.9 → 1.0.10

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 (225) hide show
  1. package/dist/index.cjs.js +13834 -13834
  2. package/dist/index.cjs.js.map +1 -1
  3. package/dist/index.esm2017.js +13834 -13834
  4. package/dist/index.esm2017.js.map +1 -1
  5. package/dist/index.node.cjs.js +13849 -13849
  6. package/dist/index.node.cjs.js.map +1 -1
  7. package/dist/index.standalone.js +13797 -13797
  8. package/dist/index.standalone.js.map +1 -1
  9. package/dist/node-esm/index.node.esm.js +13849 -13849
  10. package/dist/node-esm/index.node.esm.js.map +1 -1
  11. package/dist/node-esm/src/api/Database.d.ts +137 -137
  12. package/dist/node-esm/src/api/OnDisconnect.d.ts +110 -110
  13. package/dist/node-esm/src/api/Reference.d.ts +122 -122
  14. package/dist/node-esm/src/api/Reference_impl.d.ts +1098 -1098
  15. package/dist/node-esm/src/api/ServerValue.d.ts +30 -30
  16. package/dist/node-esm/src/api/Transaction.d.ts +83 -83
  17. package/dist/node-esm/src/api/test_access.d.ts +31 -31
  18. package/dist/node-esm/src/api.d.ts +18 -18
  19. package/dist/node-esm/src/api.standalone.d.ts +30 -30
  20. package/dist/node-esm/src/core/AppCheckTokenProvider.d.ts +30 -30
  21. package/dist/node-esm/src/core/AuthTokenProvider.d.ts +49 -49
  22. package/dist/node-esm/src/core/CompoundWrite.d.ts +81 -81
  23. package/dist/node-esm/src/core/PersistentConnection.d.ts +135 -135
  24. package/dist/node-esm/src/core/ReadonlyRestClient.d.ts +60 -60
  25. package/dist/node-esm/src/core/Repo.d.ts +144 -144
  26. package/dist/node-esm/src/core/RepoInfo.d.ts +56 -56
  27. package/dist/node-esm/src/core/ServerActions.d.ts +52 -52
  28. package/dist/node-esm/src/core/SnapshotHolder.d.ts +26 -26
  29. package/dist/node-esm/src/core/SparseSnapshotTree.d.ts +64 -64
  30. package/dist/node-esm/src/core/SyncPoint.d.ts +91 -91
  31. package/dist/node-esm/src/core/SyncTree.d.ts +166 -166
  32. package/dist/node-esm/src/core/WriteTree.d.ts +205 -205
  33. package/dist/node-esm/src/core/operation/AckUserWrite.d.ts +36 -36
  34. package/dist/node-esm/src/core/operation/ListenComplete.d.ts +26 -26
  35. package/dist/node-esm/src/core/operation/Merge.d.ts +33 -33
  36. package/dist/node-esm/src/core/operation/Operation.d.ts +45 -45
  37. package/dist/node-esm/src/core/operation/Overwrite.d.ts +28 -28
  38. package/dist/node-esm/src/core/snap/ChildrenNode.d.ts +112 -112
  39. package/dist/node-esm/src/core/snap/IndexMap.d.ts +43 -43
  40. package/dist/node-esm/src/core/snap/LeafNode.d.ts +83 -83
  41. package/dist/node-esm/src/core/snap/Node.d.ts +126 -126
  42. package/dist/node-esm/src/core/snap/childSet.d.ts +32 -32
  43. package/dist/node-esm/src/core/snap/comparators.d.ts +19 -19
  44. package/dist/node-esm/src/core/snap/indexes/Index.d.ts +50 -50
  45. package/dist/node-esm/src/core/snap/indexes/KeyIndex.d.ts +34 -34
  46. package/dist/node-esm/src/core/snap/indexes/PathIndex.d.ts +29 -29
  47. package/dist/node-esm/src/core/snap/indexes/PriorityIndex.d.ts +33 -33
  48. package/dist/node-esm/src/core/snap/indexes/ValueIndex.d.ts +31 -31
  49. package/dist/node-esm/src/core/snap/nodeFromJSON.d.ts +24 -24
  50. package/dist/node-esm/src/core/snap/snap.d.ts +23 -23
  51. package/dist/node-esm/src/core/stats/StatsCollection.d.ts +26 -26
  52. package/dist/node-esm/src/core/stats/StatsListener.d.ts +30 -30
  53. package/dist/node-esm/src/core/stats/StatsManager.d.ts +20 -20
  54. package/dist/node-esm/src/core/stats/StatsReporter.d.ts +28 -28
  55. package/dist/node-esm/src/core/storage/DOMStorageWrapper.d.ts +46 -46
  56. package/dist/node-esm/src/core/storage/MemoryStorage.d.ts +27 -27
  57. package/dist/node-esm/src/core/storage/storage.d.ts +22 -22
  58. package/dist/node-esm/src/core/util/EventEmitter.d.ts +39 -39
  59. package/dist/node-esm/src/core/util/ImmutableTree.d.ts +117 -117
  60. package/dist/node-esm/src/core/util/NextPushId.d.ts +33 -33
  61. package/dist/node-esm/src/core/util/OnlineMonitor.d.ts +31 -31
  62. package/dist/node-esm/src/core/util/Path.d.ts +94 -94
  63. package/dist/node-esm/src/core/util/ServerValues.d.ts +56 -56
  64. package/dist/node-esm/src/core/util/SortedMap.d.ts +324 -324
  65. package/dist/node-esm/src/core/util/Tree.d.ts +105 -105
  66. package/dist/node-esm/src/core/util/VisibilityMonitor.d.ts +23 -23
  67. package/dist/node-esm/src/core/util/libs/parser.d.ts +32 -32
  68. package/dist/node-esm/src/core/util/misc.d.ts +19 -19
  69. package/dist/node-esm/src/core/util/util.d.ts +176 -176
  70. package/dist/node-esm/src/core/util/validation.d.ts +70 -70
  71. package/dist/node-esm/src/core/version.d.ts +23 -23
  72. package/dist/node-esm/src/core/view/CacheNode.d.ts +41 -41
  73. package/dist/node-esm/src/core/view/Change.d.ts +46 -46
  74. package/dist/node-esm/src/core/view/ChildChangeAccumulator.d.ts +22 -22
  75. package/dist/node-esm/src/core/view/CompleteChildSource.d.ts +55 -55
  76. package/dist/node-esm/src/core/view/Event.d.ts +64 -64
  77. package/dist/node-esm/src/core/view/EventGenerator.d.ts +42 -42
  78. package/dist/node-esm/src/core/view/EventQueue.d.ts +67 -67
  79. package/dist/node-esm/src/core/view/EventRegistration.d.ts +87 -87
  80. package/dist/node-esm/src/core/view/QueryParams.d.ts +95 -95
  81. package/dist/node-esm/src/core/view/View.d.ts +59 -59
  82. package/dist/node-esm/src/core/view/ViewCache.d.ts +32 -32
  83. package/dist/node-esm/src/core/view/ViewProcessor.d.ts +32 -32
  84. package/dist/node-esm/src/core/view/filter/IndexedFilter.d.ts +35 -35
  85. package/dist/node-esm/src/core/view/filter/LimitedFilter.d.ts +47 -47
  86. package/dist/node-esm/src/core/view/filter/NodeFilter.d.ts +54 -54
  87. package/dist/node-esm/src/core/view/filter/RangedFilter.d.ts +47 -47
  88. package/dist/node-esm/src/index.d.ts +28 -28
  89. package/dist/node-esm/src/index.node.d.ts +17 -17
  90. package/dist/node-esm/src/index.standalone.d.ts +17 -17
  91. package/dist/node-esm/src/internal/index.d.ts +38 -38
  92. package/dist/node-esm/src/realtime/BrowserPollConnection.d.ts +198 -198
  93. package/dist/node-esm/src/realtime/Connection.d.ts +102 -102
  94. package/dist/node-esm/src/realtime/Constants.d.ts +27 -27
  95. package/dist/node-esm/src/realtime/Transport.d.ts +58 -58
  96. package/dist/node-esm/src/realtime/TransportManager.d.ts +50 -50
  97. package/dist/node-esm/src/realtime/WebSocketConnection.d.ts +127 -127
  98. package/dist/node-esm/src/realtime/polling/PacketReceiver.d.ts +38 -38
  99. package/dist/node-esm/src/register.d.ts +1 -1
  100. package/dist/node-esm/test/compound_write.test.d.ts +17 -17
  101. package/dist/node-esm/test/connection.test.d.ts +17 -17
  102. package/dist/node-esm/test/deno.test.d.ts +17 -17
  103. package/dist/node-esm/test/exp/integration.test.d.ts +17 -17
  104. package/dist/node-esm/test/helpers/EventAccumulator.d.ts +35 -35
  105. package/dist/node-esm/test/helpers/syncpoint-util.d.ts +29 -29
  106. package/dist/node-esm/test/helpers/util.d.ts +34 -34
  107. package/dist/node-esm/test/node.test.d.ts +17 -17
  108. package/dist/node-esm/test/parser.test.d.ts +17 -17
  109. package/dist/node-esm/test/path.test.d.ts +17 -17
  110. package/dist/node-esm/test/pushid.test.d.ts +17 -17
  111. package/dist/node-esm/test/queryconstraint.test.d.ts +17 -17
  112. package/dist/node-esm/test/repoinfo.test.d.ts +17 -17
  113. package/dist/node-esm/test/sortedmap.test.d.ts +17 -17
  114. package/dist/node-esm/test/sparsesnapshottree.test.d.ts +17 -17
  115. package/dist/node-esm/test/syncpoint.test.d.ts +17 -17
  116. package/dist/node-esm/test/transport.test.d.ts +17 -17
  117. package/dist/node-esm/test/websocketconnection.test.d.ts +17 -17
  118. package/dist/src/api/Database.d.ts +137 -137
  119. package/dist/src/api/OnDisconnect.d.ts +110 -110
  120. package/dist/src/api/Reference.d.ts +122 -122
  121. package/dist/src/api/Reference_impl.d.ts +1098 -1098
  122. package/dist/src/api/ServerValue.d.ts +30 -30
  123. package/dist/src/api/Transaction.d.ts +83 -83
  124. package/dist/src/api/test_access.d.ts +31 -31
  125. package/dist/src/api.d.ts +18 -18
  126. package/dist/src/api.standalone.d.ts +30 -30
  127. package/dist/src/core/AppCheckTokenProvider.d.ts +30 -30
  128. package/dist/src/core/AuthTokenProvider.d.ts +49 -49
  129. package/dist/src/core/CompoundWrite.d.ts +81 -81
  130. package/dist/src/core/PersistentConnection.d.ts +135 -135
  131. package/dist/src/core/ReadonlyRestClient.d.ts +60 -60
  132. package/dist/src/core/Repo.d.ts +144 -144
  133. package/dist/src/core/RepoInfo.d.ts +56 -56
  134. package/dist/src/core/ServerActions.d.ts +52 -52
  135. package/dist/src/core/SnapshotHolder.d.ts +26 -26
  136. package/dist/src/core/SparseSnapshotTree.d.ts +64 -64
  137. package/dist/src/core/SyncPoint.d.ts +91 -91
  138. package/dist/src/core/SyncTree.d.ts +166 -166
  139. package/dist/src/core/WriteTree.d.ts +205 -205
  140. package/dist/src/core/operation/AckUserWrite.d.ts +36 -36
  141. package/dist/src/core/operation/ListenComplete.d.ts +26 -26
  142. package/dist/src/core/operation/Merge.d.ts +33 -33
  143. package/dist/src/core/operation/Operation.d.ts +45 -45
  144. package/dist/src/core/operation/Overwrite.d.ts +28 -28
  145. package/dist/src/core/snap/ChildrenNode.d.ts +112 -112
  146. package/dist/src/core/snap/IndexMap.d.ts +43 -43
  147. package/dist/src/core/snap/LeafNode.d.ts +83 -83
  148. package/dist/src/core/snap/Node.d.ts +126 -126
  149. package/dist/src/core/snap/childSet.d.ts +32 -32
  150. package/dist/src/core/snap/comparators.d.ts +19 -19
  151. package/dist/src/core/snap/indexes/Index.d.ts +50 -50
  152. package/dist/src/core/snap/indexes/KeyIndex.d.ts +34 -34
  153. package/dist/src/core/snap/indexes/PathIndex.d.ts +29 -29
  154. package/dist/src/core/snap/indexes/PriorityIndex.d.ts +33 -33
  155. package/dist/src/core/snap/indexes/ValueIndex.d.ts +31 -31
  156. package/dist/src/core/snap/nodeFromJSON.d.ts +24 -24
  157. package/dist/src/core/snap/snap.d.ts +23 -23
  158. package/dist/src/core/stats/StatsCollection.d.ts +26 -26
  159. package/dist/src/core/stats/StatsListener.d.ts +30 -30
  160. package/dist/src/core/stats/StatsManager.d.ts +20 -20
  161. package/dist/src/core/stats/StatsReporter.d.ts +28 -28
  162. package/dist/src/core/storage/DOMStorageWrapper.d.ts +46 -46
  163. package/dist/src/core/storage/MemoryStorage.d.ts +27 -27
  164. package/dist/src/core/storage/storage.d.ts +22 -22
  165. package/dist/src/core/util/EventEmitter.d.ts +39 -39
  166. package/dist/src/core/util/ImmutableTree.d.ts +117 -117
  167. package/dist/src/core/util/NextPushId.d.ts +33 -33
  168. package/dist/src/core/util/OnlineMonitor.d.ts +31 -31
  169. package/dist/src/core/util/Path.d.ts +94 -94
  170. package/dist/src/core/util/ServerValues.d.ts +56 -56
  171. package/dist/src/core/util/SortedMap.d.ts +324 -324
  172. package/dist/src/core/util/Tree.d.ts +105 -105
  173. package/dist/src/core/util/VisibilityMonitor.d.ts +23 -23
  174. package/dist/src/core/util/libs/parser.d.ts +32 -32
  175. package/dist/src/core/util/misc.d.ts +19 -19
  176. package/dist/src/core/util/util.d.ts +176 -176
  177. package/dist/src/core/util/validation.d.ts +70 -70
  178. package/dist/src/core/version.d.ts +23 -23
  179. package/dist/src/core/view/CacheNode.d.ts +41 -41
  180. package/dist/src/core/view/Change.d.ts +46 -46
  181. package/dist/src/core/view/ChildChangeAccumulator.d.ts +22 -22
  182. package/dist/src/core/view/CompleteChildSource.d.ts +55 -55
  183. package/dist/src/core/view/Event.d.ts +64 -64
  184. package/dist/src/core/view/EventGenerator.d.ts +42 -42
  185. package/dist/src/core/view/EventQueue.d.ts +67 -67
  186. package/dist/src/core/view/EventRegistration.d.ts +87 -87
  187. package/dist/src/core/view/QueryParams.d.ts +95 -95
  188. package/dist/src/core/view/View.d.ts +59 -59
  189. package/dist/src/core/view/ViewCache.d.ts +32 -32
  190. package/dist/src/core/view/ViewProcessor.d.ts +32 -32
  191. package/dist/src/core/view/filter/IndexedFilter.d.ts +35 -35
  192. package/dist/src/core/view/filter/LimitedFilter.d.ts +47 -47
  193. package/dist/src/core/view/filter/NodeFilter.d.ts +54 -54
  194. package/dist/src/core/view/filter/RangedFilter.d.ts +47 -47
  195. package/dist/src/index.d.ts +28 -28
  196. package/dist/src/index.node.d.ts +17 -17
  197. package/dist/src/index.standalone.d.ts +17 -17
  198. package/dist/src/internal/index.d.ts +38 -38
  199. package/dist/src/realtime/BrowserPollConnection.d.ts +198 -198
  200. package/dist/src/realtime/Connection.d.ts +102 -102
  201. package/dist/src/realtime/Constants.d.ts +27 -27
  202. package/dist/src/realtime/Transport.d.ts +58 -58
  203. package/dist/src/realtime/TransportManager.d.ts +50 -50
  204. package/dist/src/realtime/WebSocketConnection.d.ts +127 -127
  205. package/dist/src/realtime/polling/PacketReceiver.d.ts +38 -38
  206. package/dist/src/register.d.ts +1 -1
  207. package/dist/test/compound_write.test.d.ts +17 -17
  208. package/dist/test/connection.test.d.ts +17 -17
  209. package/dist/test/deno.test.d.ts +17 -17
  210. package/dist/test/exp/integration.test.d.ts +17 -17
  211. package/dist/test/helpers/EventAccumulator.d.ts +35 -35
  212. package/dist/test/helpers/syncpoint-util.d.ts +29 -29
  213. package/dist/test/helpers/util.d.ts +34 -34
  214. package/dist/test/node.test.d.ts +17 -17
  215. package/dist/test/parser.test.d.ts +17 -17
  216. package/dist/test/path.test.d.ts +17 -17
  217. package/dist/test/pushid.test.d.ts +17 -17
  218. package/dist/test/queryconstraint.test.d.ts +17 -17
  219. package/dist/test/repoinfo.test.d.ts +17 -17
  220. package/dist/test/sortedmap.test.d.ts +17 -17
  221. package/dist/test/sparsesnapshottree.test.d.ts +17 -17
  222. package/dist/test/syncpoint.test.d.ts +17 -17
  223. package/dist/test/transport.test.d.ts +17 -17
  224. package/dist/test/websocketconnection.test.d.ts +17 -17
  225. package/package.json +8 -8
@@ -1,58 +1,58 @@
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 { RepoInfo } from '../core/RepoInfo';
18
- export interface TransportConstructor {
19
- new (connId: string, repoInfo: RepoInfo, applicationId?: string, appCheckToken?: string, authToken?: string, transportSessionId?: string, lastSessionId?: string): Transport;
20
- isAvailable: () => boolean;
21
- responsesRequiredToBeHealthy?: number;
22
- healthyTimeout?: number;
23
- }
24
- export declare abstract class Transport {
25
- /**
26
- * Bytes received since connection started.
27
- */
28
- abstract bytesReceived: number;
29
- /**
30
- * Bytes sent since connection started.
31
- */
32
- abstract bytesSent: number;
33
- /**
34
- * An identifier for this connection, used for logging
35
- */
36
- abstract connId: string;
37
- /**
38
- * @param connId - An identifier for this connection, used for logging
39
- * @param repoInfo - The info for the endpoint to send data to.
40
- * @param transportSessionId - Optional transportSessionId if this is connecting to an existing transport session
41
- * @param lastSessionId - Optional lastSessionId if there was a previous connection
42
- * @interface
43
- */
44
- constructor(connId: string, repoInfo: RepoInfo, transportSessionId?: string, lastSessionId?: string);
45
- /**
46
- * @param onMessage - Callback when messages arrive
47
- * @param onDisconnect - Callback with connection lost.
48
- */
49
- abstract open(onMessage: (a: {}) => void, onDisconnect: (a?: boolean) => void): void;
50
- abstract start(): void;
51
- abstract close(): void;
52
- /**
53
- * @param data - The JSON data to transmit
54
- */
55
- abstract send(data: {}): void;
56
- abstract markConnectionHealthy(): void;
57
- abstract markConnectionHealthy(): void;
58
- }
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 { RepoInfo } from '../core/RepoInfo';
18
+ export interface TransportConstructor {
19
+ new (connId: string, repoInfo: RepoInfo, applicationId?: string, appCheckToken?: string, authToken?: string, transportSessionId?: string, lastSessionId?: string): Transport;
20
+ isAvailable: () => boolean;
21
+ responsesRequiredToBeHealthy?: number;
22
+ healthyTimeout?: number;
23
+ }
24
+ export declare abstract class Transport {
25
+ /**
26
+ * Bytes received since connection started.
27
+ */
28
+ abstract bytesReceived: number;
29
+ /**
30
+ * Bytes sent since connection started.
31
+ */
32
+ abstract bytesSent: number;
33
+ /**
34
+ * An identifier for this connection, used for logging
35
+ */
36
+ abstract connId: string;
37
+ /**
38
+ * @param connId - An identifier for this connection, used for logging
39
+ * @param repoInfo - The info for the endpoint to send data to.
40
+ * @param transportSessionId - Optional transportSessionId if this is connecting to an existing transport session
41
+ * @param lastSessionId - Optional lastSessionId if there was a previous connection
42
+ * @interface
43
+ */
44
+ constructor(connId: string, repoInfo: RepoInfo, transportSessionId?: string, lastSessionId?: string);
45
+ /**
46
+ * @param onMessage - Callback when messages arrive
47
+ * @param onDisconnect - Callback with connection lost.
48
+ */
49
+ abstract open(onMessage: (a: {}) => void, onDisconnect: (a?: boolean) => void): void;
50
+ abstract start(): void;
51
+ abstract close(): void;
52
+ /**
53
+ * @param data - The JSON data to transmit
54
+ */
55
+ abstract send(data: {}): void;
56
+ abstract markConnectionHealthy(): void;
57
+ abstract markConnectionHealthy(): void;
58
+ }
@@ -1,50 +1,50 @@
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 { RepoInfo } from '../core/RepoInfo';
18
- import { BrowserPollConnection } from './BrowserPollConnection';
19
- import { TransportConstructor } from './Transport';
20
- import { WebSocketConnection } from './WebSocketConnection';
21
- /**
22
- * Currently simplistic, this class manages what transport a Connection should use at various stages of its
23
- * lifecycle.
24
- *
25
- * It starts with longpolling in a browser, and httppolling on node. It then upgrades to websockets if
26
- * they are available.
27
- */
28
- export declare class TransportManager {
29
- private transports_;
30
- static globalTransportInitialized_: boolean;
31
- static get ALL_TRANSPORTS(): (typeof BrowserPollConnection | typeof WebSocketConnection)[];
32
- /**
33
- * Returns whether transport has been selected to ensure WebSocketConnection or BrowserPollConnection are not called after
34
- * TransportManager has already set up transports_
35
- */
36
- static get IS_TRANSPORT_INITIALIZED(): boolean;
37
- /**
38
- * @param repoInfo - Metadata around the namespace we're connecting to
39
- */
40
- constructor(repoInfo: RepoInfo);
41
- private initTransports_;
42
- /**
43
- * @returns The constructor for the initial transport to use
44
- */
45
- initialTransport(): TransportConstructor;
46
- /**
47
- * @returns The constructor for the next transport, or null
48
- */
49
- upgradeTransport(): TransportConstructor | null;
50
- }
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 { RepoInfo } from '../core/RepoInfo';
18
+ import { BrowserPollConnection } from './BrowserPollConnection';
19
+ import { TransportConstructor } from './Transport';
20
+ import { WebSocketConnection } from './WebSocketConnection';
21
+ /**
22
+ * Currently simplistic, this class manages what transport a Connection should use at various stages of its
23
+ * lifecycle.
24
+ *
25
+ * It starts with longpolling in a browser, and httppolling on node. It then upgrades to websockets if
26
+ * they are available.
27
+ */
28
+ export declare class TransportManager {
29
+ private transports_;
30
+ static globalTransportInitialized_: boolean;
31
+ static get ALL_TRANSPORTS(): (typeof BrowserPollConnection | typeof WebSocketConnection)[];
32
+ /**
33
+ * Returns whether transport has been selected to ensure WebSocketConnection or BrowserPollConnection are not called after
34
+ * TransportManager has already set up transports_
35
+ */
36
+ static get IS_TRANSPORT_INITIALIZED(): boolean;
37
+ /**
38
+ * @param repoInfo - Metadata around the namespace we're connecting to
39
+ */
40
+ constructor(repoInfo: RepoInfo);
41
+ private initTransports_;
42
+ /**
43
+ * @returns The constructor for the initial transport to use
44
+ */
45
+ initialTransport(): TransportConstructor;
46
+ /**
47
+ * @returns The constructor for the next transport, or null
48
+ */
49
+ upgradeTransport(): TransportConstructor | null;
50
+ }
@@ -1,127 +1,127 @@
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 { RepoInfo } from '../core/RepoInfo';
18
- import { Transport } from './Transport';
19
- export declare function setWebSocketImpl(impl: any): void;
20
- /**
21
- * Create a new websocket connection with the given callbacks.
22
- */
23
- export declare class WebSocketConnection implements Transport {
24
- connId: string;
25
- private applicationId?;
26
- private appCheckToken?;
27
- private authToken?;
28
- keepaliveTimer: number | null;
29
- frames: string[] | null;
30
- totalFrames: number;
31
- bytesSent: number;
32
- bytesReceived: number;
33
- connURL: string;
34
- onDisconnect: (a?: boolean) => void;
35
- onMessage: (msg: {}) => void;
36
- mySock: WebSocket | null;
37
- private log_;
38
- private stats_;
39
- private everConnected_;
40
- private isClosed_;
41
- private nodeAdmin;
42
- /**
43
- * @param connId identifier for this transport
44
- * @param repoInfo The info for the websocket endpoint.
45
- * @param applicationId The Firebase App ID for this project.
46
- * @param appCheckToken The App Check Token for this client.
47
- * @param authToken The Auth Token for this client.
48
- * @param transportSessionId Optional transportSessionId if this is connecting
49
- * to an existing transport session
50
- * @param lastSessionId Optional lastSessionId if there was a previous
51
- * connection
52
- */
53
- constructor(connId: string, repoInfo: RepoInfo, applicationId?: string, appCheckToken?: string, authToken?: string, transportSessionId?: string, lastSessionId?: string);
54
- /**
55
- * @param repoInfo - The info for the websocket endpoint.
56
- * @param transportSessionId - Optional transportSessionId if this is connecting to an existing transport
57
- * session
58
- * @param lastSessionId - Optional lastSessionId if there was a previous connection
59
- * @returns connection url
60
- */
61
- private static connectionURL_;
62
- /**
63
- * @param onMessage - Callback when messages arrive
64
- * @param onDisconnect - Callback with connection lost.
65
- */
66
- open(onMessage: (msg: {}) => void, onDisconnect: (a?: boolean) => void): void;
67
- /**
68
- * No-op for websockets, we don't need to do anything once the connection is confirmed as open
69
- */
70
- start(): void;
71
- static forceDisallow_: boolean;
72
- static forceDisallow(): void;
73
- static isAvailable(): boolean;
74
- /**
75
- * Number of response before we consider the connection "healthy."
76
- */
77
- static responsesRequiredToBeHealthy: number;
78
- /**
79
- * Time to wait for the connection te become healthy before giving up.
80
- */
81
- static healthyTimeout: number;
82
- /**
83
- * Returns true if we previously failed to connect with this transport.
84
- */
85
- static previouslyFailed(): boolean;
86
- markConnectionHealthy(): void;
87
- private appendFrame_;
88
- /**
89
- * @param frameCount - The number of frames we are expecting from the server
90
- */
91
- private handleNewFrameCount_;
92
- /**
93
- * Attempts to parse a frame count out of some text. If it can't, assumes a value of 1
94
- * @returns Any remaining data to be process, or null if there is none
95
- */
96
- private extractFrameCount_;
97
- /**
98
- * Process a websocket frame that has arrived from the server.
99
- * @param mess - The frame data
100
- */
101
- handleIncomingFrame(mess: {
102
- [k: string]: unknown;
103
- }): void;
104
- /**
105
- * Send a message to the server
106
- * @param data - The JSON object to transmit
107
- */
108
- send(data: {}): void;
109
- private shutdown_;
110
- private onClosed_;
111
- /**
112
- * External-facing close handler.
113
- * Close the websocket and kill the connection.
114
- */
115
- close(): void;
116
- /**
117
- * Kill the current keepalive timer and start a new one, to ensure that it always fires N seconds after
118
- * the last activity.
119
- */
120
- resetKeepAlive(): void;
121
- /**
122
- * Send a string over the websocket.
123
- *
124
- * @param str - String to send.
125
- */
126
- private sendString_;
127
- }
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 { RepoInfo } from '../core/RepoInfo';
18
+ import { Transport } from './Transport';
19
+ export declare function setWebSocketImpl(impl: any): void;
20
+ /**
21
+ * Create a new websocket connection with the given callbacks.
22
+ */
23
+ export declare class WebSocketConnection implements Transport {
24
+ connId: string;
25
+ private applicationId?;
26
+ private appCheckToken?;
27
+ private authToken?;
28
+ keepaliveTimer: number | null;
29
+ frames: string[] | null;
30
+ totalFrames: number;
31
+ bytesSent: number;
32
+ bytesReceived: number;
33
+ connURL: string;
34
+ onDisconnect: (a?: boolean) => void;
35
+ onMessage: (msg: {}) => void;
36
+ mySock: WebSocket | null;
37
+ private log_;
38
+ private stats_;
39
+ private everConnected_;
40
+ private isClosed_;
41
+ private nodeAdmin;
42
+ /**
43
+ * @param connId identifier for this transport
44
+ * @param repoInfo The info for the websocket endpoint.
45
+ * @param applicationId The Firebase App ID for this project.
46
+ * @param appCheckToken The App Check Token for this client.
47
+ * @param authToken The Auth Token for this client.
48
+ * @param transportSessionId Optional transportSessionId if this is connecting
49
+ * to an existing transport session
50
+ * @param lastSessionId Optional lastSessionId if there was a previous
51
+ * connection
52
+ */
53
+ constructor(connId: string, repoInfo: RepoInfo, applicationId?: string, appCheckToken?: string, authToken?: string, transportSessionId?: string, lastSessionId?: string);
54
+ /**
55
+ * @param repoInfo - The info for the websocket endpoint.
56
+ * @param transportSessionId - Optional transportSessionId if this is connecting to an existing transport
57
+ * session
58
+ * @param lastSessionId - Optional lastSessionId if there was a previous connection
59
+ * @returns connection url
60
+ */
61
+ private static connectionURL_;
62
+ /**
63
+ * @param onMessage - Callback when messages arrive
64
+ * @param onDisconnect - Callback with connection lost.
65
+ */
66
+ open(onMessage: (msg: {}) => void, onDisconnect: (a?: boolean) => void): void;
67
+ /**
68
+ * No-op for websockets, we don't need to do anything once the connection is confirmed as open
69
+ */
70
+ start(): void;
71
+ static forceDisallow_: boolean;
72
+ static forceDisallow(): void;
73
+ static isAvailable(): boolean;
74
+ /**
75
+ * Number of response before we consider the connection "healthy."
76
+ */
77
+ static responsesRequiredToBeHealthy: number;
78
+ /**
79
+ * Time to wait for the connection te become healthy before giving up.
80
+ */
81
+ static healthyTimeout: number;
82
+ /**
83
+ * Returns true if we previously failed to connect with this transport.
84
+ */
85
+ static previouslyFailed(): boolean;
86
+ markConnectionHealthy(): void;
87
+ private appendFrame_;
88
+ /**
89
+ * @param frameCount - The number of frames we are expecting from the server
90
+ */
91
+ private handleNewFrameCount_;
92
+ /**
93
+ * Attempts to parse a frame count out of some text. If it can't, assumes a value of 1
94
+ * @returns Any remaining data to be process, or null if there is none
95
+ */
96
+ private extractFrameCount_;
97
+ /**
98
+ * Process a websocket frame that has arrived from the server.
99
+ * @param mess - The frame data
100
+ */
101
+ handleIncomingFrame(mess: {
102
+ [k: string]: unknown;
103
+ }): void;
104
+ /**
105
+ * Send a message to the server
106
+ * @param data - The JSON object to transmit
107
+ */
108
+ send(data: {}): void;
109
+ private shutdown_;
110
+ private onClosed_;
111
+ /**
112
+ * External-facing close handler.
113
+ * Close the websocket and kill the connection.
114
+ */
115
+ close(): void;
116
+ /**
117
+ * Kill the current keepalive timer and start a new one, to ensure that it always fires N seconds after
118
+ * the last activity.
119
+ */
120
+ resetKeepAlive(): void;
121
+ /**
122
+ * Send a string over the websocket.
123
+ *
124
+ * @param str - String to send.
125
+ */
126
+ private sendString_;
127
+ }
@@ -1,38 +1,38 @@
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
- * This class ensures the packets from the server arrive in order
19
- * This class takes data from the server and ensures it gets passed into the callbacks in order.
20
- */
21
- export declare class PacketReceiver {
22
- private onMessage_;
23
- pendingResponses: unknown[];
24
- currentResponseNum: number;
25
- closeAfterResponse: number;
26
- onClose: (() => void) | null;
27
- /**
28
- * @param onMessage_
29
- */
30
- constructor(onMessage_: (a: {}) => void);
31
- closeAfter(responseNum: number, callback: () => void): void;
32
- /**
33
- * Each message from the server comes with a response number, and an array of data. The responseNumber
34
- * allows us to ensure that we process them in the right order, since we can't be guaranteed that all
35
- * browsers will respond in the same order as the requests we sent
36
- */
37
- handleResponse(requestNum: number, data: unknown[]): void;
38
- }
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
+ * This class ensures the packets from the server arrive in order
19
+ * This class takes data from the server and ensures it gets passed into the callbacks in order.
20
+ */
21
+ export declare class PacketReceiver {
22
+ private onMessage_;
23
+ pendingResponses: unknown[];
24
+ currentResponseNum: number;
25
+ closeAfterResponse: number;
26
+ onClose: (() => void) | null;
27
+ /**
28
+ * @param onMessage_
29
+ */
30
+ constructor(onMessage_: (a: {}) => void);
31
+ closeAfter(responseNum: number, callback: () => void): void;
32
+ /**
33
+ * Each message from the server comes with a response number, and an array of data. The responseNumber
34
+ * allows us to ensure that we process them in the right order, since we can't be guaranteed that all
35
+ * browsers will respond in the same order as the requests we sent
36
+ */
37
+ handleResponse(requestNum: number, data: unknown[]): void;
38
+ }
@@ -1 +1 @@
1
- export declare function registerDatabase(variant?: string): void;
1
+ export declare function registerDatabase(variant?: string): void;
@@ -1,17 +1,17 @@
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 {};
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 {};
@@ -1,17 +1,17 @@
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 {};
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 {};
@@ -1,17 +1,17 @@
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
- export {};
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
+ export {};