@react-native-firebase/firestore 23.8.6 → 24.0.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 (359) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/RNFBFirestore.podspec +2 -1
  3. package/android/src/reactnative/java/io/invertase/firebase/firestore/ReactNativeFirebaseFirestoreCollectionModule.java +17 -4
  4. package/android/src/reactnative/java/io/invertase/firebase/firestore/ReactNativeFirebaseFirestoreDocumentModule.java +2 -2
  5. package/android/src/reactnative/java/io/invertase/firebase/firestore/ReactNativeFirebaseFirestorePipelineExecutor.java +1243 -0
  6. package/android/src/reactnative/java/io/invertase/firebase/firestore/ReactNativeFirebaseFirestorePipelineNodeBuilder.java +3919 -0
  7. package/android/src/reactnative/java/io/invertase/firebase/firestore/ReactNativeFirebaseFirestorePipelineParser.java +1735 -0
  8. package/android/src/reactnative/java/io/invertase/firebase/firestore/ReactNativeFirebaseFirestoreSerialize.java +1 -1
  9. package/dist/module/FieldPath.js +59 -0
  10. package/dist/module/FieldPath.js.map +1 -0
  11. package/dist/module/FieldValue.js +82 -0
  12. package/dist/module/FieldValue.js.map +1 -0
  13. package/{lib → dist/module}/FirestoreAggregate.js +31 -43
  14. package/dist/module/FirestoreAggregate.js.map +1 -0
  15. package/dist/module/FirestoreBlob.js +56 -0
  16. package/dist/module/FirestoreBlob.js.map +1 -0
  17. package/dist/module/FirestoreCollectionReference.js +70 -0
  18. package/dist/module/FirestoreCollectionReference.js.map +1 -0
  19. package/{lib → dist/module}/FirestoreDocumentChange.js +12 -15
  20. package/dist/module/FirestoreDocumentChange.js.map +1 -0
  21. package/dist/module/FirestoreDocumentReference.js +170 -0
  22. package/dist/module/FirestoreDocumentReference.js.map +1 -0
  23. package/dist/module/FirestoreDocumentSnapshot.js +88 -0
  24. package/dist/module/FirestoreDocumentSnapshot.js.map +1 -0
  25. package/dist/module/FirestoreFilter.js +146 -0
  26. package/dist/module/FirestoreFilter.js.map +1 -0
  27. package/dist/module/FirestoreGeoPoint.js +80 -0
  28. package/dist/module/FirestoreGeoPoint.js.map +1 -0
  29. package/{lib → dist/module}/FirestorePath.js +5 -12
  30. package/dist/module/FirestorePath.js.map +1 -0
  31. package/{lib → dist/module}/FirestorePersistentCacheIndexManager.js +11 -4
  32. package/dist/module/FirestorePersistentCacheIndexManager.js.map +1 -0
  33. package/dist/module/FirestoreQuery.js +298 -0
  34. package/dist/module/FirestoreQuery.js.map +1 -0
  35. package/{lib → dist/module}/FirestoreQueryModifiers.js +25 -136
  36. package/dist/module/FirestoreQueryModifiers.js.map +1 -0
  37. package/dist/module/FirestoreQuerySnapshot.js +98 -0
  38. package/dist/module/FirestoreQuerySnapshot.js.map +1 -0
  39. package/dist/module/FirestoreSnapshotMetadata.js +38 -0
  40. package/dist/module/FirestoreSnapshotMetadata.js.map +1 -0
  41. package/dist/module/FirestoreStatics.js +50 -0
  42. package/dist/module/FirestoreStatics.js.map +1 -0
  43. package/{lib → dist/module}/FirestoreTimestamp.js +39 -39
  44. package/dist/module/FirestoreTimestamp.js.map +1 -0
  45. package/dist/module/FirestoreTransaction.js +113 -0
  46. package/dist/module/FirestoreTransaction.js.map +1 -0
  47. package/dist/module/FirestoreTransactionHandler.js +137 -0
  48. package/dist/module/FirestoreTransactionHandler.js.map +1 -0
  49. package/dist/module/FirestoreVectorValue.js +75 -0
  50. package/dist/module/FirestoreVectorValue.js.map +1 -0
  51. package/dist/module/FirestoreWriteBatch.js +113 -0
  52. package/dist/module/FirestoreWriteBatch.js.map +1 -0
  53. package/dist/module/LoadBundleTask.js +70 -0
  54. package/dist/module/LoadBundleTask.js.map +1 -0
  55. package/dist/module/index.js +31 -0
  56. package/dist/module/index.js.map +1 -0
  57. package/dist/module/modular/Bytes.js +67 -0
  58. package/dist/module/modular/Bytes.js.map +1 -0
  59. package/dist/module/modular/FieldPath.js +25 -0
  60. package/dist/module/modular/FieldPath.js.map +1 -0
  61. package/dist/module/modular/FieldValue.js +37 -0
  62. package/dist/module/modular/FieldValue.js.map +1 -0
  63. package/dist/module/modular/GeoPoint.js +22 -0
  64. package/dist/module/modular/GeoPoint.js.map +1 -0
  65. package/dist/module/modular/Timestamp.js +22 -0
  66. package/dist/module/modular/Timestamp.js.map +1 -0
  67. package/dist/module/modular/VectorValue.js +25 -0
  68. package/dist/module/modular/VectorValue.js.map +1 -0
  69. package/dist/module/modular/query.js +222 -0
  70. package/dist/module/modular/query.js.map +1 -0
  71. package/dist/module/modular/snapshot.js +32 -0
  72. package/dist/module/modular/snapshot.js.map +1 -0
  73. package/dist/module/modular.js +229 -0
  74. package/dist/module/modular.js.map +1 -0
  75. package/dist/module/namespaced.js +298 -0
  76. package/dist/module/namespaced.js.map +1 -0
  77. package/dist/module/package.json +1 -0
  78. package/dist/module/pipelines/expressions.js +1273 -0
  79. package/dist/module/pipelines/expressions.js.map +1 -0
  80. package/dist/module/pipelines/index.js +32 -0
  81. package/dist/module/pipelines/index.js.map +1 -0
  82. package/dist/module/pipelines/pipeline-result.js +58 -0
  83. package/dist/module/pipelines/pipeline-result.js.map +1 -0
  84. package/dist/module/pipelines/pipeline-source.js +4 -0
  85. package/dist/module/pipelines/pipeline-source.js.map +1 -0
  86. package/dist/module/pipelines/pipeline.js +4 -0
  87. package/dist/module/pipelines/pipeline.js.map +1 -0
  88. package/dist/module/pipelines/pipeline_impl.js +42 -0
  89. package/dist/module/pipelines/pipeline_impl.js.map +1 -0
  90. package/dist/module/pipelines/pipeline_options.js +4 -0
  91. package/dist/module/pipelines/pipeline_options.js.map +1 -0
  92. package/dist/module/pipelines/pipeline_runtime.js +526 -0
  93. package/dist/module/pipelines/pipeline_runtime.js.map +1 -0
  94. package/dist/module/pipelines/pipeline_support.js +71 -0
  95. package/dist/module/pipelines/pipeline_support.js.map +1 -0
  96. package/dist/module/pipelines/pipeline_validate.js +183 -0
  97. package/dist/module/pipelines/pipeline_validate.js.map +1 -0
  98. package/dist/module/pipelines/stage_options.js +4 -0
  99. package/dist/module/pipelines/stage_options.js.map +1 -0
  100. package/dist/module/pipelines/types.js +2 -0
  101. package/dist/module/pipelines/types.js.map +1 -0
  102. package/dist/module/types/firestore.js +4 -0
  103. package/dist/module/types/firestore.js.map +1 -0
  104. package/dist/module/types/internal.js +4 -0
  105. package/dist/module/types/internal.js.map +1 -0
  106. package/dist/module/types/namespaced.js +338 -0
  107. package/dist/module/types/namespaced.js.map +1 -0
  108. package/{lib → dist/module}/utils/index.js +59 -114
  109. package/dist/module/utils/index.js.map +1 -0
  110. package/{lib → dist/module}/utils/serialize.js +58 -116
  111. package/dist/module/utils/serialize.js.map +1 -0
  112. package/{lib → dist/module}/utils/typemap.js +6 -20
  113. package/dist/module/utils/typemap.js.map +1 -0
  114. package/dist/module/version.js +5 -0
  115. package/dist/module/version.js.map +1 -0
  116. package/dist/module/web/RNFBFirestoreModule.android.js +5 -0
  117. package/dist/module/web/RNFBFirestoreModule.android.js.map +1 -0
  118. package/dist/module/web/RNFBFirestoreModule.ios.js +5 -0
  119. package/dist/module/web/RNFBFirestoreModule.ios.js.map +1 -0
  120. package/dist/module/web/RNFBFirestoreModule.js +387 -0
  121. package/dist/module/web/RNFBFirestoreModule.js.map +1 -0
  122. package/{lib → dist/module}/web/convert.js +60 -94
  123. package/dist/module/web/convert.js.map +1 -0
  124. package/dist/module/web/pipelines/pipeline.js +34 -0
  125. package/dist/module/web/pipelines/pipeline.js.map +1 -0
  126. package/dist/module/web/pipelines/pipeline_bridge_factory.js +217 -0
  127. package/dist/module/web/pipelines/pipeline_bridge_factory.js.map +1 -0
  128. package/dist/module/web/pipelines/pipeline_node_builder.js +294 -0
  129. package/dist/module/web/pipelines/pipeline_node_builder.js.map +1 -0
  130. package/dist/module/web/pipelines/pipeline_parser.js +21 -0
  131. package/dist/module/web/pipelines/pipeline_parser.js.map +1 -0
  132. package/dist/module/web/pipelines/pipeline_snapshot_serializer.js +89 -0
  133. package/dist/module/web/pipelines/pipeline_snapshot_serializer.js.map +1 -0
  134. package/dist/module/web/query.js +95 -0
  135. package/dist/module/web/query.js.map +1 -0
  136. package/dist/typescript/lib/FieldPath.d.ts +10 -0
  137. package/dist/typescript/lib/FieldPath.d.ts.map +1 -0
  138. package/dist/typescript/lib/FieldValue.d.ts +17 -0
  139. package/dist/typescript/lib/FieldValue.d.ts.map +1 -0
  140. package/dist/typescript/lib/FirestoreAggregate.d.ts +40 -0
  141. package/dist/typescript/lib/FirestoreAggregate.d.ts.map +1 -0
  142. package/dist/typescript/lib/FirestoreBlob.d.ts +11 -0
  143. package/dist/typescript/lib/FirestoreBlob.d.ts.map +1 -0
  144. package/dist/typescript/lib/FirestoreCollectionReference.d.ts +15 -0
  145. package/dist/typescript/lib/FirestoreCollectionReference.d.ts.map +1 -0
  146. package/dist/typescript/lib/FirestoreDocumentChange.d.ts +27 -0
  147. package/dist/typescript/lib/FirestoreDocumentChange.d.ts.map +1 -0
  148. package/dist/typescript/lib/FirestoreDocumentReference.d.ts +30 -0
  149. package/dist/typescript/lib/FirestoreDocumentReference.d.ts.map +1 -0
  150. package/dist/typescript/lib/FirestoreDocumentSnapshot.d.ts +30 -0
  151. package/dist/typescript/lib/FirestoreDocumentSnapshot.d.ts.map +1 -0
  152. package/dist/typescript/lib/FirestoreFilter.d.ts +52 -0
  153. package/dist/typescript/lib/FirestoreFilter.d.ts.map +1 -0
  154. package/dist/typescript/lib/FirestoreGeoPoint.d.ts +22 -0
  155. package/dist/typescript/lib/FirestoreGeoPoint.d.ts.map +1 -0
  156. package/dist/typescript/lib/FirestorePath.d.ts +12 -0
  157. package/dist/typescript/lib/FirestorePath.d.ts.map +1 -0
  158. package/dist/typescript/lib/FirestorePersistentCacheIndexManager.d.ts +16 -0
  159. package/dist/typescript/lib/FirestorePersistentCacheIndexManager.d.ts.map +1 -0
  160. package/dist/typescript/lib/FirestoreQuery.d.ts +39 -0
  161. package/dist/typescript/lib/FirestoreQuery.d.ts.map +1 -0
  162. package/dist/typescript/lib/FirestoreQueryModifiers.d.ts +59 -0
  163. package/dist/typescript/lib/FirestoreQueryModifiers.d.ts.map +1 -0
  164. package/dist/typescript/lib/FirestoreQuerySnapshot.d.ts +49 -0
  165. package/dist/typescript/lib/FirestoreQuerySnapshot.d.ts.map +1 -0
  166. package/dist/typescript/lib/FirestoreSnapshotMetadata.d.ts +8 -0
  167. package/dist/typescript/lib/FirestoreSnapshotMetadata.d.ts.map +1 -0
  168. package/dist/typescript/lib/FirestoreStatics.d.ts +23 -0
  169. package/dist/typescript/lib/FirestoreStatics.d.ts.map +1 -0
  170. package/dist/typescript/lib/FirestoreTimestamp.d.ts +33 -0
  171. package/dist/typescript/lib/FirestoreTimestamp.d.ts.map +1 -0
  172. package/dist/typescript/lib/FirestoreTransaction.d.ts +42 -0
  173. package/dist/typescript/lib/FirestoreTransaction.d.ts.map +1 -0
  174. package/dist/typescript/lib/FirestoreTransactionHandler.d.ts +26 -0
  175. package/dist/typescript/lib/FirestoreTransactionHandler.d.ts.map +1 -0
  176. package/dist/typescript/lib/FirestoreVectorValue.d.ts +17 -0
  177. package/dist/typescript/lib/FirestoreVectorValue.d.ts.map +1 -0
  178. package/dist/typescript/lib/FirestoreWriteBatch.d.ts +21 -0
  179. package/dist/typescript/lib/FirestoreWriteBatch.d.ts.map +1 -0
  180. package/dist/typescript/lib/LoadBundleTask.d.ts +16 -0
  181. package/dist/typescript/lib/LoadBundleTask.d.ts.map +1 -0
  182. package/dist/typescript/lib/index.d.ts +6 -0
  183. package/dist/typescript/lib/index.d.ts.map +1 -0
  184. package/dist/typescript/lib/modular/Bytes.d.ts +22 -0
  185. package/dist/typescript/lib/modular/Bytes.d.ts.map +1 -0
  186. package/dist/typescript/lib/modular/FieldPath.d.ts +4 -0
  187. package/dist/typescript/lib/modular/FieldPath.d.ts.map +1 -0
  188. package/dist/typescript/lib/modular/FieldValue.d.ts +8 -0
  189. package/dist/typescript/lib/modular/FieldValue.d.ts.map +1 -0
  190. package/dist/typescript/lib/modular/GeoPoint.d.ts +3 -0
  191. package/dist/typescript/lib/modular/GeoPoint.d.ts.map +1 -0
  192. package/dist/typescript/lib/modular/Timestamp.d.ts +3 -0
  193. package/dist/typescript/lib/modular/Timestamp.d.ts.map +1 -0
  194. package/dist/typescript/lib/modular/VectorValue.d.ts +4 -0
  195. package/dist/typescript/lib/modular/VectorValue.d.ts.map +1 -0
  196. package/dist/typescript/lib/modular/query.d.ts +93 -0
  197. package/dist/typescript/lib/modular/query.d.ts.map +1 -0
  198. package/dist/typescript/lib/modular/snapshot.d.ts +30 -0
  199. package/dist/typescript/lib/modular/snapshot.d.ts.map +1 -0
  200. package/dist/typescript/lib/modular.d.ts +69 -0
  201. package/dist/typescript/lib/modular.d.ts.map +1 -0
  202. package/dist/typescript/lib/namespaced.d.ts +13 -0
  203. package/dist/typescript/lib/namespaced.d.ts.map +1 -0
  204. package/dist/typescript/lib/pipelines/expressions.d.ts +723 -0
  205. package/dist/typescript/lib/pipelines/expressions.d.ts.map +1 -0
  206. package/dist/typescript/lib/pipelines/index.d.ts +31 -0
  207. package/dist/typescript/lib/pipelines/index.d.ts.map +1 -0
  208. package/dist/typescript/lib/pipelines/pipeline-result.d.ts +30 -0
  209. package/dist/typescript/lib/pipelines/pipeline-result.d.ts.map +1 -0
  210. package/dist/typescript/lib/pipelines/pipeline-source.d.ts +64 -0
  211. package/dist/typescript/lib/pipelines/pipeline-source.d.ts.map +1 -0
  212. package/dist/typescript/lib/pipelines/pipeline.d.ts +61 -0
  213. package/dist/typescript/lib/pipelines/pipeline.d.ts.map +1 -0
  214. package/dist/typescript/lib/pipelines/pipeline_impl.d.ts +21 -0
  215. package/dist/typescript/lib/pipelines/pipeline_impl.d.ts.map +1 -0
  216. package/dist/typescript/lib/pipelines/pipeline_options.d.ts +17 -0
  217. package/dist/typescript/lib/pipelines/pipeline_options.d.ts.map +1 -0
  218. package/dist/typescript/lib/pipelines/pipeline_runtime.d.ts +10 -0
  219. package/dist/typescript/lib/pipelines/pipeline_runtime.d.ts.map +1 -0
  220. package/dist/typescript/lib/pipelines/pipeline_support.d.ts +7 -0
  221. package/dist/typescript/lib/pipelines/pipeline_support.d.ts.map +1 -0
  222. package/dist/typescript/lib/pipelines/pipeline_validate.d.ts +9 -0
  223. package/dist/typescript/lib/pipelines/pipeline_validate.d.ts.map +1 -0
  224. package/dist/typescript/lib/pipelines/stage_options.d.ts +326 -0
  225. package/dist/typescript/lib/pipelines/stage_options.d.ts.map +1 -0
  226. package/dist/typescript/lib/pipelines/types.d.ts +10 -0
  227. package/dist/typescript/lib/pipelines/types.d.ts.map +1 -0
  228. package/dist/typescript/lib/types/firestore.d.ts +263 -0
  229. package/dist/typescript/lib/types/firestore.d.ts.map +1 -0
  230. package/dist/typescript/lib/types/internal.d.ts +483 -0
  231. package/dist/typescript/lib/types/internal.d.ts.map +1 -0
  232. package/dist/typescript/lib/types/namespaced.d.ts +2285 -0
  233. package/dist/typescript/lib/types/namespaced.d.ts.map +1 -0
  234. package/dist/typescript/lib/utils/index.d.ts +15 -0
  235. package/dist/typescript/lib/utils/index.d.ts.map +1 -0
  236. package/dist/typescript/lib/utils/serialize.d.ts +17 -0
  237. package/dist/typescript/lib/utils/serialize.d.ts.map +1 -0
  238. package/dist/typescript/lib/utils/typemap.d.ts +3 -0
  239. package/dist/typescript/lib/utils/typemap.d.ts.map +1 -0
  240. package/dist/typescript/lib/version.d.ts +2 -0
  241. package/dist/typescript/lib/version.d.ts.map +1 -0
  242. package/dist/typescript/lib/web/RNFBFirestoreModule.android.d.ts +3 -0
  243. package/dist/typescript/lib/web/RNFBFirestoreModule.android.d.ts.map +1 -0
  244. package/dist/typescript/lib/web/RNFBFirestoreModule.d.ts +75 -0
  245. package/dist/typescript/lib/web/RNFBFirestoreModule.d.ts.map +1 -0
  246. package/dist/typescript/lib/web/RNFBFirestoreModule.ios.d.ts +3 -0
  247. package/dist/typescript/lib/web/RNFBFirestoreModule.ios.d.ts.map +1 -0
  248. package/dist/typescript/lib/web/convert.d.ts +14 -0
  249. package/dist/typescript/lib/web/convert.d.ts.map +1 -0
  250. package/dist/typescript/lib/web/pipelines/pipeline.d.ts +4 -0
  251. package/dist/typescript/lib/web/pipelines/pipeline.d.ts.map +1 -0
  252. package/dist/typescript/lib/web/pipelines/pipeline_bridge_factory.d.ts +5 -0
  253. package/dist/typescript/lib/web/pipelines/pipeline_bridge_factory.d.ts.map +1 -0
  254. package/dist/typescript/lib/web/pipelines/pipeline_node_builder.d.ts +5 -0
  255. package/dist/typescript/lib/web/pipelines/pipeline_node_builder.d.ts.map +1 -0
  256. package/dist/typescript/lib/web/pipelines/pipeline_parser.d.ts +3 -0
  257. package/dist/typescript/lib/web/pipelines/pipeline_parser.d.ts.map +1 -0
  258. package/dist/typescript/lib/web/pipelines/pipeline_snapshot_serializer.d.ts +4 -0
  259. package/dist/typescript/lib/web/pipelines/pipeline_snapshot_serializer.d.ts.map +1 -0
  260. package/dist/typescript/lib/web/query.d.ts +23 -0
  261. package/dist/typescript/lib/web/query.d.ts.map +1 -0
  262. package/dist/typescript/package.json +1 -0
  263. package/ios/RNFBFirestore/RNFBFirestoreCollectionModule.m +52 -2
  264. package/ios/RNFBFirestore/RNFBFirestorePipelineBridgeFactory.swift +384 -0
  265. package/ios/RNFBFirestore/RNFBFirestorePipelineCallHandler.swift +86 -0
  266. package/ios/RNFBFirestore/RNFBFirestorePipelineNodeBuilder.swift +1500 -0
  267. package/ios/RNFBFirestore/RNFBFirestorePipelineParser.swift +1352 -0
  268. package/ios/RNFBFirestore/RNFBFirestorePipelineSnapshotSerializer.swift +98 -0
  269. package/lib/{FirestoreFieldPath.js → FieldPath.ts} +10 -12
  270. package/lib/{FirestoreFieldValue.js → FieldValue.ts} +22 -19
  271. package/lib/FirestoreAggregate.ts +124 -0
  272. package/lib/FirestoreBlob.ts +73 -0
  273. package/lib/FirestoreCollectionReference.ts +99 -0
  274. package/lib/FirestoreDocumentChange.ts +71 -0
  275. package/lib/FirestoreDocumentReference.ts +310 -0
  276. package/lib/FirestoreDocumentSnapshot.ts +149 -0
  277. package/lib/FirestoreFilter.ts +232 -0
  278. package/lib/{FirestoreGeoPoint.js → FirestoreGeoPoint.ts} +48 -8
  279. package/lib/FirestorePath.ts +54 -0
  280. package/lib/FirestorePersistentCacheIndexManager.ts +46 -0
  281. package/lib/{FirestoreQuery.js → FirestoreQuery.ts} +208 -100
  282. package/lib/FirestoreQueryModifiers.ts +411 -0
  283. package/lib/{FirestoreQuerySnapshot.js → FirestoreQuerySnapshot.ts} +61 -32
  284. package/lib/{FirestoreSnapshotMetadata.js → FirestoreSnapshotMetadata.ts} +8 -6
  285. package/lib/{FirestoreStatics.js → FirestoreStatics.ts} +18 -11
  286. package/lib/FirestoreTimestamp.ts +161 -0
  287. package/lib/{FirestoreTransaction.js → FirestoreTransaction.ts} +64 -27
  288. package/lib/{FirestoreTransactionHandler.js → FirestoreTransactionHandler.ts} +54 -75
  289. package/lib/{FirestoreVectorValue.js → FirestoreVectorValue.ts} +36 -15
  290. package/lib/{FirestoreWriteBatch.js → FirestoreWriteBatch.ts} +45 -21
  291. package/lib/LoadBundleTask.ts +85 -0
  292. package/lib/index.ts +71 -0
  293. package/lib/modular/Bytes.ts +81 -0
  294. package/lib/modular/FieldPath.ts +24 -0
  295. package/lib/modular/FieldValue.ts +40 -0
  296. package/lib/modular/GeoPoint.ts +20 -0
  297. package/lib/modular/Timestamp.ts +20 -0
  298. package/lib/modular/VectorValue.ts +24 -0
  299. package/lib/modular/query.ts +368 -0
  300. package/lib/modular/snapshot.ts +137 -0
  301. package/lib/modular.ts +552 -0
  302. package/lib/{index.js → namespaced.ts} +170 -80
  303. package/lib/pipelines/expressions.ts +2321 -0
  304. package/lib/pipelines/index.ts +203 -0
  305. package/lib/pipelines/pipeline-result.ts +78 -0
  306. package/lib/pipelines/pipeline-source.ts +83 -0
  307. package/lib/pipelines/pipeline.ts +99 -0
  308. package/lib/pipelines/pipeline_impl.ts +46 -0
  309. package/lib/pipelines/pipeline_options.ts +32 -0
  310. package/lib/pipelines/pipeline_runtime.ts +863 -0
  311. package/lib/pipelines/pipeline_support.ts +134 -0
  312. package/lib/pipelines/pipeline_validate.ts +242 -0
  313. package/lib/pipelines/stage_options.ts +376 -0
  314. package/lib/pipelines/types.ts +26 -0
  315. package/lib/types/firestore.ts +477 -0
  316. package/lib/types/internal.ts +747 -0
  317. package/lib/{index.d.ts → types/namespaced.ts} +280 -79
  318. package/lib/utils/index.ts +244 -0
  319. package/lib/utils/serialize.ts +314 -0
  320. package/lib/utils/typemap.ts +65 -0
  321. package/lib/version.ts +2 -0
  322. package/lib/web/{RNFBFirestoreModule.js → RNFBFirestoreModule.ts} +222 -234
  323. package/lib/web/convert.ts +287 -0
  324. package/lib/web/pipelines/pipeline.ts +47 -0
  325. package/lib/web/pipelines/pipeline_bridge_factory.ts +377 -0
  326. package/lib/web/pipelines/pipeline_node_builder.ts +413 -0
  327. package/lib/web/pipelines/pipeline_parser.ts +23 -0
  328. package/lib/web/pipelines/pipeline_snapshot_serializer.ts +133 -0
  329. package/lib/web/query.ts +150 -0
  330. package/package.json +46 -7
  331. package/tsconfig.json +35 -0
  332. package/lib/FirestoreBlob.js +0 -107
  333. package/lib/FirestoreCollectionReference.js +0 -70
  334. package/lib/FirestoreDocumentReference.js +0 -222
  335. package/lib/FirestoreDocumentSnapshot.js +0 -132
  336. package/lib/FirestoreFilter.js +0 -156
  337. package/lib/modular/Bytes.d.ts +0 -11
  338. package/lib/modular/Bytes.js +0 -62
  339. package/lib/modular/FieldPath.d.ts +0 -20
  340. package/lib/modular/FieldPath.js +0 -7
  341. package/lib/modular/FieldValue.d.ts +0 -67
  342. package/lib/modular/FieldValue.js +0 -41
  343. package/lib/modular/GeoPoint.d.ts +0 -17
  344. package/lib/modular/GeoPoint.js +0 -3
  345. package/lib/modular/Timestamp.d.ts +0 -85
  346. package/lib/modular/Timestamp.js +0 -3
  347. package/lib/modular/VectorValue.d.ts +0 -30
  348. package/lib/modular/VectorValue.js +0 -11
  349. package/lib/modular/index.d.ts +0 -788
  350. package/lib/modular/index.js +0 -410
  351. package/lib/modular/query.d.ts +0 -370
  352. package/lib/modular/query.js +0 -233
  353. package/lib/modular/snapshot.d.ts +0 -256
  354. package/lib/modular/snapshot.js +0 -33
  355. package/lib/modular/utils/observer.js +0 -16
  356. package/lib/version.js +0 -2
  357. package/lib/web/query.js +0 -112
  358. /package/lib/web/{RNFBFirestoreModule.android.js → RNFBFirestoreModule.android.ts} +0 -0
  359. /package/lib/web/{RNFBFirestoreModule.ios.js → RNFBFirestoreModule.ios.ts} +0 -0
@@ -0,0 +1,723 @@
1
+ import type { DocumentReference } from '../types/firestore';
2
+ import type VectorValue from '../FirestoreVectorValue';
3
+ import type { Bytes } from '../modular/Bytes';
4
+ /**
5
+ * @beta
6
+ * Expression type kind (for internal/backend use).
7
+ */
8
+ export type ExpressionType = 'Field' | 'Constant' | 'Function' | 'AggregateFunction' | 'ListOfExpressions' | 'AliasedExpression';
9
+ /**
10
+ * @beta
11
+ * Firestore value type for isType() checks.
12
+ */
13
+ export type Type = 'null' | 'array' | 'boolean' | 'bytes' | 'timestamp' | 'geo_point' | 'number' | 'int32' | 'int64' | 'float64' | 'decimal128' | 'map' | 'reference' | 'string' | 'vector' | 'max_key' | 'min_key' | 'object_id' | 'regex' | 'request_timestamp';
14
+ /**
15
+ * @beta
16
+ * Time granularity for timestampTruncate.
17
+ */
18
+ export type TimeGranularity = 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | 'week' | 'week(monday)' | 'week(tuesday)' | 'week(wednesday)' | 'week(thursday)' | 'week(friday)' | 'week(saturday)' | 'week(sunday)' | 'isoWeek' | 'month' | 'quarter' | 'year' | 'isoYear';
19
+ /**
20
+ * @beta
21
+ * Boolean expression for pipeline `where()` (e.g. field('x').gt(0), and(...), or(...)).
22
+ */
23
+ interface FluentExpressionMethods {
24
+ as(name: string): AliasedExpression;
25
+ ascending(): Ordering;
26
+ descending(): Ordering;
27
+ add(value: Expression): FunctionExpression;
28
+ add(value: unknown): FunctionExpression;
29
+ average(): AggregateFunction;
30
+ count(): AggregateFunction;
31
+ countDistinct(): AggregateFunction;
32
+ equal(expression: Expression): BooleanExpression;
33
+ equal(value: unknown): BooleanExpression;
34
+ first(): AggregateFunction;
35
+ greaterThan(expression: Expression): BooleanExpression;
36
+ greaterThan(value: unknown): BooleanExpression;
37
+ greaterThanOrEqual(expression: Expression): BooleanExpression;
38
+ greaterThanOrEqual(value: unknown): BooleanExpression;
39
+ last(): AggregateFunction;
40
+ maximum(): AggregateFunction;
41
+ minimum(): AggregateFunction;
42
+ sum(): AggregateFunction;
43
+ arrayAgg(): AggregateFunction;
44
+ arrayAggDistinct(): AggregateFunction;
45
+ }
46
+ export interface BooleanExpression extends Selectable, FluentExpressionMethods {
47
+ readonly _brand?: 'BooleanExpression';
48
+ }
49
+ /**
50
+ * @beta
51
+ * Selectable for pipeline field selection/expressions (e.g. field('a').as('b'), expressions).
52
+ */
53
+ export interface Selectable {
54
+ selectable: true;
55
+ }
56
+ /**
57
+ * @beta
58
+ * Field reference for pipeline stages.
59
+ */
60
+ export interface Field extends Selectable, FluentExpressionMethods {
61
+ readonly _brand?: 'Field';
62
+ }
63
+ /**
64
+ * @beta
65
+ * Function expression (e.g. map(...), array(...)). Used as return type and in Expression union.
66
+ */
67
+ export interface FunctionExpression extends Selectable, FluentExpressionMethods {
68
+ selectable: true;
69
+ readonly _brand?: 'FunctionExpression';
70
+ }
71
+ /**
72
+ * @beta
73
+ * Constant/literal expression returned by `constant(...)`.
74
+ */
75
+ export interface ConstantExpression extends FluentExpressionMethods {
76
+ readonly _brand?: 'ConstantExpression';
77
+ }
78
+ /**
79
+ * @beta
80
+ * Expression type for pipeline parameters (field refs, literals, function results).
81
+ */
82
+ export type Expression = Field | FunctionExpression | ConstantExpression | Selectable | string;
83
+ /**
84
+ * @beta
85
+ * Ordering for pipeline sort() (e.g. Ordering.of(field('rating')).descending()).
86
+ */
87
+ export interface Ordering {
88
+ descending(): Ordering;
89
+ ascending(): Ordering;
90
+ readonly _brand?: 'Ordering';
91
+ }
92
+ /**
93
+ * @beta
94
+ * Accumulator for pipeline aggregate() (e.g. avg(field('rating')).as('avgRating'), countAll().as('total')).
95
+ */
96
+ export interface Accumulator {
97
+ as(name: string): AliasedAggregate;
98
+ readonly _brand?: 'Accumulator';
99
+ }
100
+ /**
101
+ * @beta
102
+ * Aggregate function (e.g. countAll()). Alias for Accumulator.
103
+ */
104
+ export type AggregateFunction = Accumulator;
105
+ /**
106
+ * @beta
107
+ * An aggregate function with an output alias.
108
+ */
109
+ export interface AliasedAggregate {
110
+ readonly aggregate: AggregateFunction;
111
+ readonly alias: string;
112
+ }
113
+ /**
114
+ * @beta
115
+ * An expression with an output alias (implements Selectable).
116
+ */
117
+ export interface AliasedExpression extends Selectable {
118
+ readonly expr: Expression;
119
+ readonly alias: string;
120
+ exprType?: ExpressionType;
121
+ }
122
+ /**
123
+ * @beta
124
+ * Returns a Field reference for use in pipeline expressions.
125
+ */
126
+ export declare function field(_path: string): Field;
127
+ /**
128
+ * @beta
129
+ * Logical AND of boolean expressions.
130
+ */
131
+ export declare function and(first: BooleanExpression, second: BooleanExpression, ...more: BooleanExpression[]): BooleanExpression;
132
+ /**
133
+ * @beta
134
+ * Logical OR of boolean expressions.
135
+ */
136
+ export declare function or(first: BooleanExpression, second: BooleanExpression, ...more: BooleanExpression[]): BooleanExpression;
137
+ /**
138
+ * @beta
139
+ * Greater-than comparison.
140
+ */
141
+ export declare function gt(_left: Expression, _right: Expression): BooleanExpression;
142
+ /**
143
+ * @beta
144
+ * Greater-than comparison (alias for gt).
145
+ */
146
+ export declare function greaterThan(_left: Expression, _right: Expression): BooleanExpression;
147
+ /**
148
+ * @beta
149
+ * Equality comparison.
150
+ */
151
+ export declare function eq(_left: Expression, _right: Expression): BooleanExpression;
152
+ /**
153
+ * @beta
154
+ * Equality comparison (alias for eq).
155
+ */
156
+ export declare function equal(_left: Expression, _right: Expression): BooleanExpression;
157
+ /**
158
+ * @beta
159
+ * Inequality comparison.
160
+ */
161
+ export declare function notEqual(_left: Expression, _right: Expression): BooleanExpression;
162
+ /**
163
+ * @beta
164
+ * Greater-than-or-equal comparison.
165
+ */
166
+ export declare function gte(_left: Expression, _right: Expression): BooleanExpression;
167
+ /**
168
+ * @beta
169
+ * Less-than comparison.
170
+ */
171
+ export declare function lt(_left: Expression, _right: Expression): BooleanExpression;
172
+ /**
173
+ * @beta
174
+ * Less-than comparison (alias for lt).
175
+ */
176
+ export declare function lessThan(_left: Expression, _right: Expression): BooleanExpression;
177
+ /**
178
+ * @beta
179
+ * Less-than-or-equal comparison.
180
+ */
181
+ export declare function lte(_left: Expression, _right: Expression): BooleanExpression;
182
+ /**
183
+ * @beta
184
+ * Less-than-or-equal comparison (alias for lte).
185
+ */
186
+ export declare function lessThanOrEqual(_left: Expression, _right: Expression): BooleanExpression;
187
+ /**
188
+ * @beta
189
+ * Greater-than-or-equal comparison (alias for gte).
190
+ */
191
+ export declare function greaterThanOrEqual(_left: Expression, _right: Expression): BooleanExpression;
192
+ /**
193
+ * @beta
194
+ * Checks if a field exists (or expression evaluates to a value).
195
+ */
196
+ export declare function exists(_valueOrFieldName: Expression): BooleanExpression;
197
+ /**
198
+ * @beta
199
+ * Checks if an array contains an element.
200
+ */
201
+ export declare function arrayContains(_arrayOrFieldName: Expression, _element: Expression): BooleanExpression;
202
+ /**
203
+ * @beta
204
+ * Checks if an array contains any of the given values.
205
+ */
206
+ export declare function arrayContainsAny(_arrayOrFieldName: Expression, _values: Array<Expression | unknown>): BooleanExpression;
207
+ /**
208
+ * @beta
209
+ * Checks if an array contains all of the given values.
210
+ */
211
+ export declare function arrayContainsAll(_arrayOrFieldName: Expression, _values: Array<Expression | unknown>): BooleanExpression;
212
+ /**
213
+ * @beta
214
+ * Checks if a string starts with a prefix.
215
+ */
216
+ export declare function startsWith(_stringOrFieldName: string, _prefix: string): BooleanExpression;
217
+ export declare function startsWith(_stringOrFieldName: Expression, _prefix: string | Expression): BooleanExpression;
218
+ /**
219
+ * @beta
220
+ * Checks if a string ends with a suffix.
221
+ */
222
+ export declare function endsWith(_stringOrFieldName: string, _suffix: string): BooleanExpression;
223
+ export declare function endsWith(_stringOrFieldName: Expression, _suffix: string | Expression): BooleanExpression;
224
+ /**
225
+ * @beta
226
+ * Ordering helper (e.g. Ordering.of(field('rating')).descending()).
227
+ */
228
+ export declare const OrderingHelper: {
229
+ of(_fieldOrOrdering: Field | Ordering): Ordering;
230
+ };
231
+ /**
232
+ * @beta
233
+ * Ascending ordering (standalone). Use in sort().
234
+ */
235
+ export declare function ascending(_expr: Expression): Ordering;
236
+ /**
237
+ * @beta
238
+ * Descending ordering (standalone). Use in sort().
239
+ */
240
+ export declare function descending(_expr: Expression): Ordering;
241
+ /**
242
+ * @beta
243
+ * Average aggregation (e.g. avg(field('rating')).as('avgRating')).
244
+ */
245
+ export declare function avg(_f: Field | Selectable): Accumulator;
246
+ /**
247
+ * @beta
248
+ * Count-all aggregation (e.g. countAll().as('total')).
249
+ */
250
+ export declare function countAll(): AggregateFunction;
251
+ /**
252
+ * @beta
253
+ * Map expression for replaceWith etc.
254
+ */
255
+ export declare function map(_entries: Record<string, unknown>): FunctionExpression;
256
+ /**
257
+ * @beta
258
+ * Array expression.
259
+ */
260
+ export declare function array(_elements: unknown[]): FunctionExpression;
261
+ /**
262
+ * @beta
263
+ * Creates a constant expression for a number value.
264
+ */
265
+ export declare function constant(_value: number): Expression;
266
+ /**
267
+ * @beta
268
+ * Creates a constant expression for a string value.
269
+ */
270
+ export declare function constant(_value: string): Expression;
271
+ /**
272
+ * @beta
273
+ * Creates a constant boolean expression.
274
+ */
275
+ export declare function constant(_value: boolean): BooleanExpression;
276
+ /**
277
+ * @beta
278
+ * Creates a constant expression for null.
279
+ */
280
+ export declare function constant(_value: null): Expression;
281
+ /**
282
+ * @beta
283
+ * Creates a constant expression for a value (e.g. GeoPoint, Timestamp, Date, Bytes, DocumentReference, VectorValue).
284
+ */
285
+ export declare function constant(_value: unknown): Expression;
286
+ /**
287
+ * @beta
288
+ * Creates an expression that adds two or more expressions together.
289
+ *
290
+ * @param first - The first expression to add.
291
+ * @param second - The second expression or literal to add.
292
+ * @returns A new Expression representing the addition operation.
293
+ */
294
+ export declare function add(_first: Expression, _second: Expression | unknown): FunctionExpression;
295
+ /**
296
+ * @beta
297
+ * Creates an expression that adds a field's value to an expression.
298
+ *
299
+ * @param fieldName - The name of the field containing the value to add.
300
+ * @param second - The second expression or literal to add.
301
+ * @returns A new Expression representing the addition operation.
302
+ */
303
+ export declare function add(_fieldName: string, _second: Expression | unknown): FunctionExpression;
304
+ /**
305
+ * @beta
306
+ * Creates an expression that subtracts the second from the first.
307
+ */
308
+ export declare function subtract(_left: Expression, _right: Expression): FunctionExpression;
309
+ /**
310
+ * @beta
311
+ * Creates an expression that subtracts a constant value from an expression.
312
+ */
313
+ export declare function subtract(_expression: Expression, _value: unknown): FunctionExpression;
314
+ /**
315
+ * @beta
316
+ * Creates an expression that subtracts an expression from a field's value.
317
+ */
318
+ export declare function subtract(_fieldName: string, _expression: Expression): FunctionExpression;
319
+ /**
320
+ * @beta
321
+ * Creates an expression that subtracts a constant value from a field's value.
322
+ */
323
+ export declare function subtract(_fieldName: string, _value: unknown): FunctionExpression;
324
+ /**
325
+ * @beta
326
+ * Creates an expression that divides the first by the second.
327
+ */
328
+ export declare function divide(_left: Expression, _right: Expression): FunctionExpression;
329
+ /**
330
+ * @beta
331
+ * Creates an expression that divides an expression by a constant value.
332
+ */
333
+ export declare function divide(_expression: Expression, _value: unknown): FunctionExpression;
334
+ /**
335
+ * @beta
336
+ * Creates an expression that divides a field's value by an expression.
337
+ */
338
+ export declare function divide(_fieldName: string, _expression: Expression): FunctionExpression;
339
+ /**
340
+ * @beta
341
+ * Creates an expression that divides a field's value by a constant.
342
+ */
343
+ export declare function divide(_fieldName: string, _value: unknown): FunctionExpression;
344
+ /**
345
+ * @beta
346
+ * Creates an expression that multiplies two or more expressions.
347
+ */
348
+ export declare function multiply(_first: Expression, _second: Expression | unknown): FunctionExpression;
349
+ /**
350
+ * @beta
351
+ * Creates an expression that multiplies a field's value by an expression or literal.
352
+ */
353
+ export declare function multiply(_fieldName: string, _second: Expression | unknown): FunctionExpression;
354
+ /**
355
+ * @beta
356
+ * Creates an expression that evaluates to the document ID (and optionally path).
357
+ *
358
+ * @param documentPath - Document path string or DocumentReference.
359
+ * @returns A new Expression representing the document ID.
360
+ */
361
+ export declare function documentId(_documentPath: string | DocumentReference): FunctionExpression;
362
+ /**
363
+ * @beta
364
+ * Creates an expression that evaluates to the document ID from a path expression.
365
+ */
366
+ export declare function documentId(_documentPathExpr: Expression): FunctionExpression;
367
+ /**
368
+ * @beta
369
+ * Creates an aggregation that sums values from an expression across stage inputs.
370
+ */
371
+ export declare function sum(_expression: Expression): AggregateFunction;
372
+ /**
373
+ * @beta
374
+ * Creates an aggregation that sums a field's values across stage inputs.
375
+ */
376
+ export declare function sum(_fieldName: string): AggregateFunction;
377
+ /**
378
+ * @beta
379
+ * Creates an aggregation that counts stage inputs with valid evaluations of the expression.
380
+ */
381
+ export declare function count(_expression: Expression): AggregateFunction;
382
+ /**
383
+ * @beta
384
+ * Creates an aggregation that counts stage inputs where the field exists.
385
+ */
386
+ export declare function count(_fieldName: string): AggregateFunction;
387
+ /**
388
+ * @beta
389
+ * Creates an aggregation that calculates the average (mean) of values from an expression.
390
+ * SDK name: average (avg is RN alias).
391
+ */
392
+ export declare function average(_expression: Expression): AggregateFunction;
393
+ /**
394
+ * @beta
395
+ * Creates an aggregation that calculates the average (mean) of a field's values.
396
+ */
397
+ export declare function average(_fieldName: string): AggregateFunction;
398
+ /**
399
+ * @beta
400
+ * Absolute value of a numeric expression.
401
+ */
402
+ export declare function abs(_expr: Expression): FunctionExpression;
403
+ /**
404
+ * @beta
405
+ * Absolute value of a field.
406
+ */
407
+ export declare function abs(_fieldName: string): FunctionExpression;
408
+ /**
409
+ * @beta
410
+ * Rounds up to the nearest integer.
411
+ */
412
+ export declare function ceil(_fieldName: string): FunctionExpression;
413
+ export declare function ceil(_expression: Expression): FunctionExpression;
414
+ /**
415
+ * @beta
416
+ * Rounds down to the nearest integer.
417
+ */
418
+ export declare function floor(_expr: Expression): FunctionExpression;
419
+ export declare function floor(_fieldName: string): FunctionExpression;
420
+ /**
421
+ * @beta
422
+ * Remainder (modulo) of left divided by right.
423
+ */
424
+ export declare function mod(_left: Expression, _right: Expression): FunctionExpression;
425
+ export declare function mod(_expression: Expression, _value: unknown): FunctionExpression;
426
+ export declare function mod(_fieldName: string, _expression: Expression): FunctionExpression;
427
+ export declare function mod(_fieldName: string, _value: unknown): FunctionExpression;
428
+ /**
429
+ * @beta
430
+ * Rounds to the nearest integer (or to decimalPlaces when provided).
431
+ */
432
+ export declare function round(_fieldName: string): FunctionExpression;
433
+ export declare function round(_expression: Expression): FunctionExpression;
434
+ /**
435
+ * @beta
436
+ * Rounds to the given number of decimal places.
437
+ */
438
+ export declare function round(_expression: Expression, _decimalPlaces: number | Expression): FunctionExpression;
439
+ export declare function round(_fieldName: string, _decimalPlaces: number | Expression): FunctionExpression;
440
+ /**
441
+ * @beta
442
+ * Conditional expression: if condition then thenExpr else elseExpr.
443
+ */
444
+ export declare function conditional(_condition: BooleanExpression, _thenExpr: Expression, _elseExpr: Expression): FunctionExpression;
445
+ /**
446
+ * @beta
447
+ * Count distinct values of an expression or field.
448
+ */
449
+ export declare function countDistinct(_expr: Expression | string): AggregateFunction;
450
+ /**
451
+ * @beta
452
+ * First value of the expression in each group (aggregate).
453
+ */
454
+ export declare function first(_expression: Expression): AggregateFunction;
455
+ export declare function first(_fieldName: string): AggregateFunction;
456
+ /**
457
+ * @beta
458
+ * Last value of the expression in each group (aggregate).
459
+ */
460
+ export declare function last(_expression: Expression): AggregateFunction;
461
+ export declare function last(_fieldName: string): AggregateFunction;
462
+ /**
463
+ * @beta
464
+ * Collects all values of an expression across stage inputs into an array (aggregate).
465
+ */
466
+ export declare function arrayAgg(_expression: Expression): AggregateFunction;
467
+ export declare function arrayAgg(_fieldName: string): AggregateFunction;
468
+ /**
469
+ * @beta
470
+ * Concatenates two or more expressions (e.g. strings or arrays).
471
+ */
472
+ export declare function concat(_first: Expression, _second: Expression | unknown, ..._others: Array<Expression | unknown>): FunctionExpression;
473
+ export declare function concat(_fieldName: string, _second: Expression | unknown, ..._others: Array<Expression | unknown>): FunctionExpression;
474
+ /**
475
+ * @beta
476
+ * Square root of a numeric expression.
477
+ */
478
+ export declare function sqrt(_expression: Expression): FunctionExpression;
479
+ export declare function sqrt(_fieldName: string): FunctionExpression;
480
+ /**
481
+ * @beta
482
+ * Server timestamp at execution time.
483
+ */
484
+ export declare function currentTimestamp(): FunctionExpression;
485
+ /**
486
+ * @beta
487
+ * Logical NOT of a boolean expression.
488
+ */
489
+ export declare function not(_booleanExpr: BooleanExpression): BooleanExpression;
490
+ /**
491
+ * @beta
492
+ * If ifExpr is present use it, else use elseExpr/elseValue.
493
+ */
494
+ export declare function ifAbsent(_ifExpr: Expression, _elseExpr: Expression): Expression;
495
+ export declare function ifAbsent(_ifExpr: Expression, _elseValue: unknown): Expression;
496
+ export declare function ifAbsent(_ifFieldName: string, _elseExpr: Expression): Expression;
497
+ export declare function ifAbsent(_ifFieldName: string | Expression, _elseValue: Expression | unknown): Expression;
498
+ /**
499
+ * @beta
500
+ * If tryExpr errors, return catchExpr/catchValue (error handling expression).
501
+ */
502
+ export declare function ifError(_tryExpr: BooleanExpression, _catchExpr: BooleanExpression): BooleanExpression;
503
+ export declare function ifError(_tryExpr: Expression, _catchExpr: Expression): FunctionExpression;
504
+ export declare function ifError(_tryExpr: Expression, _catchValue: unknown): FunctionExpression;
505
+ /**
506
+ * @beta
507
+ * Converts string to lower case.
508
+ */
509
+ export declare function toLower(_fieldName: string): FunctionExpression;
510
+ export declare function toLower(_stringExpression: Expression): FunctionExpression;
511
+ /**
512
+ * @beta
513
+ * Converts string to upper case.
514
+ */
515
+ export declare function toUpper(_fieldName: string): FunctionExpression;
516
+ export declare function toUpper(_stringExpression: Expression): FunctionExpression;
517
+ /**
518
+ * @beta
519
+ * Trims whitespace (or optional valueToTrim) from string.
520
+ */
521
+ export declare function trim(_fieldName: string, _valueToTrim?: string | Expression): FunctionExpression;
522
+ export declare function trim(_stringExpression: Expression, _valueToTrim?: string | Expression): FunctionExpression;
523
+ /**
524
+ * @beta
525
+ * Substring from position with optional length.
526
+ */
527
+ export declare function substring(_field: string, _position: number, _length?: number): FunctionExpression;
528
+ export declare function substring(_input: Expression, _position: number, _length?: number): FunctionExpression;
529
+ export declare function substring(_field: string, _position: Expression, _length?: Expression): FunctionExpression;
530
+ export declare function substring(_input: Expression, _position: Expression, _length?: Expression): FunctionExpression;
531
+ /**
532
+ * @beta
533
+ * Collects distinct values of an expression across stage inputs into an array (aggregate).
534
+ */
535
+ export declare function arrayAggDistinct(_expression: Expression): AggregateFunction;
536
+ export declare function arrayAggDistinct(_fieldName: string): AggregateFunction;
537
+ /**
538
+ * @beta
539
+ * Concatenates two or more arrays.
540
+ */
541
+ export declare function arrayConcat(_firstArray: Expression, _secondArray: Expression | unknown[], ..._otherArrays: Array<Expression | unknown[]>): FunctionExpression;
542
+ export declare function arrayConcat(_firstArrayField: string, _secondArray: Expression | unknown[], ..._otherArrays: Array<Expression | unknown[]>): FunctionExpression;
543
+ /**
544
+ * @beta
545
+ * Gets element at offset in an array field or expression.
546
+ */
547
+ export declare function arrayGet(_arrayField: string, _offset: number): FunctionExpression;
548
+ export declare function arrayGet(_arrayField: string, _offsetExpr: Expression): FunctionExpression;
549
+ export declare function arrayGet(_arrayExpression: Expression, _offset: number): FunctionExpression;
550
+ export declare function arrayGet(_arrayExpression: Expression, _offsetExpr: Expression): FunctionExpression;
551
+ /**
552
+ * @beta
553
+ * Length of an array (field or expression).
554
+ */
555
+ export declare function arrayLength(_fieldName: string): FunctionExpression;
556
+ export declare function arrayLength(_array: Expression): FunctionExpression;
557
+ /**
558
+ * @beta
559
+ * Sum of numeric values in an array (aggregate-like for arrays).
560
+ */
561
+ export declare function arraySum(_fieldName: string): FunctionExpression;
562
+ export declare function arraySum(_expression: Expression): FunctionExpression;
563
+ export declare function byteLength(_expr: Expression): FunctionExpression;
564
+ export declare function byteLength(_fieldName: string): FunctionExpression;
565
+ export declare function charLength(_fieldName: string): FunctionExpression;
566
+ export declare function charLength(_stringExpression: Expression): FunctionExpression;
567
+ export declare function collectionId(_fieldName: string): FunctionExpression;
568
+ export declare function collectionId(_expression: Expression): FunctionExpression;
569
+ export declare function countIf(_booleanExpr: BooleanExpression): AggregateFunction;
570
+ export declare function exp(_expression: Expression): FunctionExpression;
571
+ export declare function exp(_fieldName: string): FunctionExpression;
572
+ export declare function join(_arrayFieldName: string, _delimiter: string): Expression;
573
+ export declare function join(_arrayExpression: Expression, _delimiterExpression: Expression): Expression;
574
+ export declare function join(_arrayExpression: Expression, _delimiter: string): Expression;
575
+ export declare function join(_arrayFieldName: string, _delimiterExpression: Expression): Expression;
576
+ export declare function like(_fieldName: string, _pattern: string): BooleanExpression;
577
+ export declare function like(_fieldName: string, _pattern: Expression): BooleanExpression;
578
+ export declare function like(_stringExpression: Expression, _pattern: string): BooleanExpression;
579
+ export declare function like(_stringExpression: Expression, _pattern: Expression): BooleanExpression;
580
+ export declare function ln(_fieldName: string): FunctionExpression;
581
+ export declare function ln(_expression: Expression): FunctionExpression;
582
+ export declare function log(_expression: Expression, _base: number): FunctionExpression;
583
+ export declare function log(_expression: Expression, _base: Expression): FunctionExpression;
584
+ export declare function log(_fieldName: string, _base: number): FunctionExpression;
585
+ export declare function log(_fieldName: string, _base: Expression): FunctionExpression;
586
+ export declare function log10(_fieldName: string): FunctionExpression;
587
+ export declare function log10(_expression: Expression): FunctionExpression;
588
+ export declare function maximum(_expression: Expression): AggregateFunction;
589
+ export declare function maximum(_fieldName: string): AggregateFunction;
590
+ export declare function minimum(_expression: Expression): AggregateFunction;
591
+ export declare function minimum(_fieldName: string): AggregateFunction;
592
+ export declare function pow(_base: Expression, _exponent: Expression): FunctionExpression;
593
+ export declare function pow(_base: Expression, _exponent: number): FunctionExpression;
594
+ export declare function pow(_base: string, _exponent: Expression): FunctionExpression;
595
+ export declare function pow(_base: string, _exponent: number): FunctionExpression;
596
+ export declare function reverse(_stringExpression: Expression): FunctionExpression;
597
+ export declare function reverse(_field: string): FunctionExpression;
598
+ export declare function split(_fieldName: string, _delimiter: string): FunctionExpression;
599
+ export declare function split(_fieldName: string, _delimiter: Expression): FunctionExpression;
600
+ export declare function split(_expression: Expression, _delimiter: string): FunctionExpression;
601
+ export declare function split(_expression: Expression, _delimiter: Expression): FunctionExpression;
602
+ export declare function cosineDistance(_fieldName: string, _vector: number[] | VectorValue): FunctionExpression;
603
+ export declare function cosineDistance(_fieldName: string, _vectorExpression: Expression): FunctionExpression;
604
+ export declare function cosineDistance(_vectorExpression: Expression, _vector: number[] | VectorValue): FunctionExpression;
605
+ export declare function cosineDistance(_vectorExpression: Expression, _otherVectorExpression: Expression): FunctionExpression;
606
+ export declare function dotProduct(_fieldName: string, _vector: number[] | VectorValue): FunctionExpression;
607
+ export declare function dotProduct(_fieldName: string, _vectorExpression: Expression): FunctionExpression;
608
+ export declare function dotProduct(_vectorExpression: Expression, _vector: number[] | VectorValue): FunctionExpression;
609
+ export declare function dotProduct(_vectorExpression: Expression, _otherVectorExpression: Expression): FunctionExpression;
610
+ export declare function equalAny(_expression: Expression, _values: Array<Expression | unknown>): BooleanExpression;
611
+ export declare function equalAny(_expression: Expression, _arrayExpression: Expression): BooleanExpression;
612
+ export declare function equalAny(_fieldName: string, _values: Array<Expression | unknown>): BooleanExpression;
613
+ export declare function equalAny(_fieldName: string, _arrayExpression: Expression): BooleanExpression;
614
+ export declare function euclideanDistance(_fieldName: string, _vector: number[] | VectorValue): FunctionExpression;
615
+ export declare function euclideanDistance(_fieldName: string, _vectorExpression: Expression): FunctionExpression;
616
+ export declare function euclideanDistance(_vectorExpression: Expression, _vector: number[] | VectorValue): FunctionExpression;
617
+ export declare function euclideanDistance(_vectorExpression: Expression, _otherVectorExpression: Expression): FunctionExpression;
618
+ export declare function isAbsent(_value: Expression): BooleanExpression;
619
+ export declare function isAbsent(_field: string): BooleanExpression;
620
+ export declare function isError(_value: Expression): BooleanExpression;
621
+ export declare function isType(_fieldName: string, _type: Type): BooleanExpression;
622
+ export declare function isType(_expression: Expression, _type: Type): BooleanExpression;
623
+ export declare function logicalMaximum(_first: Expression, _second: Expression | unknown, ..._others: Array<Expression | unknown>): FunctionExpression;
624
+ export declare function logicalMaximum(_fieldName: string, _second: Expression | unknown, ..._others: Array<Expression | unknown>): FunctionExpression;
625
+ export declare function logicalMinimum(_first: Expression, _second: Expression | unknown, ..._others: Array<Expression | unknown>): FunctionExpression;
626
+ export declare function logicalMinimum(_fieldName: string, _second: Expression | unknown, ..._others: Array<Expression | unknown>): FunctionExpression;
627
+ export declare function ltrim(_fieldName: string, _valueToTrim?: string | Expression | Bytes): FunctionExpression;
628
+ export declare function ltrim(_expression: Expression, _valueToTrim?: string | Expression | Bytes): FunctionExpression;
629
+ export declare function notEqualAny(_element: Expression, _values: Array<Expression | unknown>): BooleanExpression;
630
+ export declare function notEqualAny(_fieldName: string, _values: Array<Expression | unknown>): BooleanExpression;
631
+ export declare function notEqualAny(_element: Expression, _arrayExpression: Expression): BooleanExpression;
632
+ export declare function notEqualAny(_fieldName: string, _arrayExpression: Expression): BooleanExpression;
633
+ export declare function rand(): FunctionExpression;
634
+ export declare function rtrim(_fieldName: string, _valueToTrim?: string | Expression | Bytes): FunctionExpression;
635
+ export declare function rtrim(_expression: Expression, _valueToTrim?: string | Expression | Bytes): FunctionExpression;
636
+ export declare function stringConcat(_fieldName: string, _secondString: Expression | string, ..._otherStrings: Array<Expression | string>): FunctionExpression;
637
+ export declare function stringConcat(_firstString: Expression, _secondString: Expression | string, ..._otherStrings: Array<Expression | string>): FunctionExpression;
638
+ export declare function mapEntries(_mapField: string): FunctionExpression;
639
+ export declare function mapEntries(_mapExpression: Expression): FunctionExpression;
640
+ export declare function mapGet(_fieldName: string, _subField: string): FunctionExpression;
641
+ export declare function mapGet(_mapExpression: Expression, _subField: string): FunctionExpression;
642
+ export declare function mapKeys(_mapField: string): FunctionExpression;
643
+ export declare function mapKeys(_mapExpression: Expression): FunctionExpression;
644
+ export declare function mapMerge(_mapField: string, _secondMap: Record<string, unknown> | Expression, ..._otherMaps: Array<Record<string, unknown> | Expression>): FunctionExpression;
645
+ export declare function mapMerge(_firstMap: Record<string, unknown> | Expression, _secondMap: Record<string, unknown> | Expression, ..._otherMaps: Array<Record<string, unknown> | Expression>): FunctionExpression;
646
+ export declare function mapRemove(_mapField: string, _key: string): FunctionExpression;
647
+ export declare function mapRemove(_mapExpr: Expression, _key: string): FunctionExpression;
648
+ export declare function mapRemove(_mapField: string, _keyExpr: Expression): FunctionExpression;
649
+ export declare function mapRemove(_mapExpr: Expression, _keyExpr: Expression): FunctionExpression;
650
+ export declare function mapSet(_mapField: string, _key: string | Expression, _value: unknown, ..._moreKeyValues: unknown[]): FunctionExpression;
651
+ export declare function mapSet(_mapExpression: Expression, _key: string | Expression, _value: unknown, ..._moreKeyValues: unknown[]): FunctionExpression;
652
+ export declare function mapValues(_mapField: string): FunctionExpression;
653
+ export declare function mapValues(_mapExpression: Expression): FunctionExpression;
654
+ export declare function regexContains(_fieldName: string, _pattern: string): BooleanExpression;
655
+ export declare function regexContains(_fieldName: string, _pattern: Expression): BooleanExpression;
656
+ export declare function regexContains(_stringExpression: Expression, _pattern: string): BooleanExpression;
657
+ export declare function regexContains(_stringExpression: Expression, _pattern: Expression): BooleanExpression;
658
+ export declare function regexFind(_fieldName: string, _pattern: string): FunctionExpression;
659
+ export declare function regexFind(_fieldName: string, _pattern: Expression): FunctionExpression;
660
+ export declare function regexFind(_stringExpression: Expression, _pattern: string): FunctionExpression;
661
+ export declare function regexFind(_stringExpression: Expression, _pattern: Expression): FunctionExpression;
662
+ export declare function regexFindAll(_fieldName: string, _pattern: string): FunctionExpression;
663
+ export declare function regexFindAll(_fieldName: string, _pattern: Expression): FunctionExpression;
664
+ export declare function regexFindAll(_stringExpression: Expression, _pattern: string): FunctionExpression;
665
+ export declare function regexFindAll(_stringExpression: Expression, _pattern: Expression): FunctionExpression;
666
+ export declare function regexMatch(_fieldName: string, _pattern: string): BooleanExpression;
667
+ export declare function regexMatch(_fieldName: string, _pattern: Expression): BooleanExpression;
668
+ export declare function regexMatch(_stringExpression: Expression, _pattern: string): BooleanExpression;
669
+ export declare function regexMatch(_stringExpression: Expression, _pattern: Expression): BooleanExpression;
670
+ export declare function stringContains(_fieldName: string, _substring: string): BooleanExpression;
671
+ export declare function stringContains(_fieldName: string, _substring: Expression): BooleanExpression;
672
+ export declare function stringContains(_stringExpression: Expression, _substring: string): BooleanExpression;
673
+ export declare function stringContains(_stringExpression: Expression, _substring: Expression): BooleanExpression;
674
+ export declare function stringIndexOf(_fieldName: string, _search: string | Expression | Bytes): FunctionExpression;
675
+ export declare function stringIndexOf(_expression: Expression, _search: string | Expression | Bytes): FunctionExpression;
676
+ export declare function stringRepeat(_fieldName: string, _repetitions: number | Expression): FunctionExpression;
677
+ export declare function stringRepeat(_expression: Expression, _repetitions: number | Expression): FunctionExpression;
678
+ export declare function stringReplaceAll(_fieldName: string, _find: string | Expression | Bytes, _replacement: string | Expression | Bytes): FunctionExpression;
679
+ export declare function stringReplaceAll(_expression: Expression, _find: string | Expression | Bytes, _replacement: string | Expression | Bytes): FunctionExpression;
680
+ type TimestampUnit = 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day';
681
+ export declare function stringReplaceOne(_fieldName: string, _find: string | Expression | Bytes, _replacement: string | Expression | Bytes): FunctionExpression;
682
+ export declare function stringReplaceOne(_expression: Expression, _find: string | Expression | Bytes, _replacement: string | Expression | Bytes): FunctionExpression;
683
+ export declare function stringReverse(_stringExpression: Expression): FunctionExpression;
684
+ export declare function stringReverse(_field: string): FunctionExpression;
685
+ export declare function timestampAdd(_timestamp: Expression, _unit: Expression, _amount: Expression): FunctionExpression;
686
+ export declare function timestampAdd(_timestamp: Expression, _unit: TimestampUnit, _amount: number): FunctionExpression;
687
+ export declare function timestampAdd(_fieldName: string, _unit: TimestampUnit, _amount: number): FunctionExpression;
688
+ export declare function timestampSubtract(_timestamp: Expression, _unit: Expression, _amount: Expression): FunctionExpression;
689
+ export declare function timestampSubtract(_timestamp: Expression, _unit: TimestampUnit, _amount: number): FunctionExpression;
690
+ export declare function timestampSubtract(_fieldName: string, _unit: TimestampUnit, _amount: number): FunctionExpression;
691
+ export declare function timestampToUnixMicros(_expr: Expression): FunctionExpression;
692
+ export declare function timestampToUnixMicros(_fieldName: string): FunctionExpression;
693
+ export declare function timestampToUnixMillis(_expr: Expression): FunctionExpression;
694
+ export declare function timestampToUnixMillis(_fieldName: string): FunctionExpression;
695
+ export declare function timestampToUnixSeconds(_expr: Expression): FunctionExpression;
696
+ export declare function timestampToUnixSeconds(_fieldName: string): FunctionExpression;
697
+ export declare function timestampTruncate(_fieldName: string, _granularity: TimeGranularity, _timezone?: string | Expression): FunctionExpression;
698
+ export declare function timestampTruncate(_fieldName: string, _granularity: Expression, _timezone?: string | Expression): FunctionExpression;
699
+ export declare function timestampTruncate(_timestampExpression: Expression, _granularity: TimeGranularity, _timezone?: string | Expression): FunctionExpression;
700
+ export declare function timestampTruncate(_timestampExpression: Expression, _granularity: Expression, _timezone?: string | Expression): FunctionExpression;
701
+ export declare function trunc(_fieldName: string): FunctionExpression;
702
+ export declare function trunc(_expression: Expression): FunctionExpression;
703
+ export declare function trunc(_fieldName: string, _decimalPlaces: number | Expression): FunctionExpression;
704
+ export declare function trunc(_expression: Expression, _decimalPlaces: number | Expression): FunctionExpression;
705
+ export declare function type(_fieldName: string): FunctionExpression;
706
+ export declare function type(_expression: Expression): FunctionExpression;
707
+ export declare function unixMicrosToTimestamp(_expr: Expression): FunctionExpression;
708
+ export declare function unixMicrosToTimestamp(_fieldName: string): FunctionExpression;
709
+ export declare function unixMillisToTimestamp(_expr: Expression): FunctionExpression;
710
+ export declare function unixMillisToTimestamp(_fieldName: string): FunctionExpression;
711
+ export declare function unixSecondsToTimestamp(_expr: Expression): FunctionExpression;
712
+ export declare function unixSecondsToTimestamp(_fieldName: string): FunctionExpression;
713
+ export declare function vectorLength(_vectorExpression: Expression): FunctionExpression;
714
+ export declare function vectorLength(_fieldName: string): FunctionExpression;
715
+ export declare function xor(_first: BooleanExpression, _second: BooleanExpression, ..._additionalConditions: BooleanExpression[]): BooleanExpression;
716
+ /**
717
+ * @beta
718
+ * Length of string, array, map, vector, or bytes (field or expression).
719
+ */
720
+ export declare function length(_fieldName: string): FunctionExpression;
721
+ export declare function length(_expression: Expression): FunctionExpression;
722
+ export {};
723
+ //# sourceMappingURL=expressions.d.ts.map