@ahoo-wang/wow-client 9.2.0-rc.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 (404) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +291 -0
  3. package/README.zh-CN.md +267 -0
  4. package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/decorate.cjs +1 -0
  5. package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/decorate.es.js +9 -0
  6. package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/decorateMetadata.cjs +1 -0
  7. package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/decorateMetadata.es.js +6 -0
  8. package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/decorateParam.cjs +1 -0
  9. package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/decorateParam.es.js +8 -0
  10. package/dist/client/bindMethods.cjs +2 -0
  11. package/dist/client/bindMethods.cjs.map +1 -0
  12. package/dist/client/bindMethods.d.cts +13 -0
  13. package/dist/client/bindMethods.d.ts +13 -0
  14. package/dist/client/bindMethods.es.js +19 -0
  15. package/dist/client/bindMethods.es.js.map +1 -0
  16. package/dist/client/command/commandClient.cjs +2 -0
  17. package/dist/client/command/commandClient.cjs.map +1 -0
  18. package/dist/client/command/commandClient.d.cts +67 -0
  19. package/dist/client/command/commandClient.d.ts +67 -0
  20. package/dist/client/command/commandClient.es.js +38 -0
  21. package/dist/client/command/commandClient.es.js.map +1 -0
  22. package/dist/client/command/commandHeaders.cjs +2 -0
  23. package/dist/client/command/commandHeaders.cjs.map +1 -0
  24. package/dist/client/command/commandHeaders.d.cts +75 -0
  25. package/dist/client/command/commandHeaders.d.ts +75 -0
  26. package/dist/client/command/commandHeaders.es.js +31 -0
  27. package/dist/client/command/commandHeaders.es.js.map +1 -0
  28. package/dist/client/command/commandRequest.cjs +2 -0
  29. package/dist/client/command/commandRequest.cjs.map +1 -0
  30. package/dist/client/command/commandRequest.d.cts +180 -0
  31. package/dist/client/command/commandRequest.d.ts +180 -0
  32. package/dist/client/command/commandRequest.es.js +31 -0
  33. package/dist/client/command/commandRequest.es.js.map +1 -0
  34. package/dist/client/command/commandResult.d.cts +15 -0
  35. package/dist/client/command/commandResult.d.ts +15 -0
  36. package/dist/client/command/index.d.cts +5 -0
  37. package/dist/client/command/index.d.ts +5 -0
  38. package/dist/client/command/types.d.cts +71 -0
  39. package/dist/client/command/types.d.ts +71 -0
  40. package/dist/client/metadata/index.d.cts +2 -0
  41. package/dist/client/metadata/index.d.ts +2 -0
  42. package/dist/client/metadata/wowMetadata.d.cts +48 -0
  43. package/dist/client/metadata/wowMetadata.d.ts +48 -0
  44. package/dist/client/metadata/wowMetadataClient.cjs +2 -0
  45. package/dist/client/metadata/wowMetadataClient.cjs.map +1 -0
  46. package/dist/client/metadata/wowMetadataClient.d.cts +23 -0
  47. package/dist/client/metadata/wowMetadataClient.d.ts +23 -0
  48. package/dist/client/metadata/wowMetadataClient.es.js +25 -0
  49. package/dist/client/metadata/wowMetadataClient.es.js.map +1 -0
  50. package/dist/client/query/descriptor/descriptorEndpoints.cjs +2 -0
  51. package/dist/client/query/descriptor/descriptorEndpoints.cjs.map +1 -0
  52. package/dist/client/query/descriptor/descriptorEndpoints.d.cts +29 -0
  53. package/dist/client/query/descriptor/descriptorEndpoints.d.ts +29 -0
  54. package/dist/client/query/descriptor/descriptorEndpoints.es.js +69 -0
  55. package/dist/client/query/descriptor/descriptorEndpoints.es.js.map +1 -0
  56. package/dist/client/query/descriptor/endpointPaths.cjs +2 -0
  57. package/dist/client/query/descriptor/endpointPaths.cjs.map +1 -0
  58. package/dist/client/query/descriptor/endpointPaths.d.cts +4 -0
  59. package/dist/client/query/descriptor/endpointPaths.d.ts +4 -0
  60. package/dist/client/query/descriptor/endpointPaths.es.js +9 -0
  61. package/dist/client/query/descriptor/endpointPaths.es.js.map +1 -0
  62. package/dist/client/query/descriptor/index.d.cts +2 -0
  63. package/dist/client/query/descriptor/index.d.ts +2 -0
  64. package/dist/client/query/descriptor/queryDescriptorApi.d.cts +58 -0
  65. package/dist/client/query/descriptor/queryDescriptorApi.d.ts +58 -0
  66. package/dist/client/query/descriptor/queryDescriptorClient.cjs +2 -0
  67. package/dist/client/query/descriptor/queryDescriptorClient.cjs.map +1 -0
  68. package/dist/client/query/descriptor/queryDescriptorClient.d.cts +61 -0
  69. package/dist/client/query/descriptor/queryDescriptorClient.d.ts +61 -0
  70. package/dist/client/query/descriptor/queryDescriptorClient.es.js +20 -0
  71. package/dist/client/query/descriptor/queryDescriptorClient.es.js.map +1 -0
  72. package/dist/client/query/event/domainEventStream.cjs +2 -0
  73. package/dist/client/query/event/domainEventStream.cjs.map +1 -0
  74. package/dist/client/query/event/domainEventStream.d.cts +105 -0
  75. package/dist/client/query/event/domainEventStream.d.ts +105 -0
  76. package/dist/client/query/event/domainEventStream.es.js +23 -0
  77. package/dist/client/query/event/domainEventStream.es.js.map +1 -0
  78. package/dist/client/query/event/endpointPaths.cjs +2 -0
  79. package/dist/client/query/event/endpointPaths.cjs.map +1 -0
  80. package/dist/client/query/event/endpointPaths.d.cts +8 -0
  81. package/dist/client/query/event/endpointPaths.d.ts +8 -0
  82. package/dist/client/query/event/endpointPaths.es.js +13 -0
  83. package/dist/client/query/event/endpointPaths.es.js.map +1 -0
  84. package/dist/client/query/event/eventStreamQueryApi.d.cts +29 -0
  85. package/dist/client/query/event/eventStreamQueryApi.d.ts +29 -0
  86. package/dist/client/query/event/eventStreamQueryClient.cjs +2 -0
  87. package/dist/client/query/event/eventStreamQueryClient.cjs.map +1 -0
  88. package/dist/client/query/event/eventStreamQueryClient.d.cts +190 -0
  89. package/dist/client/query/event/eventStreamQueryClient.d.ts +190 -0
  90. package/dist/client/query/event/eventStreamQueryClient.es.js +160 -0
  91. package/dist/client/query/event/eventStreamQueryClient.es.js.map +1 -0
  92. package/dist/client/query/event/index.d.cts +3 -0
  93. package/dist/client/query/event/index.d.ts +3 -0
  94. package/dist/client/query/factory.cjs +2 -0
  95. package/dist/client/query/factory.cjs.map +1 -0
  96. package/dist/client/query/factory.d.cts +165 -0
  97. package/dist/client/query/factory.d.ts +165 -0
  98. package/dist/client/query/factory.es.js +45 -0
  99. package/dist/client/query/factory.es.js.map +1 -0
  100. package/dist/client/query/index.d.cts +6 -0
  101. package/dist/client/query/index.d.ts +6 -0
  102. package/dist/client/query/queryApi.d.cts +68 -0
  103. package/dist/client/query/queryApi.d.ts +68 -0
  104. package/dist/client/query/requests.d.cts +24 -0
  105. package/dist/client/query/requests.d.ts +24 -0
  106. package/dist/client/query/snapshot/endpointPaths.cjs +2 -0
  107. package/dist/client/query/snapshot/endpointPaths.cjs.map +1 -0
  108. package/dist/client/query/snapshot/endpointPaths.d.cts +12 -0
  109. package/dist/client/query/snapshot/endpointPaths.d.ts +12 -0
  110. package/dist/client/query/snapshot/endpointPaths.es.js +17 -0
  111. package/dist/client/query/snapshot/endpointPaths.es.js.map +1 -0
  112. package/dist/client/query/snapshot/index.d.cts +3 -0
  113. package/dist/client/query/snapshot/index.d.ts +3 -0
  114. package/dist/client/query/snapshot/snapshot.cjs +2 -0
  115. package/dist/client/query/snapshot/snapshot.cjs.map +1 -0
  116. package/dist/client/query/snapshot/snapshot.d.cts +51 -0
  117. package/dist/client/query/snapshot/snapshot.d.ts +51 -0
  118. package/dist/client/query/snapshot/snapshot.es.js +20 -0
  119. package/dist/client/query/snapshot/snapshot.es.js.map +1 -0
  120. package/dist/client/query/snapshot/snapshotQueryApi.d.cts +101 -0
  121. package/dist/client/query/snapshot/snapshotQueryApi.d.ts +101 -0
  122. package/dist/client/query/snapshot/snapshotQueryClient.cjs +2 -0
  123. package/dist/client/query/snapshot/snapshotQueryClient.cjs.map +1 -0
  124. package/dist/client/query/snapshot/snapshotQueryClient.d.cts +369 -0
  125. package/dist/client/query/snapshot/snapshotQueryClient.d.ts +369 -0
  126. package/dist/client/query/snapshot/snapshotQueryClient.es.js +239 -0
  127. package/dist/client/query/snapshot/snapshotQueryClient.es.js.map +1 -0
  128. package/dist/client/query/state/endpointPaths.cjs +2 -0
  129. package/dist/client/query/state/endpointPaths.cjs.map +1 -0
  130. package/dist/client/query/state/endpointPaths.d.cts +10 -0
  131. package/dist/client/query/state/endpointPaths.d.ts +10 -0
  132. package/dist/client/query/state/endpointPaths.es.js +14 -0
  133. package/dist/client/query/state/endpointPaths.es.js.map +1 -0
  134. package/dist/client/query/state/index.d.cts +4 -0
  135. package/dist/client/query/state/index.d.ts +4 -0
  136. package/dist/client/query/state/loadOwnerStateAggregateApi.d.cts +36 -0
  137. package/dist/client/query/state/loadOwnerStateAggregateApi.d.ts +36 -0
  138. package/dist/client/query/state/loadOwnerStateAggregateClient.cjs +2 -0
  139. package/dist/client/query/state/loadOwnerStateAggregateClient.cjs.map +1 -0
  140. package/dist/client/query/state/loadOwnerStateAggregateClient.d.cts +58 -0
  141. package/dist/client/query/state/loadOwnerStateAggregateClient.d.ts +58 -0
  142. package/dist/client/query/state/loadOwnerStateAggregateClient.es.js +56 -0
  143. package/dist/client/query/state/loadOwnerStateAggregateClient.es.js.map +1 -0
  144. package/dist/client/query/state/loadStateAggregateApi.d.cts +37 -0
  145. package/dist/client/query/state/loadStateAggregateApi.d.ts +37 -0
  146. package/dist/client/query/state/loadStateAggregateClient.cjs +2 -0
  147. package/dist/client/query/state/loadStateAggregateClient.cjs.map +1 -0
  148. package/dist/client/query/state/loadStateAggregateClient.d.cts +62 -0
  149. package/dist/client/query/state/loadStateAggregateClient.d.ts +62 -0
  150. package/dist/client/query/state/loadStateAggregateClient.es.js +65 -0
  151. package/dist/client/query/state/loadStateAggregateClient.es.js.map +1 -0
  152. package/dist/client/routing.cjs +2 -0
  153. package/dist/client/routing.cjs.map +1 -0
  154. package/dist/client/routing.d.cts +47 -0
  155. package/dist/client/routing.d.ts +47 -0
  156. package/dist/client/routing.es.js +8 -0
  157. package/dist/client/routing.es.js.map +1 -0
  158. package/dist/dsl/aggregation/admit.cjs +2 -0
  159. package/dist/dsl/aggregation/admit.cjs.map +1 -0
  160. package/dist/dsl/aggregation/admit.d.cts +6 -0
  161. package/dist/dsl/aggregation/admit.d.ts +6 -0
  162. package/dist/dsl/aggregation/admit.es.js +142 -0
  163. package/dist/dsl/aggregation/admit.es.js.map +1 -0
  164. package/dist/dsl/aggregation/builders.cjs +2 -0
  165. package/dist/dsl/aggregation/builders.cjs.map +1 -0
  166. package/dist/dsl/aggregation/builders.d.cts +309 -0
  167. package/dist/dsl/aggregation/builders.d.ts +309 -0
  168. package/dist/dsl/aggregation/builders.es.js +188 -0
  169. package/dist/dsl/aggregation/builders.es.js.map +1 -0
  170. package/dist/dsl/aggregation/derived.cjs +2 -0
  171. package/dist/dsl/aggregation/derived.cjs.map +1 -0
  172. package/dist/dsl/aggregation/derived.d.cts +33 -0
  173. package/dist/dsl/aggregation/derived.d.ts +33 -0
  174. package/dist/dsl/aggregation/derived.es.js +31 -0
  175. package/dist/dsl/aggregation/derived.es.js.map +1 -0
  176. package/dist/dsl/aggregation/expressionTrees.cjs +2 -0
  177. package/dist/dsl/aggregation/expressionTrees.cjs.map +1 -0
  178. package/dist/dsl/aggregation/expressionTrees.d.cts +10 -0
  179. package/dist/dsl/aggregation/expressionTrees.d.ts +10 -0
  180. package/dist/dsl/aggregation/expressionTrees.es.js +44 -0
  181. package/dist/dsl/aggregation/expressionTrees.es.js.map +1 -0
  182. package/dist/dsl/aggregation/having.cjs +2 -0
  183. package/dist/dsl/aggregation/having.cjs.map +1 -0
  184. package/dist/dsl/aggregation/having.d.cts +94 -0
  185. package/dist/dsl/aggregation/having.d.ts +94 -0
  186. package/dist/dsl/aggregation/having.es.js +62 -0
  187. package/dist/dsl/aggregation/having.es.js.map +1 -0
  188. package/dist/dsl/aggregation/index.d.cts +4 -0
  189. package/dist/dsl/aggregation/index.d.ts +4 -0
  190. package/dist/dsl/aggregation/sort.cjs +2 -0
  191. package/dist/dsl/aggregation/sort.cjs.map +1 -0
  192. package/dist/dsl/aggregation/sort.d.cts +7 -0
  193. package/dist/dsl/aggregation/sort.d.ts +7 -0
  194. package/dist/dsl/aggregation/sort.es.js +10 -0
  195. package/dist/dsl/aggregation/sort.es.js.map +1 -0
  196. package/dist/dsl/aggregation/types.cjs +2 -0
  197. package/dist/dsl/aggregation/types.cjs.map +1 -0
  198. package/dist/dsl/aggregation/types.d.cts +608 -0
  199. package/dist/dsl/aggregation/types.d.ts +608 -0
  200. package/dist/dsl/aggregation/types.es.js +37 -0
  201. package/dist/dsl/aggregation/types.es.js.map +1 -0
  202. package/dist/dsl/cursorQuery.cjs +2 -0
  203. package/dist/dsl/cursorQuery.cjs.map +1 -0
  204. package/dist/dsl/cursorQuery.d.cts +69 -0
  205. package/dist/dsl/cursorQuery.d.ts +69 -0
  206. package/dist/dsl/cursorQuery.es.js +19 -0
  207. package/dist/dsl/cursorQuery.es.js.map +1 -0
  208. package/dist/dsl/deletionState.cjs +2 -0
  209. package/dist/dsl/deletionState.cjs.map +1 -0
  210. package/dist/dsl/deletionState.d.cts +19 -0
  211. package/dist/dsl/deletionState.d.ts +19 -0
  212. package/dist/dsl/deletionState.es.js +8 -0
  213. package/dist/dsl/deletionState.es.js.map +1 -0
  214. package/dist/dsl/descriptor.cjs +2 -0
  215. package/dist/dsl/descriptor.cjs.map +1 -0
  216. package/dist/dsl/descriptor.d.cts +629 -0
  217. package/dist/dsl/descriptor.d.ts +629 -0
  218. package/dist/dsl/descriptor.es.js +37 -0
  219. package/dist/dsl/descriptor.es.js.map +1 -0
  220. package/dist/dsl/documents.d.cts +8 -0
  221. package/dist/dsl/documents.d.ts +8 -0
  222. package/dist/dsl/field.cjs +2 -0
  223. package/dist/dsl/field.cjs.map +1 -0
  224. package/dist/dsl/field.d.cts +2 -0
  225. package/dist/dsl/field.d.ts +2 -0
  226. package/dist/dsl/field.es.js +10 -0
  227. package/dist/dsl/field.es.js.map +1 -0
  228. package/dist/dsl/filter/builders.cjs +2 -0
  229. package/dist/dsl/filter/builders.cjs.map +1 -0
  230. package/dist/dsl/filter/builders.d.cts +962 -0
  231. package/dist/dsl/filter/builders.d.ts +962 -0
  232. package/dist/dsl/filter/builders.es.js +289 -0
  233. package/dist/dsl/filter/builders.es.js.map +1 -0
  234. package/dist/dsl/filter/datePattern.cjs +2 -0
  235. package/dist/dsl/filter/datePattern.cjs.map +1 -0
  236. package/dist/dsl/filter/datePattern.d.cts +8 -0
  237. package/dist/dsl/filter/datePattern.d.ts +8 -0
  238. package/dist/dsl/filter/datePattern.es.js +100 -0
  239. package/dist/dsl/filter/datePattern.es.js.map +1 -0
  240. package/dist/dsl/filter/index.d.cts +3 -0
  241. package/dist/dsl/filter/index.d.ts +3 -0
  242. package/dist/dsl/filter/operator.cjs +2 -0
  243. package/dist/dsl/filter/operator.cjs.map +1 -0
  244. package/dist/dsl/filter/operator.d.cts +113 -0
  245. package/dist/dsl/filter/operator.d.ts +113 -0
  246. package/dist/dsl/filter/operator.es.js +14 -0
  247. package/dist/dsl/filter/operator.es.js.map +1 -0
  248. package/dist/dsl/filter/scope.cjs +2 -0
  249. package/dist/dsl/filter/scope.cjs.map +1 -0
  250. package/dist/dsl/filter/scope.d.cts +15 -0
  251. package/dist/dsl/filter/scope.d.ts +15 -0
  252. package/dist/dsl/filter/scope.es.js +32 -0
  253. package/dist/dsl/filter/scope.es.js.map +1 -0
  254. package/dist/dsl/filter/types.d.cts +274 -0
  255. package/dist/dsl/filter/types.d.ts +274 -0
  256. package/dist/dsl/filter/validate.cjs +2 -0
  257. package/dist/dsl/filter/validate.cjs.map +1 -0
  258. package/dist/dsl/filter/validate.d.cts +18 -0
  259. package/dist/dsl/filter/validate.d.ts +18 -0
  260. package/dist/dsl/filter/validate.es.js +56 -0
  261. package/dist/dsl/filter/validate.es.js.map +1 -0
  262. package/dist/dsl/pagination.cjs +2 -0
  263. package/dist/dsl/pagination.cjs.map +1 -0
  264. package/dist/dsl/pagination.d.cts +28 -0
  265. package/dist/dsl/pagination.d.ts +28 -0
  266. package/dist/dsl/pagination.es.js +15 -0
  267. package/dist/dsl/pagination.es.js.map +1 -0
  268. package/dist/dsl/projection.cjs +2 -0
  269. package/dist/dsl/projection.cjs.map +1 -0
  270. package/dist/dsl/projection.d.cts +27 -0
  271. package/dist/dsl/projection.d.ts +27 -0
  272. package/dist/dsl/projection.es.js +12 -0
  273. package/dist/dsl/projection.es.js.map +1 -0
  274. package/dist/dsl/queryable.cjs +2 -0
  275. package/dist/dsl/queryable.cjs.map +1 -0
  276. package/dist/dsl/queryable.d.cts +101 -0
  277. package/dist/dsl/queryable.d.ts +101 -0
  278. package/dist/dsl/queryable.es.js +40 -0
  279. package/dist/dsl/queryable.es.js.map +1 -0
  280. package/dist/dsl/sort.cjs +2 -0
  281. package/dist/dsl/sort.cjs.map +1 -0
  282. package/dist/dsl/sort.d.cts +33 -0
  283. package/dist/dsl/sort.d.ts +33 -0
  284. package/dist/dsl/sort.es.js +21 -0
  285. package/dist/dsl/sort.es.js.map +1 -0
  286. package/dist/dsl.cjs +1 -0
  287. package/dist/dsl.d.cts +23 -0
  288. package/dist/dsl.d.ts +23 -0
  289. package/dist/dsl.es.js +14 -0
  290. package/dist/error/errorInfo.cjs +2 -0
  291. package/dist/error/errorInfo.cjs.map +1 -0
  292. package/dist/error/errorInfo.d.cts +139 -0
  293. package/dist/error/errorInfo.d.ts +139 -0
  294. package/dist/error/errorInfo.es.js +32 -0
  295. package/dist/error/errorInfo.es.js.map +1 -0
  296. package/dist/error/headers.cjs +2 -0
  297. package/dist/error/headers.cjs.map +1 -0
  298. package/dist/error/headers.d.cts +38 -0
  299. package/dist/error/headers.d.ts +38 -0
  300. package/dist/error/headers.es.js +10 -0
  301. package/dist/error/headers.es.js.map +1 -0
  302. package/dist/error/index.d.cts +21 -0
  303. package/dist/error/index.d.ts +21 -0
  304. package/dist/error/queryErrorCodes.cjs +2 -0
  305. package/dist/error/queryErrorCodes.cjs.map +1 -0
  306. package/dist/error/queryErrorCodes.d.cts +199 -0
  307. package/dist/error/queryErrorCodes.d.ts +199 -0
  308. package/dist/error/queryErrorCodes.es.js +53 -0
  309. package/dist/error/queryErrorCodes.es.js.map +1 -0
  310. package/dist/error/wowError.cjs +2 -0
  311. package/dist/error/wowError.cjs.map +1 -0
  312. package/dist/error/wowError.d.cts +99 -0
  313. package/dist/error/wowError.d.ts +99 -0
  314. package/dist/error/wowError.es.js +53 -0
  315. package/dist/error/wowError.es.js.map +1 -0
  316. package/dist/index.cjs +1 -0
  317. package/dist/index.d.cts +17 -0
  318. package/dist/index.d.ts +17 -0
  319. package/dist/index.es.js +34 -0
  320. package/dist/legacy/condition.cjs +2 -0
  321. package/dist/legacy/condition.cjs.map +1 -0
  322. package/dist/legacy/condition.d.cts +517 -0
  323. package/dist/legacy/condition.d.ts +517 -0
  324. package/dist/legacy/condition.es.js +338 -0
  325. package/dist/legacy/condition.es.js.map +1 -0
  326. package/dist/legacy/index.d.cts +16 -0
  327. package/dist/legacy/index.d.ts +16 -0
  328. package/dist/legacy/locale/en_US.cjs +2 -0
  329. package/dist/legacy/locale/en_US.cjs.map +1 -0
  330. package/dist/legacy/locale/en_US.d.cts +7 -0
  331. package/dist/legacy/locale/en_US.d.ts +7 -0
  332. package/dist/legacy/locale/en_US.es.js +50 -0
  333. package/dist/legacy/locale/en_US.es.js.map +1 -0
  334. package/dist/legacy/locale/operatorLocale.d.cts +10 -0
  335. package/dist/legacy/locale/operatorLocale.d.ts +10 -0
  336. package/dist/legacy/locale/zh_CN.cjs +2 -0
  337. package/dist/legacy/locale/zh_CN.cjs.map +1 -0
  338. package/dist/legacy/locale/zh_CN.d.cts +7 -0
  339. package/dist/legacy/locale/zh_CN.d.ts +7 -0
  340. package/dist/legacy/locale/zh_CN.es.js +50 -0
  341. package/dist/legacy/locale/zh_CN.es.js.map +1 -0
  342. package/dist/legacy/operator.cjs +2 -0
  343. package/dist/legacy/operator.cjs.map +1 -0
  344. package/dist/legacy/operator.d.cts +218 -0
  345. package/dist/legacy/operator.d.ts +218 -0
  346. package/dist/legacy/operator.es.js +25 -0
  347. package/dist/legacy/operator.es.js.map +1 -0
  348. package/dist/legacy/queryable.cjs +2 -0
  349. package/dist/legacy/queryable.cjs.map +1 -0
  350. package/dist/legacy/queryable.d.cts +61 -0
  351. package/dist/legacy/queryable.d.ts +61 -0
  352. package/dist/legacy/queryable.es.js +34 -0
  353. package/dist/legacy/queryable.es.js.map +1 -0
  354. package/dist/legacy.cjs +1 -0
  355. package/dist/legacy.es.js +6 -0
  356. package/dist/model/abac.cjs +2 -0
  357. package/dist/model/abac.cjs.map +1 -0
  358. package/dist/model/abac.d.cts +33 -0
  359. package/dist/model/abac.d.ts +33 -0
  360. package/dist/model/abac.es.js +6 -0
  361. package/dist/model/abac.es.js.map +1 -0
  362. package/dist/model/bi.cjs +2 -0
  363. package/dist/model/bi.cjs.map +1 -0
  364. package/dist/model/bi.d.cts +12 -0
  365. package/dist/model/bi.d.ts +12 -0
  366. package/dist/model/bi.es.js +8 -0
  367. package/dist/model/bi.es.js.map +1 -0
  368. package/dist/model/command.cjs +2 -0
  369. package/dist/model/command.cjs.map +1 -0
  370. package/dist/model/command.d.cts +137 -0
  371. package/dist/model/command.d.ts +137 -0
  372. package/dist/model/command.es.js +8 -0
  373. package/dist/model/command.es.js.map +1 -0
  374. package/dist/model/common.d.cts +19 -0
  375. package/dist/model/common.d.ts +19 -0
  376. package/dist/model/function.cjs +2 -0
  377. package/dist/model/function.cjs.map +1 -0
  378. package/dist/model/function.d.cts +41 -0
  379. package/dist/model/function.d.ts +41 -0
  380. package/dist/model/function.es.js +8 -0
  381. package/dist/model/function.es.js.map +1 -0
  382. package/dist/model/index.d.cts +22 -0
  383. package/dist/model/index.d.ts +22 -0
  384. package/dist/model/messaging.d.cts +5 -0
  385. package/dist/model/messaging.d.ts +5 -0
  386. package/dist/model/modeling.d.cts +145 -0
  387. package/dist/model/modeling.d.ts +145 -0
  388. package/dist/model/naming.d.cts +27 -0
  389. package/dist/model/naming.d.ts +27 -0
  390. package/dist/transport/endpoints.cjs +2 -0
  391. package/dist/transport/endpoints.cjs.map +1 -0
  392. package/dist/transport/endpoints.d.cts +79 -0
  393. package/dist/transport/endpoints.d.ts +79 -0
  394. package/dist/transport/endpoints.es.js +14 -0
  395. package/dist/transport/endpoints.es.js.map +1 -0
  396. package/dist/transport/eventStreams.cjs +2 -0
  397. package/dist/transport/eventStreams.cjs.map +1 -0
  398. package/dist/transport/eventStreams.d.cts +23 -0
  399. package/dist/transport/eventStreams.d.ts +23 -0
  400. package/dist/transport/eventStreams.es.js +22 -0
  401. package/dist/transport/eventStreams.es.js.map +1 -0
  402. package/dist/transport/index.d.cts +1 -0
  403. package/dist/transport/index.d.ts +1 -0
  404. package/package.json +110 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshotQueryClient.cjs","names":["autoGeneratedError","singleQuery","filter","listQuery","_decorate","post","SnapshotQueryEndpointPaths","_decorateParam","body","attribute","_decorateMetadata","QUERY_STREAM_ENDPOINT","api","require_builders","require_queryable","require_endpoints","require_bindMethods","require_decorateMetadata","require_decorateParam","require_decorate","require_endpointPaths","_ahoo_wang_fetcher_decorator","SnapshotQueryClient","apiMetadata","query","attributes","abort","filter","listQuery","pagedQuery","singleQuery","id","ids"],"sources":["../../../../src/client/query/snapshot/snapshotQueryClient.ts"],"sourcesContent":["/*\n * Copyright [2021-present] [ahoo wang <ahoowang@qq.com> (https://github.com/Ahoo-Wang)].\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { SnapshotQueryApi } from './snapshotQueryApi.js';\nimport { SnapshotQueryEndpointPaths } from './endpointPaths.js';\nimport type { AggregationQuery } from '../../../dsl/aggregation/index.js';\nimport { filter, type FilterExpression } from '../../../dsl/filter/index.js';\nimport type {\n Condition,\n ListQueryRequest,\n PagedQueryRequest,\n SingleQueryRequest,\n} from '../requests.js';\nimport {\n listQuery,\n type PagedList,\n singleQuery,\n} from '../../../dsl/queryable.js';\nimport type { MaterializedSnapshot } from './snapshot.js';\nimport type { DynamicDocument } from '../../../dsl/documents.js';\nimport type { CursorPage, CursorQuery } from '../../../dsl/cursorQuery.js';\nimport { QUERY_STREAM_ENDPOINT } from '../../../transport/endpoints.js';\nimport type {\n ApiMetadata,\n ApiMetadataCapable,\n} from '@ahoo-wang/fetcher-decorator';\nimport {\n api,\n attribute,\n autoGeneratedError,\n body,\n post,\n} from '@ahoo-wang/fetcher-decorator';\nimport { bindMethods } from '../../bindMethods.js';\n\n/**\n * A client for querying snapshot data through HTTP endpoints.\n * Provides methods for various query operations such as counting, listing, paging, and retrieving single snapshots.\n *\n * @example\n * ```typescript\n * // Define the state interface\n * interface CartItem {\n * productId: string;\n * quantity: number;\n * }\n *\n * interface CartState {\n * items: CartItem[];\n * }\n *\n * // Create client options configuration\n * const clientOptions: ApiMetadata = {\n * fetcher: new Fetcher({ baseURL: 'http://localhost:8080/' }),\n * basePath: 'owner/{ownerId}/cart'\n * };\n *\n * // Create a snapshot query client instance\n * const snapshotQueryClient = new SnapshotQueryClient<CartState>(clientOptions);\n *\n * // Count snapshots\n * const count = await snapshotQueryClient.count(filter.matchAll());\n *\n * // List snapshots\n * const listQuery: FilterListQuery = {\n * filter: filter.matchAll()\n * };\n * const list = await snapshotQueryClient.list(listQuery);\n *\n * // List snapshots as stream\n * const listStream = await snapshotQueryClient.listStream(listQuery);\n * for await (const snapshot of listStream) {\n * console.log('Received:', snapshot);\n * }\n *\n * // List snapshot states\n * const stateList = await snapshotQueryClient.listState(listQuery);\n *\n * // List snapshot states as stream\n * const stateListStream = await snapshotQueryClient.listStateStream(listQuery);\n * for await (const state of stateListStream) {\n * console.log('Received state:', state);\n * }\n *\n * // Paged snapshots\n * const pagedQuery: FilterPagedQuery = {\n * filter: filter.matchAll(),\n * pagination: { index: 1, size: 10 }\n * };\n * const paged = await snapshotQueryClient.paged(pagedQuery);\n *\n * // Paged snapshot states\n * const pagedState = await snapshotQueryClient.pagedState(pagedQuery);\n *\n * // Single snapshot\n * const singleQuery: FilterSingleQuery = {\n * filter: filter.matchAll()\n * };\n * const single = await snapshotQueryClient.single(singleQuery);\n *\n * // Single snapshot state\n * const singleState = await snapshotQueryClient.singleState(singleQuery);\n * ```\n *\n * @template S The type of the snapshot state\n */\n@api()\nexport class SnapshotQueryClient<S, FIELDS extends string = string>\n implements SnapshotQueryApi<S, FIELDS>, ApiMetadataCapable\n{\n /**\n * Creates a new SnapshotQueryClient instance.\n */\n constructor(public readonly apiMetadata?: ApiMetadata) {\n bindMethods(this);\n }\n\n /** Runs a snapshot aggregation and returns all result rows. */\n @post(SnapshotQueryEndpointPaths.AGGREGATION)\n /* v8 ignore start */\n aggregate<\n Row extends object = DynamicDocument,\n AGGREGATION_FIELDS extends string = string,\n >(\n @body() query: AggregationQuery<FIELDS, AGGREGATION_FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<Row[]> {\n throw autoGeneratedError(query, attributes, abort);\n }\n /* v8 ignore stop */\n\n /** Runs a snapshot aggregation and streams the result rows, one per server-sent event. */\n @post(SnapshotQueryEndpointPaths.AGGREGATION, QUERY_STREAM_ENDPOINT)\n /* v8 ignore start */\n aggregateStream<\n Row extends object = DynamicDocument,\n AGGREGATION_FIELDS extends string = string,\n >(\n @body() query: AggregationQuery<FIELDS, AGGREGATION_FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<ReadableStream<Row>> {\n throw autoGeneratedError(query, attributes, abort);\n }\n /* v8 ignore stop */\n\n /** Retrieves the next cursor page of materialized snapshots. */\n @post(SnapshotQueryEndpointPaths.CURSOR)\n /* v8 ignore start */\n cursor<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(\n @body() query: CursorQuery<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<CursorPage<T>> {\n throw autoGeneratedError(query, attributes, abort);\n }\n /* v8 ignore stop */\n\n /** Retrieves the next cursor page of snapshot states. */\n @post(SnapshotQueryEndpointPaths.CURSOR_STATE)\n /* v8 ignore start */\n cursorState<T extends Partial<S> = S>(\n @body() query: CursorQuery<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<CursorPage<T>> {\n throw autoGeneratedError(query, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Counts the number of snapshots that match the given filter.\n *\n * @param filter - The filter expression or legacy condition\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to the count of matching snapshots\n *\n * @example\n * ```typescript\n * const count = await snapshotQueryClient.count(filter.matchAll());\n * console.log('Total snapshots:', count);\n * ```\n */\n @post(SnapshotQueryEndpointPaths.COUNT)\n /* v8 ignore start */\n count(\n // compat(wow<9): accepts the deprecated Condition, which Wow < 8.11 needs; narrow to FilterExpression in v10.\n @body() filter: FilterExpression<FIELDS> | Condition<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<number> {\n throw autoGeneratedError(filter, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a list of materialized snapshots based on the provided query parameters.\n *\n * @param listQuery - The query parameters for listing snapshots\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to an array of partial materialized snapshots\n *\n * @example\n * ```typescript\n * const listQuery: FilterListQuery = {\n * filter: filter.matchAll()\n * };\n * const list = await snapshotQueryClient.list(listQuery);\n * for (const snapshot of list) {\n * console.log('Snapshot:', snapshot);\n * }\n * ```\n */\n @post(SnapshotQueryEndpointPaths.LIST)\n /* v8 ignore start */\n list<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(\n @body() listQuery: ListQueryRequest<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<T[]> {\n throw autoGeneratedError(listQuery, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a stream of materialized snapshots based on the provided query parameters.\n *\n * @param listQuery - The query parameters for listing snapshots\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to a readable stream of partial materialized snapshots\n *\n * @example\n * ```typescript\n * const listQuery: FilterListQuery = {\n * filter: filter.matchAll()\n * };\n * const listStream = await snapshotQueryClient.listStream(listQuery);\n * for await (const snapshot of listStream) {\n * console.log('Received snapshot:', snapshot);\n * }\n * ```\n */\n @post(SnapshotQueryEndpointPaths.LIST, QUERY_STREAM_ENDPOINT)\n /* v8 ignore start */\n listStream<\n T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>,\n >(\n @body() listQuery: ListQueryRequest<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<ReadableStream<T>> {\n throw autoGeneratedError(listQuery, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a list of snapshot states based on the provided query parameters.\n *\n * @param listQuery - The query parameters for listing snapshot states\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to an array of partial snapshot states\n *\n * @example\n * ```typescript\n * const listQuery: FilterListQuery = {\n * filter: filter.matchAll()\n * };\n * const list = await snapshotQueryClient.listState(listQuery);\n * for (const state of list) {\n * console.log('State:', state);\n * }\n * ```\n */\n @post(SnapshotQueryEndpointPaths.LIST_STATE)\n /* v8 ignore start */\n listState<T extends Partial<S> = S>(\n @body() listQuery: ListQueryRequest<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<T[]> {\n throw autoGeneratedError(listQuery, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a stream of snapshot states based on the provided query parameters.\n *\n * @param listQuery - The query parameters for listing snapshot states\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to a readable stream of partial snapshot states\n *\n * @example\n * ```typescript\n * const listQuery: FilterListQuery = {\n * filter: filter.matchAll()\n * };\n * const listStream = await snapshotQueryClient.listStateStream(listQuery);\n * for await (const state of listStream) {\n * console.log('Received state:', state);\n * }\n * ```\n */\n @post(SnapshotQueryEndpointPaths.LIST_STATE, QUERY_STREAM_ENDPOINT)\n /* v8 ignore start */\n listStateStream<T extends Partial<S> = S>(\n @body() listQuery: ListQueryRequest<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<ReadableStream<T>> {\n throw autoGeneratedError(listQuery, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a paged list of materialized snapshots based on the provided query parameters.\n *\n * @param pagedQuery - The query parameters for paging snapshots\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to a paged list of partial materialized snapshots\n *\n * @example\n * ```typescript\n * const pagedQuery: FilterPagedQuery = {\n * filter: filter.matchAll(),\n * pagination: { index: 1, size: 10 }\n * };\n * const paged = await snapshotQueryClient.paged(pagedQuery);\n * console.log('Total:', paged.total);\n * for (const snapshot of paged.list) {\n * console.log('Snapshot:', snapshot);\n * }\n * ```\n */\n @post(SnapshotQueryEndpointPaths.PAGED)\n /* v8 ignore start */\n paged<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(\n @body() pagedQuery: PagedQueryRequest<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<PagedList<T>> {\n throw autoGeneratedError(pagedQuery, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a paged list of snapshot states based on the provided query parameters.\n *\n * @param pagedQuery - The query parameters for paging snapshot states\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to a paged list of partial snapshot states\n *\n * @example\n * ```typescript\n * const pagedQuery: FilterPagedQuery = {\n * filter: filter.matchAll(),\n * pagination: { index: 1, size: 10 }\n * };\n * const pagedState = await snapshotQueryClient.pagedState(pagedQuery);\n * for (const state of pagedState.list) {\n * console.log('State:', state);\n * }\n * ```\n */\n @post(SnapshotQueryEndpointPaths.PAGED_STATE)\n /* v8 ignore start */\n pagedState<T extends Partial<S> = S>(\n @body() pagedQuery: PagedQueryRequest<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<PagedList<T>> {\n throw autoGeneratedError(pagedQuery, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a single materialized snapshot based on the provided query parameters.\n *\n * @param singleQuery - The query parameters for retrieving a single snapshot\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to a partial materialized snapshot\n *\n * @example\n * ```typescript\n * const singleQuery: FilterSingleQuery = {\n * filter: filter.matchAll()\n * };\n * const single = await snapshotQueryClient.single(singleQuery);\n * console.log('Snapshot:', single);\n * ```\n */\n @post(SnapshotQueryEndpointPaths.SINGLE)\n /* v8 ignore start */\n single<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(\n @body() singleQuery: SingleQueryRequest<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<T> {\n throw autoGeneratedError(singleQuery, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a single snapshot state based on the provided query parameters.\n *\n * @param singleQuery - The query parameters for retrieving a single snapshot state\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to a partial snapshot state\n *\n * @example\n * ```typescript\n * const singleQuery: FilterSingleQuery = {\n * filter: filter.matchAll()\n * };\n * const singleState = await snapshotQueryClient.singleState(singleQuery);\n * console.log('State:', singleState);\n * ```\n */\n @post(SnapshotQueryEndpointPaths.SINGLE_STATE)\n /* v8 ignore start */\n singleState<T extends Partial<S> = S>(\n @body() singleQuery: SingleQueryRequest<FIELDS>,\n @attribute() attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<T> {\n throw autoGeneratedError(singleQuery, attributes, abort);\n }\n /* v8 ignore stop */\n\n /**\n * Retrieves a single materialized snapshot by its ID.\n *\n * @param id - The unique identifier of the snapshot to retrieve\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to the materialized snapshot with the specified ID\n *\n * @example\n * ```typescript\n * const snapshot = await snapshotQueryClient.getById('snapshot-123');\n * console.log('Snapshot:', snapshot);\n * ```\n */\n getById(\n id: string,\n attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<MaterializedSnapshot<S>> {\n const query = singleQuery<FIELDS>({ filter: filter.aggregateId(id) });\n return this.single(query, attributes, abort);\n }\n\n /**\n * Retrieves a single snapshot state by its ID.\n *\n * @param id - The unique identifier of the snapshot whose state to retrieve\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to the snapshot state with the specified ID\n *\n * @example\n * ```typescript\n * const state = await snapshotQueryClient.getStateById('snapshot-123');\n * console.log('State:', state);\n * ```\n */\n getStateById(\n id: string,\n attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<S> {\n const query = singleQuery<FIELDS>({ filter: filter.aggregateId(id) });\n return this.singleState(query, attributes, abort);\n }\n\n /**\n * Retrieves multiple materialized snapshots by their IDs.\n *\n * One request, filtered by `filter.aggregateIds(ids)` with `limit` set to\n * the number of ids; an empty `ids` sends nothing and resolves to `[]`. The\n * server refuses more ids than its filter value limit and its maximum list\n * size (1000 each by default), so split a larger set into batches.\n *\n * @param ids - An array of unique identifiers of the snapshots to retrieve\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to an array of materialized snapshots with the specified IDs\n *\n * @example\n * ```typescript\n * const snapshots = await snapshotQueryClient.getByIds(['snapshot-123', 'snapshot-456']);\n * for (const snapshot of snapshots) {\n * console.log('Snapshot:', snapshot);\n * }\n * ```\n */\n getByIds(\n ids: string[],\n attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<MaterializedSnapshot<S>[]> {\n if (ids.length === 0) return Promise.resolve([]);\n const query = listQuery<FIELDS>({\n filter: filter.aggregateIds(ids),\n limit: ids.length,\n });\n return this.list(query, attributes, abort);\n }\n\n /**\n * Retrieves multiple snapshot states by their IDs.\n *\n * One request, filtered by `filter.aggregateIds(ids)` with `limit` set to\n * the number of ids; an empty `ids` sends nothing and resolves to `[]`. The\n * server refuses more ids than its filter value limit and its maximum list\n * size (1000 each by default), so split a larger set into batches.\n *\n * @param ids - An array of unique identifiers of the snapshots whose states to retrieve\n * @param attributes - Optional shared attributes that can be accessed by interceptors\n * throughout the request lifecycle. These attributes allow passing\n * custom data between different interceptors.\n * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.\n * @returns A promise that resolves to an array of snapshot states with the specified IDs\n *\n * @example\n * ```typescript\n * const states = await snapshotQueryClient.getStateByIds(['snapshot-123', 'snapshot-456']);\n * for (const state of states) {\n * console.log('State:', state);\n * }\n * ```\n */\n getStateByIds(\n ids: string[],\n attributes?: Record<string, unknown>,\n abort?: AbortController | AbortSignal,\n ): Promise<S[]> {\n if (ids.length === 0) return Promise.resolve([]);\n const query = listQuery<FIELDS>({\n filter: filter.aggregateIds(ids),\n limit: ids.length,\n });\n return this.listState(query, attributes, abort);\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,369 @@
1
+ import { SnapshotQueryApi } from './snapshotQueryApi.cjs';
2
+ import { AggregationQuery } from '../../../dsl/aggregation/index.cjs';
3
+ import { FilterExpression } from '../../../dsl/filter/index.cjs';
4
+ import { Condition, ListQueryRequest, PagedQueryRequest, SingleQueryRequest } from '../requests.cjs';
5
+ import { PagedList } from '../../../dsl/queryable.cjs';
6
+ import { MaterializedSnapshot } from './snapshot.cjs';
7
+ import { DynamicDocument } from '../../../dsl/documents.cjs';
8
+ import { CursorPage, CursorQuery } from '../../../dsl/cursorQuery.cjs';
9
+ import { ApiMetadata, ApiMetadataCapable } from '@ahoo-wang/fetcher-decorator';
10
+ /**
11
+ * A client for querying snapshot data through HTTP endpoints.
12
+ * Provides methods for various query operations such as counting, listing, paging, and retrieving single snapshots.
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * // Define the state interface
17
+ * interface CartItem {
18
+ * productId: string;
19
+ * quantity: number;
20
+ * }
21
+ *
22
+ * interface CartState {
23
+ * items: CartItem[];
24
+ * }
25
+ *
26
+ * // Create client options configuration
27
+ * const clientOptions: ApiMetadata = {
28
+ * fetcher: new Fetcher({ baseURL: 'http://localhost:8080/' }),
29
+ * basePath: 'owner/{ownerId}/cart'
30
+ * };
31
+ *
32
+ * // Create a snapshot query client instance
33
+ * const snapshotQueryClient = new SnapshotQueryClient<CartState>(clientOptions);
34
+ *
35
+ * // Count snapshots
36
+ * const count = await snapshotQueryClient.count(filter.matchAll());
37
+ *
38
+ * // List snapshots
39
+ * const listQuery: FilterListQuery = {
40
+ * filter: filter.matchAll()
41
+ * };
42
+ * const list = await snapshotQueryClient.list(listQuery);
43
+ *
44
+ * // List snapshots as stream
45
+ * const listStream = await snapshotQueryClient.listStream(listQuery);
46
+ * for await (const snapshot of listStream) {
47
+ * console.log('Received:', snapshot);
48
+ * }
49
+ *
50
+ * // List snapshot states
51
+ * const stateList = await snapshotQueryClient.listState(listQuery);
52
+ *
53
+ * // List snapshot states as stream
54
+ * const stateListStream = await snapshotQueryClient.listStateStream(listQuery);
55
+ * for await (const state of stateListStream) {
56
+ * console.log('Received state:', state);
57
+ * }
58
+ *
59
+ * // Paged snapshots
60
+ * const pagedQuery: FilterPagedQuery = {
61
+ * filter: filter.matchAll(),
62
+ * pagination: { index: 1, size: 10 }
63
+ * };
64
+ * const paged = await snapshotQueryClient.paged(pagedQuery);
65
+ *
66
+ * // Paged snapshot states
67
+ * const pagedState = await snapshotQueryClient.pagedState(pagedQuery);
68
+ *
69
+ * // Single snapshot
70
+ * const singleQuery: FilterSingleQuery = {
71
+ * filter: filter.matchAll()
72
+ * };
73
+ * const single = await snapshotQueryClient.single(singleQuery);
74
+ *
75
+ * // Single snapshot state
76
+ * const singleState = await snapshotQueryClient.singleState(singleQuery);
77
+ * ```
78
+ *
79
+ * @template S The type of the snapshot state
80
+ */
81
+ export declare class SnapshotQueryClient<S, FIELDS extends string = string> implements SnapshotQueryApi<S, FIELDS>, ApiMetadataCapable {
82
+ readonly apiMetadata?: ApiMetadata | undefined;
83
+ /**
84
+ * Creates a new SnapshotQueryClient instance.
85
+ */
86
+ constructor(apiMetadata?: ApiMetadata | undefined);
87
+ /** Runs a snapshot aggregation and returns all result rows. */
88
+ aggregate<Row extends object = DynamicDocument, AGGREGATION_FIELDS extends string = string>(query: AggregationQuery<FIELDS, AGGREGATION_FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<Row[]>;
89
+ /** Runs a snapshot aggregation and streams the result rows, one per server-sent event. */
90
+ aggregateStream<Row extends object = DynamicDocument, AGGREGATION_FIELDS extends string = string>(query: AggregationQuery<FIELDS, AGGREGATION_FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<ReadableStream<Row>>;
91
+ /** Retrieves the next cursor page of materialized snapshots. */
92
+ cursor<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(query: CursorQuery<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<CursorPage<T>>;
93
+ /** Retrieves the next cursor page of snapshot states. */
94
+ cursorState<T extends Partial<S> = S>(query: CursorQuery<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<CursorPage<T>>;
95
+ /**
96
+ * Counts the number of snapshots that match the given filter.
97
+ *
98
+ * @param filter - The filter expression or legacy condition
99
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
100
+ * throughout the request lifecycle. These attributes allow passing
101
+ * custom data between different interceptors.
102
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
103
+ * @returns A promise that resolves to the count of matching snapshots
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * const count = await snapshotQueryClient.count(filter.matchAll());
108
+ * console.log('Total snapshots:', count);
109
+ * ```
110
+ */
111
+ count(filter: FilterExpression<FIELDS> | Condition<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<number>;
112
+ /**
113
+ * Retrieves a list of materialized snapshots based on the provided query parameters.
114
+ *
115
+ * @param listQuery - The query parameters for listing snapshots
116
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
117
+ * throughout the request lifecycle. These attributes allow passing
118
+ * custom data between different interceptors.
119
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
120
+ * @returns A promise that resolves to an array of partial materialized snapshots
121
+ *
122
+ * @example
123
+ * ```typescript
124
+ * const listQuery: FilterListQuery = {
125
+ * filter: filter.matchAll()
126
+ * };
127
+ * const list = await snapshotQueryClient.list(listQuery);
128
+ * for (const snapshot of list) {
129
+ * console.log('Snapshot:', snapshot);
130
+ * }
131
+ * ```
132
+ */
133
+ list<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(listQuery: ListQueryRequest<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<T[]>;
134
+ /**
135
+ * Retrieves a stream of materialized snapshots based on the provided query parameters.
136
+ *
137
+ * @param listQuery - The query parameters for listing snapshots
138
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
139
+ * throughout the request lifecycle. These attributes allow passing
140
+ * custom data between different interceptors.
141
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
142
+ * @returns A promise that resolves to a readable stream of partial materialized snapshots
143
+ *
144
+ * @example
145
+ * ```typescript
146
+ * const listQuery: FilterListQuery = {
147
+ * filter: filter.matchAll()
148
+ * };
149
+ * const listStream = await snapshotQueryClient.listStream(listQuery);
150
+ * for await (const snapshot of listStream) {
151
+ * console.log('Received snapshot:', snapshot);
152
+ * }
153
+ * ```
154
+ */
155
+ listStream<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(listQuery: ListQueryRequest<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<ReadableStream<T>>;
156
+ /**
157
+ * Retrieves a list of snapshot states based on the provided query parameters.
158
+ *
159
+ * @param listQuery - The query parameters for listing snapshot states
160
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
161
+ * throughout the request lifecycle. These attributes allow passing
162
+ * custom data between different interceptors.
163
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
164
+ * @returns A promise that resolves to an array of partial snapshot states
165
+ *
166
+ * @example
167
+ * ```typescript
168
+ * const listQuery: FilterListQuery = {
169
+ * filter: filter.matchAll()
170
+ * };
171
+ * const list = await snapshotQueryClient.listState(listQuery);
172
+ * for (const state of list) {
173
+ * console.log('State:', state);
174
+ * }
175
+ * ```
176
+ */
177
+ listState<T extends Partial<S> = S>(listQuery: ListQueryRequest<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<T[]>;
178
+ /**
179
+ * Retrieves a stream of snapshot states based on the provided query parameters.
180
+ *
181
+ * @param listQuery - The query parameters for listing snapshot states
182
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
183
+ * throughout the request lifecycle. These attributes allow passing
184
+ * custom data between different interceptors.
185
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
186
+ * @returns A promise that resolves to a readable stream of partial snapshot states
187
+ *
188
+ * @example
189
+ * ```typescript
190
+ * const listQuery: FilterListQuery = {
191
+ * filter: filter.matchAll()
192
+ * };
193
+ * const listStream = await snapshotQueryClient.listStateStream(listQuery);
194
+ * for await (const state of listStream) {
195
+ * console.log('Received state:', state);
196
+ * }
197
+ * ```
198
+ */
199
+ listStateStream<T extends Partial<S> = S>(listQuery: ListQueryRequest<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<ReadableStream<T>>;
200
+ /**
201
+ * Retrieves a paged list of materialized snapshots based on the provided query parameters.
202
+ *
203
+ * @param pagedQuery - The query parameters for paging snapshots
204
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
205
+ * throughout the request lifecycle. These attributes allow passing
206
+ * custom data between different interceptors.
207
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
208
+ * @returns A promise that resolves to a paged list of partial materialized snapshots
209
+ *
210
+ * @example
211
+ * ```typescript
212
+ * const pagedQuery: FilterPagedQuery = {
213
+ * filter: filter.matchAll(),
214
+ * pagination: { index: 1, size: 10 }
215
+ * };
216
+ * const paged = await snapshotQueryClient.paged(pagedQuery);
217
+ * console.log('Total:', paged.total);
218
+ * for (const snapshot of paged.list) {
219
+ * console.log('Snapshot:', snapshot);
220
+ * }
221
+ * ```
222
+ */
223
+ paged<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(pagedQuery: PagedQueryRequest<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<PagedList<T>>;
224
+ /**
225
+ * Retrieves a paged list of snapshot states based on the provided query parameters.
226
+ *
227
+ * @param pagedQuery - The query parameters for paging snapshot states
228
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
229
+ * throughout the request lifecycle. These attributes allow passing
230
+ * custom data between different interceptors.
231
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
232
+ * @returns A promise that resolves to a paged list of partial snapshot states
233
+ *
234
+ * @example
235
+ * ```typescript
236
+ * const pagedQuery: FilterPagedQuery = {
237
+ * filter: filter.matchAll(),
238
+ * pagination: { index: 1, size: 10 }
239
+ * };
240
+ * const pagedState = await snapshotQueryClient.pagedState(pagedQuery);
241
+ * for (const state of pagedState.list) {
242
+ * console.log('State:', state);
243
+ * }
244
+ * ```
245
+ */
246
+ pagedState<T extends Partial<S> = S>(pagedQuery: PagedQueryRequest<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<PagedList<T>>;
247
+ /**
248
+ * Retrieves a single materialized snapshot based on the provided query parameters.
249
+ *
250
+ * @param singleQuery - The query parameters for retrieving a single snapshot
251
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
252
+ * throughout the request lifecycle. These attributes allow passing
253
+ * custom data between different interceptors.
254
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
255
+ * @returns A promise that resolves to a partial materialized snapshot
256
+ *
257
+ * @example
258
+ * ```typescript
259
+ * const singleQuery: FilterSingleQuery = {
260
+ * filter: filter.matchAll()
261
+ * };
262
+ * const single = await snapshotQueryClient.single(singleQuery);
263
+ * console.log('Snapshot:', single);
264
+ * ```
265
+ */
266
+ single<T extends Partial<MaterializedSnapshot<S>> = MaterializedSnapshot<S>>(singleQuery: SingleQueryRequest<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<T>;
267
+ /**
268
+ * Retrieves a single snapshot state based on the provided query parameters.
269
+ *
270
+ * @param singleQuery - The query parameters for retrieving a single snapshot state
271
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
272
+ * throughout the request lifecycle. These attributes allow passing
273
+ * custom data between different interceptors.
274
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
275
+ * @returns A promise that resolves to a partial snapshot state
276
+ *
277
+ * @example
278
+ * ```typescript
279
+ * const singleQuery: FilterSingleQuery = {
280
+ * filter: filter.matchAll()
281
+ * };
282
+ * const singleState = await snapshotQueryClient.singleState(singleQuery);
283
+ * console.log('State:', singleState);
284
+ * ```
285
+ */
286
+ singleState<T extends Partial<S> = S>(singleQuery: SingleQueryRequest<FIELDS>, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<T>;
287
+ /**
288
+ * Retrieves a single materialized snapshot by its ID.
289
+ *
290
+ * @param id - The unique identifier of the snapshot to retrieve
291
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
292
+ * throughout the request lifecycle. These attributes allow passing
293
+ * custom data between different interceptors.
294
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
295
+ * @returns A promise that resolves to the materialized snapshot with the specified ID
296
+ *
297
+ * @example
298
+ * ```typescript
299
+ * const snapshot = await snapshotQueryClient.getById('snapshot-123');
300
+ * console.log('Snapshot:', snapshot);
301
+ * ```
302
+ */
303
+ getById(id: string, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<MaterializedSnapshot<S>>;
304
+ /**
305
+ * Retrieves a single snapshot state by its ID.
306
+ *
307
+ * @param id - The unique identifier of the snapshot whose state to retrieve
308
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
309
+ * throughout the request lifecycle. These attributes allow passing
310
+ * custom data between different interceptors.
311
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
312
+ * @returns A promise that resolves to the snapshot state with the specified ID
313
+ *
314
+ * @example
315
+ * ```typescript
316
+ * const state = await snapshotQueryClient.getStateById('snapshot-123');
317
+ * console.log('State:', state);
318
+ * ```
319
+ */
320
+ getStateById(id: string, attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<S>;
321
+ /**
322
+ * Retrieves multiple materialized snapshots by their IDs.
323
+ *
324
+ * One request, filtered by `filter.aggregateIds(ids)` with `limit` set to
325
+ * the number of ids; an empty `ids` sends nothing and resolves to `[]`. The
326
+ * server refuses more ids than its filter value limit and its maximum list
327
+ * size (1000 each by default), so split a larger set into batches.
328
+ *
329
+ * @param ids - An array of unique identifiers of the snapshots to retrieve
330
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
331
+ * throughout the request lifecycle. These attributes allow passing
332
+ * custom data between different interceptors.
333
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
334
+ * @returns A promise that resolves to an array of materialized snapshots with the specified IDs
335
+ *
336
+ * @example
337
+ * ```typescript
338
+ * const snapshots = await snapshotQueryClient.getByIds(['snapshot-123', 'snapshot-456']);
339
+ * for (const snapshot of snapshots) {
340
+ * console.log('Snapshot:', snapshot);
341
+ * }
342
+ * ```
343
+ */
344
+ getByIds(ids: string[], attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<MaterializedSnapshot<S>[]>;
345
+ /**
346
+ * Retrieves multiple snapshot states by their IDs.
347
+ *
348
+ * One request, filtered by `filter.aggregateIds(ids)` with `limit` set to
349
+ * the number of ids; an empty `ids` sends nothing and resolves to `[]`. The
350
+ * server refuses more ids than its filter value limit and its maximum list
351
+ * size (1000 each by default), so split a larger set into batches.
352
+ *
353
+ * @param ids - An array of unique identifiers of the snapshots whose states to retrieve
354
+ * @param attributes - Optional shared attributes that can be accessed by interceptors
355
+ * throughout the request lifecycle. These attributes allow passing
356
+ * custom data between different interceptors.
357
+ * @param abort - Cancels the request: an `AbortController`, or an `AbortSignal` such as `AbortSignal.timeout(ms)` or the `signal` a data-fetching library passes.
358
+ * @returns A promise that resolves to an array of snapshot states with the specified IDs
359
+ *
360
+ * @example
361
+ * ```typescript
362
+ * const states = await snapshotQueryClient.getStateByIds(['snapshot-123', 'snapshot-456']);
363
+ * for (const state of states) {
364
+ * console.log('State:', state);
365
+ * }
366
+ * ```
367
+ */
368
+ getStateByIds(ids: string[], attributes?: Record<string, unknown>, abort?: AbortController | AbortSignal): Promise<S[]>;
369
+ }