tinybase 5.0.0-beta.19 → 5.0.0-beta.20

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 (987) hide show
  1. package/@types/_internal/queries/with-schemas/index.d.cts +22 -0
  2. package/@types/_internal/store/index.d.cts +3 -0
  3. package/@types/_internal/store/with-schemas/index.d.cts +106 -0
  4. package/@types/_internal/ui-react/with-schemas/index.d.cts +813 -0
  5. package/@types/checkpoints/index.d.cts +1033 -0
  6. package/@types/checkpoints/with-schemas/index.d.cts +1125 -0
  7. package/@types/index.d.cts +18 -0
  8. package/@types/indexes/index.d.cts +1037 -0
  9. package/@types/indexes/with-schemas/index.d.cts +1183 -0
  10. package/@types/mergeable-store/index.d.cts +222 -0
  11. package/@types/mergeable-store/with-schemas/index.d.cts +509 -0
  12. package/@types/metrics/index.d.cts +895 -0
  13. package/@types/metrics/with-schemas/index.d.cts +982 -0
  14. package/@types/persisters/index.d.cts +1319 -0
  15. package/@types/persisters/persister-automerge/index.d.cts +162 -0
  16. package/@types/persisters/persister-automerge/with-schemas/index.d.cts +177 -0
  17. package/@types/persisters/persister-browser/index.d.cts +174 -0
  18. package/@types/persisters/persister-browser/with-schemas/index.d.cts +199 -0
  19. package/@types/persisters/persister-cr-sqlite-wasm/index.d.cts +157 -0
  20. package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.cts +176 -0
  21. package/@types/persisters/persister-electric-sql/index.d.cts +183 -0
  22. package/@types/persisters/persister-electric-sql/with-schemas/index.d.cts +202 -0
  23. package/@types/persisters/persister-expo-sqlite/index.d.cts +186 -0
  24. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +205 -0
  25. package/@types/persisters/persister-expo-sqlite-next/index.d.cts +187 -0
  26. package/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.cts +206 -0
  27. package/@types/persisters/persister-file/index.d.cts +88 -0
  28. package/@types/persisters/persister-file/with-schemas/index.d.cts +102 -0
  29. package/@types/persisters/persister-indexed-db/index.d.cts +116 -0
  30. package/@types/persisters/persister-indexed-db/with-schemas/index.d.cts +131 -0
  31. package/@types/persisters/persister-libsql/index.d.cts +154 -0
  32. package/@types/persisters/persister-libsql/with-schemas/index.d.cts +173 -0
  33. package/@types/persisters/persister-partykit-client/index.d.cts +185 -0
  34. package/@types/persisters/persister-partykit-client/with-schemas/index.d.cts +200 -0
  35. package/@types/persisters/persister-partykit-server/index.d.cts +631 -0
  36. package/@types/persisters/persister-partykit-server/with-schemas/index.d.cts +673 -0
  37. package/@types/persisters/persister-powersync/index.d.cts +169 -0
  38. package/@types/persisters/persister-powersync/with-schemas/index.d.cts +188 -0
  39. package/@types/persisters/persister-remote/index.d.cts +113 -0
  40. package/@types/persisters/persister-remote/with-schemas/index.d.cts +129 -0
  41. package/@types/persisters/persister-sqlite-wasm/index.d.cts +170 -0
  42. package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.cts +190 -0
  43. package/@types/persisters/persister-sqlite3/index.d.cts +171 -0
  44. package/@types/persisters/persister-sqlite3/with-schemas/index.d.cts +190 -0
  45. package/@types/persisters/persister-yjs/index.d.cts +157 -0
  46. package/@types/persisters/persister-yjs/with-schemas/index.d.cts +172 -0
  47. package/@types/persisters/with-schemas/index.d.cts +1393 -0
  48. package/@types/queries/index.d.cts +3640 -0
  49. package/@types/queries/with-schemas/index.d.cts +3961 -0
  50. package/@types/relationships/index.d.cts +1266 -0
  51. package/@types/relationships/with-schemas/index.d.cts +1420 -0
  52. package/@types/store/index.d.cts +7453 -0
  53. package/@types/store/with-schemas/index.d.cts +9131 -0
  54. package/@types/synchronizers/index.d.cts +139 -0
  55. package/@types/synchronizers/synchronizer-local/index.d.cts +27 -0
  56. package/@types/synchronizers/synchronizer-local/with-schemas/index.d.cts +29 -0
  57. package/@types/synchronizers/synchronizer-ws-client/index.d.cts +36 -0
  58. package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.cts +42 -0
  59. package/@types/synchronizers/synchronizer-ws-server/index.d.cts +58 -0
  60. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +58 -0
  61. package/@types/synchronizers/with-schemas/index.d.cts +156 -0
  62. package/@types/tools/index.d.cts +556 -0
  63. package/@types/tools/with-schemas/index.d.cts +567 -0
  64. package/@types/ui-react/index.d.cts +15318 -0
  65. package/@types/ui-react/with-schemas/index.d.cts +16235 -0
  66. package/@types/ui-react-dom/index.d.cts +1751 -0
  67. package/@types/ui-react-dom/with-schemas/index.d.cts +1883 -0
  68. package/@types/ui-react-inspector/index.d.cts +77 -0
  69. package/@types/ui-react-inspector/with-schemas/index.d.cts +1871 -0
  70. package/@types/with-schemas/index.d.cts +18 -0
  71. package/cjs/debug/checkpoints/index.cjs +433 -0
  72. package/cjs/debug/checkpoints/with-schemas/index.cjs +433 -0
  73. package/cjs/debug/common/index.cjs +28 -0
  74. package/cjs/debug/common/with-schemas/index.cjs +28 -0
  75. package/cjs/debug/index.cjs +4102 -0
  76. package/cjs/debug/indexes/index.cjs +555 -0
  77. package/cjs/debug/indexes/with-schemas/index.cjs +555 -0
  78. package/cjs/debug/mergeable-store/index.cjs +2249 -0
  79. package/cjs/debug/mergeable-store/with-schemas/index.cjs +2249 -0
  80. package/cjs/debug/metrics/index.cjs +521 -0
  81. package/cjs/debug/metrics/with-schemas/index.cjs +521 -0
  82. package/cjs/debug/persisters/index.cjs +230 -0
  83. package/cjs/debug/persisters/persister-automerge/index.cjs +378 -0
  84. package/cjs/debug/persisters/persister-automerge/with-schemas/index.cjs +378 -0
  85. package/cjs/debug/persisters/persister-browser/index.cjs +282 -0
  86. package/cjs/debug/persisters/persister-browser/with-schemas/index.cjs +282 -0
  87. package/cjs/debug/persisters/persister-cr-sqlite-wasm/index.cjs +929 -0
  88. package/cjs/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +929 -0
  89. package/cjs/debug/persisters/persister-electric-sql/index.cjs +937 -0
  90. package/cjs/debug/persisters/persister-electric-sql/with-schemas/index.cjs +937 -0
  91. package/cjs/debug/persisters/persister-expo-sqlite/index.cjs +930 -0
  92. package/cjs/debug/persisters/persister-expo-sqlite/with-schemas/index.cjs +930 -0
  93. package/cjs/debug/persisters/persister-expo-sqlite-next/index.cjs +932 -0
  94. package/cjs/debug/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +932 -0
  95. package/cjs/debug/persisters/persister-file/index.cjs +265 -0
  96. package/cjs/debug/persisters/persister-file/with-schemas/index.cjs +265 -0
  97. package/cjs/debug/persisters/persister-indexed-db/index.cjs +342 -0
  98. package/cjs/debug/persisters/persister-indexed-db/with-schemas/index.cjs +342 -0
  99. package/cjs/debug/persisters/persister-libsql/index.cjs +930 -0
  100. package/cjs/debug/persisters/persister-libsql/with-schemas/index.cjs +930 -0
  101. package/cjs/debug/persisters/persister-partykit-client/index.cjs +329 -0
  102. package/cjs/debug/persisters/persister-partykit-client/with-schemas/index.cjs +329 -0
  103. package/cjs/debug/persisters/persister-partykit-server/index.cjs +284 -0
  104. package/cjs/debug/persisters/persister-partykit-server/with-schemas/index.cjs +284 -0
  105. package/cjs/debug/persisters/persister-powersync/index.cjs +945 -0
  106. package/cjs/debug/persisters/persister-powersync/with-schemas/index.cjs +945 -0
  107. package/cjs/debug/persisters/persister-remote/index.cjs +287 -0
  108. package/cjs/debug/persisters/persister-remote/with-schemas/index.cjs +287 -0
  109. package/cjs/debug/persisters/persister-sqlite-wasm/index.cjs +938 -0
  110. package/cjs/debug/persisters/persister-sqlite-wasm/with-schemas/index.cjs +938 -0
  111. package/cjs/debug/persisters/persister-sqlite3/index.cjs +940 -0
  112. package/cjs/debug/persisters/persister-sqlite3/with-schemas/index.cjs +940 -0
  113. package/cjs/debug/persisters/persister-yjs/index.cjs +427 -0
  114. package/cjs/debug/persisters/persister-yjs/with-schemas/index.cjs +427 -0
  115. package/cjs/debug/persisters/with-schemas/index.cjs +230 -0
  116. package/cjs/debug/queries/index.cjs +814 -0
  117. package/cjs/debug/queries/with-schemas/index.cjs +814 -0
  118. package/cjs/debug/relationships/index.cjs +531 -0
  119. package/cjs/debug/relationships/with-schemas/index.cjs +531 -0
  120. package/cjs/debug/store/index.cjs +1636 -0
  121. package/cjs/debug/store/with-schemas/index.cjs +1636 -0
  122. package/cjs/debug/synchronizers/index.cjs +466 -0
  123. package/cjs/debug/synchronizers/synchronizer-local/index.cjs +506 -0
  124. package/cjs/debug/synchronizers/synchronizer-local/with-schemas/index.cjs +506 -0
  125. package/cjs/debug/synchronizers/synchronizer-ws-client/index.cjs +529 -0
  126. package/cjs/debug/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +529 -0
  127. package/cjs/debug/synchronizers/synchronizer-ws-server/index.cjs +243 -0
  128. package/cjs/debug/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +243 -0
  129. package/cjs/debug/synchronizers/with-schemas/index.cjs +466 -0
  130. package/cjs/debug/tools/index.cjs +3300 -0
  131. package/cjs/debug/tools/with-schemas/index.cjs +3300 -0
  132. package/cjs/debug/ui-react/index.cjs +1985 -0
  133. package/cjs/debug/ui-react/with-schemas/index.cjs +1985 -0
  134. package/cjs/debug/ui-react-dom/index.cjs +779 -0
  135. package/cjs/debug/ui-react-dom/with-schemas/index.cjs +779 -0
  136. package/cjs/debug/ui-react-inspector/index.cjs +3263 -0
  137. package/cjs/debug/ui-react-inspector/with-schemas/index.cjs +3263 -0
  138. package/cjs/debug/with-schemas/index.cjs +4102 -0
  139. package/cjs/es6/debug/checkpoints/index.cjs +473 -0
  140. package/cjs/es6/debug/checkpoints/with-schemas/index.cjs +473 -0
  141. package/cjs/es6/debug/common/index.cjs +30 -0
  142. package/cjs/es6/debug/common/with-schemas/index.cjs +30 -0
  143. package/cjs/es6/debug/index.cjs +4358 -0
  144. package/cjs/es6/debug/indexes/index.cjs +602 -0
  145. package/cjs/es6/debug/indexes/with-schemas/index.cjs +602 -0
  146. package/cjs/es6/debug/mergeable-store/index.cjs +2349 -0
  147. package/cjs/es6/debug/mergeable-store/with-schemas/index.cjs +2349 -0
  148. package/cjs/es6/debug/metrics/index.cjs +574 -0
  149. package/cjs/es6/debug/metrics/with-schemas/index.cjs +574 -0
  150. package/cjs/es6/debug/persisters/index.cjs +302 -0
  151. package/cjs/es6/debug/persisters/persister-automerge/index.cjs +476 -0
  152. package/cjs/es6/debug/persisters/persister-automerge/with-schemas/index.cjs +476 -0
  153. package/cjs/es6/debug/persisters/persister-browser/index.cjs +384 -0
  154. package/cjs/es6/debug/persisters/persister-browser/with-schemas/index.cjs +384 -0
  155. package/cjs/es6/debug/persisters/persister-cr-sqlite-wasm/index.cjs +1256 -0
  156. package/cjs/es6/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1256 -0
  157. package/cjs/es6/debug/persisters/persister-electric-sql/index.cjs +1264 -0
  158. package/cjs/es6/debug/persisters/persister-electric-sql/with-schemas/index.cjs +1264 -0
  159. package/cjs/es6/debug/persisters/persister-expo-sqlite/index.cjs +1256 -0
  160. package/cjs/es6/debug/persisters/persister-expo-sqlite/with-schemas/index.cjs +1256 -0
  161. package/cjs/es6/debug/persisters/persister-expo-sqlite-next/index.cjs +1259 -0
  162. package/cjs/es6/debug/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +1259 -0
  163. package/cjs/es6/debug/persisters/persister-file/index.cjs +365 -0
  164. package/cjs/es6/debug/persisters/persister-file/with-schemas/index.cjs +365 -0
  165. package/cjs/es6/debug/persisters/persister-indexed-db/index.cjs +481 -0
  166. package/cjs/es6/debug/persisters/persister-indexed-db/with-schemas/index.cjs +481 -0
  167. package/cjs/es6/debug/persisters/persister-libsql/index.cjs +1257 -0
  168. package/cjs/es6/debug/persisters/persister-libsql/with-schemas/index.cjs +1257 -0
  169. package/cjs/es6/debug/persisters/persister-partykit-client/index.cjs +459 -0
  170. package/cjs/es6/debug/persisters/persister-partykit-client/with-schemas/index.cjs +459 -0
  171. package/cjs/es6/debug/persisters/persister-partykit-server/index.cjs +411 -0
  172. package/cjs/es6/debug/persisters/persister-partykit-server/with-schemas/index.cjs +411 -0
  173. package/cjs/es6/debug/persisters/persister-powersync/index.cjs +1312 -0
  174. package/cjs/es6/debug/persisters/persister-powersync/with-schemas/index.cjs +1312 -0
  175. package/cjs/es6/debug/persisters/persister-remote/index.cjs +389 -0
  176. package/cjs/es6/debug/persisters/persister-remote/with-schemas/index.cjs +389 -0
  177. package/cjs/es6/debug/persisters/persister-sqlite-wasm/index.cjs +1286 -0
  178. package/cjs/es6/debug/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1286 -0
  179. package/cjs/es6/debug/persisters/persister-sqlite3/index.cjs +1266 -0
  180. package/cjs/es6/debug/persisters/persister-sqlite3/with-schemas/index.cjs +1266 -0
  181. package/cjs/es6/debug/persisters/persister-yjs/index.cjs +536 -0
  182. package/cjs/es6/debug/persisters/persister-yjs/with-schemas/index.cjs +536 -0
  183. package/cjs/es6/debug/persisters/with-schemas/index.cjs +302 -0
  184. package/cjs/es6/debug/queries/index.cjs +859 -0
  185. package/cjs/es6/debug/queries/with-schemas/index.cjs +859 -0
  186. package/cjs/es6/debug/relationships/index.cjs +591 -0
  187. package/cjs/es6/debug/relationships/with-schemas/index.cjs +591 -0
  188. package/cjs/es6/debug/store/index.cjs +1716 -0
  189. package/cjs/es6/debug/store/with-schemas/index.cjs +1716 -0
  190. package/cjs/es6/debug/synchronizers/index.cjs +594 -0
  191. package/cjs/es6/debug/synchronizers/synchronizer-local/index.cjs +630 -0
  192. package/cjs/es6/debug/synchronizers/synchronizer-local/with-schemas/index.cjs +630 -0
  193. package/cjs/es6/debug/synchronizers/synchronizer-ws-client/index.cjs +681 -0
  194. package/cjs/es6/debug/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +681 -0
  195. package/cjs/es6/debug/synchronizers/synchronizer-ws-server/index.cjs +292 -0
  196. package/cjs/es6/debug/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +292 -0
  197. package/cjs/es6/debug/synchronizers/with-schemas/index.cjs +594 -0
  198. package/cjs/es6/debug/tools/index.cjs +3423 -0
  199. package/cjs/es6/debug/tools/with-schemas/index.cjs +3423 -0
  200. package/cjs/es6/debug/ui-react/index.cjs +2189 -0
  201. package/cjs/es6/debug/ui-react/with-schemas/index.cjs +2189 -0
  202. package/cjs/es6/debug/ui-react-dom/index.cjs +906 -0
  203. package/cjs/es6/debug/ui-react-dom/with-schemas/index.cjs +906 -0
  204. package/cjs/es6/debug/ui-react-inspector/index.cjs +3654 -0
  205. package/cjs/es6/debug/ui-react-inspector/with-schemas/index.cjs +3654 -0
  206. package/cjs/es6/debug/with-schemas/index.cjs +4358 -0
  207. package/es6/debug/checkpoints/index.js +471 -0
  208. package/es6/debug/checkpoints/with-schemas/index.js +471 -0
  209. package/es6/debug/common/index.js +27 -0
  210. package/es6/debug/common/with-schemas/index.js +27 -0
  211. package/es6/debug/index.js +4358 -0
  212. package/es6/debug/indexes/index.js +600 -0
  213. package/es6/debug/indexes/with-schemas/index.js +600 -0
  214. package/es6/debug/mergeable-store/index.js +2347 -0
  215. package/es6/debug/mergeable-store/with-schemas/index.js +2347 -0
  216. package/es6/debug/metrics/index.js +572 -0
  217. package/es6/debug/metrics/with-schemas/index.js +572 -0
  218. package/es6/debug/persisters/index.js +300 -0
  219. package/es6/debug/persisters/persister-automerge/index.js +474 -0
  220. package/es6/debug/persisters/persister-automerge/with-schemas/index.js +474 -0
  221. package/es6/debug/persisters/persister-browser/index.js +381 -0
  222. package/es6/debug/persisters/persister-browser/with-schemas/index.js +381 -0
  223. package/es6/debug/persisters/persister-cr-sqlite-wasm/index.js +1254 -0
  224. package/es6/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1254 -0
  225. package/es6/debug/persisters/persister-electric-sql/index.js +1262 -0
  226. package/es6/debug/persisters/persister-electric-sql/with-schemas/index.js +1262 -0
  227. package/es6/debug/persisters/persister-expo-sqlite/index.js +1254 -0
  228. package/es6/debug/persisters/persister-expo-sqlite/with-schemas/index.js +1254 -0
  229. package/es6/debug/persisters/persister-expo-sqlite-next/index.js +1257 -0
  230. package/es6/debug/persisters/persister-expo-sqlite-next/with-schemas/index.js +1257 -0
  231. package/es6/debug/persisters/persister-file/index.js +362 -0
  232. package/es6/debug/persisters/persister-file/with-schemas/index.js +362 -0
  233. package/es6/debug/persisters/persister-indexed-db/index.js +478 -0
  234. package/es6/debug/persisters/persister-indexed-db/with-schemas/index.js +478 -0
  235. package/es6/debug/persisters/persister-libsql/index.js +1255 -0
  236. package/es6/debug/persisters/persister-libsql/with-schemas/index.js +1255 -0
  237. package/es6/debug/persisters/persister-partykit-client/index.js +457 -0
  238. package/es6/debug/persisters/persister-partykit-client/with-schemas/index.js +457 -0
  239. package/es6/debug/persisters/persister-partykit-server/index.js +411 -0
  240. package/es6/debug/persisters/persister-partykit-server/with-schemas/index.js +411 -0
  241. package/es6/debug/persisters/persister-powersync/index.js +1310 -0
  242. package/es6/debug/persisters/persister-powersync/with-schemas/index.js +1310 -0
  243. package/es6/debug/persisters/persister-remote/index.js +387 -0
  244. package/es6/debug/persisters/persister-remote/with-schemas/index.js +387 -0
  245. package/es6/debug/persisters/persister-sqlite-wasm/index.js +1284 -0
  246. package/es6/debug/persisters/persister-sqlite-wasm/with-schemas/index.js +1284 -0
  247. package/es6/debug/persisters/persister-sqlite3/index.js +1264 -0
  248. package/es6/debug/persisters/persister-sqlite3/with-schemas/index.js +1264 -0
  249. package/es6/debug/persisters/persister-yjs/index.js +534 -0
  250. package/es6/debug/persisters/persister-yjs/with-schemas/index.js +534 -0
  251. package/es6/debug/persisters/with-schemas/index.js +300 -0
  252. package/es6/debug/queries/index.js +857 -0
  253. package/es6/debug/queries/with-schemas/index.js +857 -0
  254. package/es6/debug/relationships/index.js +589 -0
  255. package/es6/debug/relationships/with-schemas/index.js +589 -0
  256. package/es6/debug/store/index.js +1714 -0
  257. package/es6/debug/store/with-schemas/index.js +1714 -0
  258. package/es6/debug/synchronizers/index.js +592 -0
  259. package/es6/debug/synchronizers/synchronizer-local/index.js +628 -0
  260. package/es6/debug/synchronizers/synchronizer-local/with-schemas/index.js +628 -0
  261. package/es6/debug/synchronizers/synchronizer-ws-client/index.js +679 -0
  262. package/es6/debug/synchronizers/synchronizer-ws-client/with-schemas/index.js +679 -0
  263. package/es6/debug/synchronizers/synchronizer-ws-server/index.js +290 -0
  264. package/es6/debug/synchronizers/synchronizer-ws-server/with-schemas/index.js +290 -0
  265. package/es6/debug/synchronizers/with-schemas/index.js +592 -0
  266. package/es6/debug/tools/index.js +3421 -0
  267. package/es6/debug/tools/with-schemas/index.js +3421 -0
  268. package/es6/debug/ui-react/index.js +2188 -0
  269. package/es6/debug/ui-react/with-schemas/index.js +2188 -0
  270. package/es6/debug/ui-react-dom/index.js +907 -0
  271. package/es6/debug/ui-react-dom/with-schemas/index.js +907 -0
  272. package/es6/debug/ui-react-inspector/index.js +3659 -0
  273. package/es6/debug/ui-react-inspector/with-schemas/index.js +3659 -0
  274. package/es6/debug/with-schemas/index.js +4358 -0
  275. package/package.json +3526 -40
  276. package/readme.md +3 -3
  277. package/releases.md +2 -2
  278. package/umd/debug/checkpoints/index.js +450 -0
  279. package/umd/debug/checkpoints/with-schemas/index.js +450 -0
  280. package/umd/debug/common/index.js +38 -0
  281. package/umd/debug/common/with-schemas/index.js +38 -0
  282. package/umd/debug/index.js +4192 -0
  283. package/umd/debug/indexes/index.js +578 -0
  284. package/umd/debug/indexes/with-schemas/index.js +578 -0
  285. package/umd/debug/mergeable-store/index.js +2312 -0
  286. package/umd/debug/mergeable-store/with-schemas/index.js +2312 -0
  287. package/umd/debug/metrics/index.js +544 -0
  288. package/umd/debug/metrics/with-schemas/index.js +544 -0
  289. package/umd/debug/persisters/index.js +242 -0
  290. package/umd/debug/persisters/persister-automerge/index.js +390 -0
  291. package/umd/debug/persisters/persister-automerge/with-schemas/index.js +390 -0
  292. package/umd/debug/persisters/persister-browser/index.js +296 -0
  293. package/umd/debug/persisters/persister-browser/with-schemas/index.js +296 -0
  294. package/umd/debug/persisters/persister-cr-sqlite-wasm/index.js +959 -0
  295. package/umd/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +959 -0
  296. package/umd/debug/persisters/persister-electric-sql/index.js +967 -0
  297. package/umd/debug/persisters/persister-electric-sql/with-schemas/index.js +967 -0
  298. package/umd/debug/persisters/persister-expo-sqlite/index.js +960 -0
  299. package/umd/debug/persisters/persister-expo-sqlite/with-schemas/index.js +960 -0
  300. package/umd/debug/persisters/persister-expo-sqlite-next/index.js +963 -0
  301. package/umd/debug/persisters/persister-expo-sqlite-next/with-schemas/index.js +963 -0
  302. package/umd/debug/persisters/persister-file/index.js +280 -0
  303. package/umd/debug/persisters/persister-file/with-schemas/index.js +280 -0
  304. package/umd/debug/persisters/persister-indexed-db/index.js +354 -0
  305. package/umd/debug/persisters/persister-indexed-db/with-schemas/index.js +354 -0
  306. package/umd/debug/persisters/persister-libsql/index.js +960 -0
  307. package/umd/debug/persisters/persister-libsql/with-schemas/index.js +960 -0
  308. package/umd/debug/persisters/persister-partykit-client/index.js +341 -0
  309. package/umd/debug/persisters/persister-partykit-client/with-schemas/index.js +341 -0
  310. package/umd/debug/persisters/persister-partykit-server/index.js +312 -0
  311. package/umd/debug/persisters/persister-partykit-server/with-schemas/index.js +312 -0
  312. package/umd/debug/persisters/persister-powersync/index.js +977 -0
  313. package/umd/debug/persisters/persister-powersync/with-schemas/index.js +977 -0
  314. package/umd/debug/persisters/persister-remote/index.js +299 -0
  315. package/umd/debug/persisters/persister-remote/with-schemas/index.js +299 -0
  316. package/umd/debug/persisters/persister-sqlite-wasm/index.js +968 -0
  317. package/umd/debug/persisters/persister-sqlite-wasm/with-schemas/index.js +968 -0
  318. package/umd/debug/persisters/persister-sqlite3/index.js +970 -0
  319. package/umd/debug/persisters/persister-sqlite3/with-schemas/index.js +970 -0
  320. package/umd/debug/persisters/persister-yjs/index.js +439 -0
  321. package/umd/debug/persisters/persister-yjs/with-schemas/index.js +439 -0
  322. package/umd/debug/persisters/with-schemas/index.js +242 -0
  323. package/umd/debug/queries/index.js +828 -0
  324. package/umd/debug/queries/with-schemas/index.js +828 -0
  325. package/umd/debug/relationships/index.js +551 -0
  326. package/umd/debug/relationships/with-schemas/index.js +551 -0
  327. package/umd/debug/store/index.js +1686 -0
  328. package/umd/debug/store/with-schemas/index.js +1686 -0
  329. package/umd/debug/synchronizers/index.js +482 -0
  330. package/umd/debug/synchronizers/synchronizer-local/index.js +522 -0
  331. package/umd/debug/synchronizers/synchronizer-local/with-schemas/index.js +522 -0
  332. package/umd/debug/synchronizers/synchronizer-ws-client/index.js +547 -0
  333. package/umd/debug/synchronizers/synchronizer-ws-client/with-schemas/index.js +547 -0
  334. package/umd/debug/synchronizers/synchronizer-ws-server/index.js +261 -0
  335. package/umd/debug/synchronizers/synchronizer-ws-server/with-schemas/index.js +261 -0
  336. package/umd/debug/synchronizers/with-schemas/index.js +482 -0
  337. package/umd/debug/tools/index.js +3351 -0
  338. package/umd/debug/tools/with-schemas/index.js +3351 -0
  339. package/umd/debug/ui-react/index.js +2036 -0
  340. package/umd/debug/ui-react/with-schemas/index.js +2036 -0
  341. package/umd/debug/ui-react-dom/index.js +802 -0
  342. package/umd/debug/ui-react-dom/with-schemas/index.js +802 -0
  343. package/umd/debug/ui-react-inspector/index.js +3342 -0
  344. package/umd/debug/ui-react-inspector/with-schemas/index.js +3342 -0
  345. package/umd/debug/with-schemas/index.js +4192 -0
  346. package/umd/es6/debug/checkpoints/index.js +492 -0
  347. package/umd/es6/debug/checkpoints/with-schemas/index.js +492 -0
  348. package/umd/es6/debug/common/index.js +40 -0
  349. package/umd/es6/debug/common/with-schemas/index.js +40 -0
  350. package/umd/es6/debug/index.js +4456 -0
  351. package/umd/es6/debug/indexes/index.js +627 -0
  352. package/umd/es6/debug/indexes/with-schemas/index.js +627 -0
  353. package/umd/es6/debug/mergeable-store/index.js +2418 -0
  354. package/umd/es6/debug/mergeable-store/with-schemas/index.js +2418 -0
  355. package/umd/es6/debug/metrics/index.js +599 -0
  356. package/umd/es6/debug/metrics/with-schemas/index.js +599 -0
  357. package/umd/es6/debug/persisters/index.js +316 -0
  358. package/umd/es6/debug/persisters/persister-automerge/index.js +490 -0
  359. package/umd/es6/debug/persisters/persister-automerge/with-schemas/index.js +490 -0
  360. package/umd/es6/debug/persisters/persister-browser/index.js +400 -0
  361. package/umd/es6/debug/persisters/persister-browser/with-schemas/index.js +400 -0
  362. package/umd/es6/debug/persisters/persister-cr-sqlite-wasm/index.js +1295 -0
  363. package/umd/es6/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1295 -0
  364. package/umd/es6/debug/persisters/persister-electric-sql/index.js +1303 -0
  365. package/umd/es6/debug/persisters/persister-electric-sql/with-schemas/index.js +1303 -0
  366. package/umd/es6/debug/persisters/persister-expo-sqlite/index.js +1295 -0
  367. package/umd/es6/debug/persisters/persister-expo-sqlite/with-schemas/index.js +1295 -0
  368. package/umd/es6/debug/persisters/persister-expo-sqlite-next/index.js +1299 -0
  369. package/umd/es6/debug/persisters/persister-expo-sqlite-next/with-schemas/index.js +1299 -0
  370. package/umd/es6/debug/persisters/persister-file/index.js +382 -0
  371. package/umd/es6/debug/persisters/persister-file/with-schemas/index.js +382 -0
  372. package/umd/es6/debug/persisters/persister-indexed-db/index.js +495 -0
  373. package/umd/es6/debug/persisters/persister-indexed-db/with-schemas/index.js +495 -0
  374. package/umd/es6/debug/persisters/persister-libsql/index.js +1296 -0
  375. package/umd/es6/debug/persisters/persister-libsql/with-schemas/index.js +1296 -0
  376. package/umd/es6/debug/persisters/persister-partykit-client/index.js +473 -0
  377. package/umd/es6/debug/persisters/persister-partykit-client/with-schemas/index.js +473 -0
  378. package/umd/es6/debug/persisters/persister-partykit-server/index.js +432 -0
  379. package/umd/es6/debug/persisters/persister-partykit-server/with-schemas/index.js +432 -0
  380. package/umd/es6/debug/persisters/persister-powersync/index.js +1355 -0
  381. package/umd/es6/debug/persisters/persister-powersync/with-schemas/index.js +1355 -0
  382. package/umd/es6/debug/persisters/persister-remote/index.js +403 -0
  383. package/umd/es6/debug/persisters/persister-remote/with-schemas/index.js +403 -0
  384. package/umd/es6/debug/persisters/persister-sqlite-wasm/index.js +1329 -0
  385. package/umd/es6/debug/persisters/persister-sqlite-wasm/with-schemas/index.js +1329 -0
  386. package/umd/es6/debug/persisters/persister-sqlite3/index.js +1305 -0
  387. package/umd/es6/debug/persisters/persister-sqlite3/with-schemas/index.js +1305 -0
  388. package/umd/es6/debug/persisters/persister-yjs/index.js +550 -0
  389. package/umd/es6/debug/persisters/persister-yjs/with-schemas/index.js +550 -0
  390. package/umd/es6/debug/persisters/with-schemas/index.js +316 -0
  391. package/umd/es6/debug/queries/index.js +875 -0
  392. package/umd/es6/debug/queries/with-schemas/index.js +875 -0
  393. package/umd/es6/debug/relationships/index.js +613 -0
  394. package/umd/es6/debug/relationships/with-schemas/index.js +613 -0
  395. package/umd/es6/debug/store/index.js +1770 -0
  396. package/umd/es6/debug/store/with-schemas/index.js +1770 -0
  397. package/umd/es6/debug/synchronizers/index.js +616 -0
  398. package/umd/es6/debug/synchronizers/synchronizer-local/index.js +652 -0
  399. package/umd/es6/debug/synchronizers/synchronizer-local/with-schemas/index.js +652 -0
  400. package/umd/es6/debug/synchronizers/synchronizer-ws-client/index.js +705 -0
  401. package/umd/es6/debug/synchronizers/synchronizer-ws-client/with-schemas/index.js +705 -0
  402. package/umd/es6/debug/synchronizers/synchronizer-ws-server/index.js +314 -0
  403. package/umd/es6/debug/synchronizers/synchronizer-ws-server/with-schemas/index.js +314 -0
  404. package/umd/es6/debug/synchronizers/with-schemas/index.js +616 -0
  405. package/umd/es6/debug/tools/index.js +3481 -0
  406. package/umd/es6/debug/tools/with-schemas/index.js +3481 -0
  407. package/umd/es6/debug/ui-react/index.js +2248 -0
  408. package/umd/es6/debug/ui-react/with-schemas/index.js +2248 -0
  409. package/umd/es6/debug/ui-react-dom/index.js +921 -0
  410. package/umd/es6/debug/ui-react-dom/with-schemas/index.js +921 -0
  411. package/umd/es6/debug/ui-react-inspector/index.js +3735 -0
  412. package/umd/es6/debug/ui-react-inspector/with-schemas/index.js +3735 -0
  413. package/umd/es6/debug/with-schemas/index.js +4456 -0
  414. package/cjs/@types/_internal/queries/index.d.ts +0 -0
  415. package/cjs/@types/_internal/queries/with-schemas/index.d.ts +0 -22
  416. package/cjs/@types/_internal/store/index.d.ts +0 -3
  417. package/cjs/@types/_internal/store/with-schemas/index.d.ts +0 -106
  418. package/cjs/@types/_internal/ui-react/index.d.ts +0 -0
  419. package/cjs/@types/_internal/ui-react/with-schemas/index.d.ts +0 -813
  420. package/cjs/@types/checkpoints/index.d.ts +0 -1033
  421. package/cjs/@types/checkpoints/with-schemas/index.d.ts +0 -1125
  422. package/cjs/@types/common/index.d.ts +0 -117
  423. package/cjs/@types/common/with-schemas/index.d.ts +0 -117
  424. package/cjs/@types/index.d.ts +0 -18
  425. package/cjs/@types/indexes/index.d.ts +0 -1037
  426. package/cjs/@types/indexes/with-schemas/index.d.ts +0 -1183
  427. package/cjs/@types/mergeable-store/index.d.ts +0 -222
  428. package/cjs/@types/mergeable-store/with-schemas/index.d.ts +0 -509
  429. package/cjs/@types/metrics/index.d.ts +0 -895
  430. package/cjs/@types/metrics/with-schemas/index.d.ts +0 -982
  431. package/cjs/@types/persisters/index.d.ts +0 -1319
  432. package/cjs/@types/persisters/persister-automerge/index.d.ts +0 -162
  433. package/cjs/@types/persisters/persister-automerge/with-schemas/index.d.ts +0 -177
  434. package/cjs/@types/persisters/persister-browser/index.d.ts +0 -174
  435. package/cjs/@types/persisters/persister-browser/with-schemas/index.d.ts +0 -199
  436. package/cjs/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +0 -157
  437. package/cjs/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +0 -176
  438. package/cjs/@types/persisters/persister-electric-sql/index.d.ts +0 -183
  439. package/cjs/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +0 -202
  440. package/cjs/@types/persisters/persister-expo-sqlite/index.d.ts +0 -186
  441. package/cjs/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +0 -205
  442. package/cjs/@types/persisters/persister-expo-sqlite-next/index.d.ts +0 -187
  443. package/cjs/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.ts +0 -206
  444. package/cjs/@types/persisters/persister-file/index.d.ts +0 -88
  445. package/cjs/@types/persisters/persister-file/with-schemas/index.d.ts +0 -102
  446. package/cjs/@types/persisters/persister-indexed-db/index.d.ts +0 -116
  447. package/cjs/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +0 -131
  448. package/cjs/@types/persisters/persister-libsql/index.d.ts +0 -154
  449. package/cjs/@types/persisters/persister-libsql/with-schemas/index.d.ts +0 -173
  450. package/cjs/@types/persisters/persister-partykit-client/index.d.ts +0 -185
  451. package/cjs/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +0 -200
  452. package/cjs/@types/persisters/persister-partykit-server/index.d.ts +0 -631
  453. package/cjs/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +0 -673
  454. package/cjs/@types/persisters/persister-powersync/index.d.ts +0 -169
  455. package/cjs/@types/persisters/persister-powersync/with-schemas/index.d.ts +0 -188
  456. package/cjs/@types/persisters/persister-remote/index.d.ts +0 -113
  457. package/cjs/@types/persisters/persister-remote/with-schemas/index.d.ts +0 -129
  458. package/cjs/@types/persisters/persister-sqlite-wasm/index.d.ts +0 -170
  459. package/cjs/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +0 -190
  460. package/cjs/@types/persisters/persister-sqlite3/index.d.ts +0 -171
  461. package/cjs/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +0 -190
  462. package/cjs/@types/persisters/persister-yjs/index.d.ts +0 -157
  463. package/cjs/@types/persisters/persister-yjs/with-schemas/index.d.ts +0 -172
  464. package/cjs/@types/persisters/with-schemas/index.d.ts +0 -1393
  465. package/cjs/@types/queries/index.d.ts +0 -3640
  466. package/cjs/@types/queries/with-schemas/index.d.ts +0 -3961
  467. package/cjs/@types/relationships/index.d.ts +0 -1266
  468. package/cjs/@types/relationships/with-schemas/index.d.ts +0 -1420
  469. package/cjs/@types/store/index.d.ts +0 -7453
  470. package/cjs/@types/store/with-schemas/index.d.ts +0 -9131
  471. package/cjs/@types/synchronizers/index.d.ts +0 -139
  472. package/cjs/@types/synchronizers/synchronizer-local/index.d.ts +0 -27
  473. package/cjs/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +0 -29
  474. package/cjs/@types/synchronizers/synchronizer-ws-client/index.d.ts +0 -36
  475. package/cjs/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +0 -42
  476. package/cjs/@types/synchronizers/synchronizer-ws-server/index.d.ts +0 -58
  477. package/cjs/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +0 -58
  478. package/cjs/@types/synchronizers/with-schemas/index.d.ts +0 -156
  479. package/cjs/@types/tools/index.d.ts +0 -556
  480. package/cjs/@types/tools/with-schemas/index.d.ts +0 -567
  481. package/cjs/@types/ui-react/index.d.ts +0 -15318
  482. package/cjs/@types/ui-react/with-schemas/index.d.ts +0 -16235
  483. package/cjs/@types/ui-react-dom/index.d.ts +0 -1751
  484. package/cjs/@types/ui-react-dom/with-schemas/index.d.ts +0 -1883
  485. package/cjs/@types/ui-react-inspector/index.d.ts +0 -77
  486. package/cjs/@types/ui-react-inspector/with-schemas/index.d.ts +0 -1871
  487. package/cjs/@types/with-schemas/index.d.ts +0 -18
  488. package/cjs-es6/@types/_internal/queries/with-schemas/index.d.ts +0 -22
  489. package/cjs-es6/@types/_internal/store/index.d.ts +0 -3
  490. package/cjs-es6/@types/_internal/store/with-schemas/index.d.ts +0 -106
  491. package/cjs-es6/@types/_internal/ui-react/with-schemas/index.d.ts +0 -813
  492. package/cjs-es6/@types/checkpoints/index.d.ts +0 -1033
  493. package/cjs-es6/@types/checkpoints/with-schemas/index.d.ts +0 -1125
  494. package/cjs-es6/@types/index.d.ts +0 -18
  495. package/cjs-es6/@types/indexes/index.d.ts +0 -1037
  496. package/cjs-es6/@types/indexes/with-schemas/index.d.ts +0 -1183
  497. package/cjs-es6/@types/mergeable-store/index.d.ts +0 -222
  498. package/cjs-es6/@types/mergeable-store/with-schemas/index.d.ts +0 -509
  499. package/cjs-es6/@types/metrics/index.d.ts +0 -895
  500. package/cjs-es6/@types/metrics/with-schemas/index.d.ts +0 -982
  501. package/cjs-es6/@types/persisters/index.d.ts +0 -1319
  502. package/cjs-es6/@types/persisters/persister-automerge/index.d.ts +0 -162
  503. package/cjs-es6/@types/persisters/persister-automerge/with-schemas/index.d.ts +0 -177
  504. package/cjs-es6/@types/persisters/persister-browser/index.d.ts +0 -174
  505. package/cjs-es6/@types/persisters/persister-browser/with-schemas/index.d.ts +0 -199
  506. package/cjs-es6/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +0 -157
  507. package/cjs-es6/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +0 -176
  508. package/cjs-es6/@types/persisters/persister-electric-sql/index.d.ts +0 -183
  509. package/cjs-es6/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +0 -202
  510. package/cjs-es6/@types/persisters/persister-expo-sqlite/index.d.ts +0 -186
  511. package/cjs-es6/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +0 -205
  512. package/cjs-es6/@types/persisters/persister-expo-sqlite-next/index.d.ts +0 -187
  513. package/cjs-es6/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.ts +0 -206
  514. package/cjs-es6/@types/persisters/persister-file/index.d.ts +0 -88
  515. package/cjs-es6/@types/persisters/persister-file/with-schemas/index.d.ts +0 -102
  516. package/cjs-es6/@types/persisters/persister-indexed-db/index.d.ts +0 -116
  517. package/cjs-es6/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +0 -131
  518. package/cjs-es6/@types/persisters/persister-libsql/index.d.ts +0 -154
  519. package/cjs-es6/@types/persisters/persister-libsql/with-schemas/index.d.ts +0 -173
  520. package/cjs-es6/@types/persisters/persister-partykit-client/index.d.ts +0 -185
  521. package/cjs-es6/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +0 -200
  522. package/cjs-es6/@types/persisters/persister-partykit-server/index.d.ts +0 -631
  523. package/cjs-es6/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +0 -673
  524. package/cjs-es6/@types/persisters/persister-powersync/index.d.ts +0 -169
  525. package/cjs-es6/@types/persisters/persister-powersync/with-schemas/index.d.ts +0 -188
  526. package/cjs-es6/@types/persisters/persister-remote/index.d.ts +0 -113
  527. package/cjs-es6/@types/persisters/persister-remote/with-schemas/index.d.ts +0 -129
  528. package/cjs-es6/@types/persisters/persister-sqlite-wasm/index.d.ts +0 -170
  529. package/cjs-es6/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +0 -190
  530. package/cjs-es6/@types/persisters/persister-sqlite3/index.d.ts +0 -171
  531. package/cjs-es6/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +0 -190
  532. package/cjs-es6/@types/persisters/persister-yjs/index.d.ts +0 -157
  533. package/cjs-es6/@types/persisters/persister-yjs/with-schemas/index.d.ts +0 -172
  534. package/cjs-es6/@types/persisters/with-schemas/index.d.ts +0 -1393
  535. package/cjs-es6/@types/queries/index.d.ts +0 -3640
  536. package/cjs-es6/@types/queries/with-schemas/index.d.ts +0 -3961
  537. package/cjs-es6/@types/relationships/index.d.ts +0 -1266
  538. package/cjs-es6/@types/relationships/with-schemas/index.d.ts +0 -1420
  539. package/cjs-es6/@types/store/index.d.ts +0 -7453
  540. package/cjs-es6/@types/store/with-schemas/index.d.ts +0 -9131
  541. package/cjs-es6/@types/synchronizers/index.d.ts +0 -139
  542. package/cjs-es6/@types/synchronizers/synchronizer-local/index.d.ts +0 -27
  543. package/cjs-es6/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +0 -29
  544. package/cjs-es6/@types/synchronizers/synchronizer-ws-client/index.d.ts +0 -36
  545. package/cjs-es6/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +0 -42
  546. package/cjs-es6/@types/synchronizers/synchronizer-ws-server/index.d.ts +0 -58
  547. package/cjs-es6/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +0 -58
  548. package/cjs-es6/@types/synchronizers/with-schemas/index.d.ts +0 -156
  549. package/cjs-es6/@types/tools/index.d.ts +0 -556
  550. package/cjs-es6/@types/tools/with-schemas/index.d.ts +0 -567
  551. package/cjs-es6/@types/ui-react/index.d.ts +0 -15318
  552. package/cjs-es6/@types/ui-react/with-schemas/index.d.ts +0 -16235
  553. package/cjs-es6/@types/ui-react-dom/index.d.ts +0 -1751
  554. package/cjs-es6/@types/ui-react-dom/with-schemas/index.d.ts +0 -1883
  555. package/cjs-es6/@types/ui-react-inspector/index.d.ts +0 -77
  556. package/cjs-es6/@types/ui-react-inspector/with-schemas/index.d.ts +0 -1871
  557. package/cjs-es6/@types/with-schemas/index.d.ts +0 -18
  558. package/es6/@types/_internal/queries/index.d.ts +0 -0
  559. package/es6/@types/_internal/queries/with-schemas/index.d.ts +0 -22
  560. package/es6/@types/_internal/store/index.d.ts +0 -3
  561. package/es6/@types/_internal/store/with-schemas/index.d.ts +0 -106
  562. package/es6/@types/_internal/ui-react/index.d.ts +0 -0
  563. package/es6/@types/_internal/ui-react/with-schemas/index.d.ts +0 -813
  564. package/es6/@types/checkpoints/index.d.ts +0 -1033
  565. package/es6/@types/checkpoints/with-schemas/index.d.ts +0 -1125
  566. package/es6/@types/common/index.d.ts +0 -117
  567. package/es6/@types/common/with-schemas/index.d.ts +0 -117
  568. package/es6/@types/index.d.ts +0 -18
  569. package/es6/@types/indexes/index.d.ts +0 -1037
  570. package/es6/@types/indexes/with-schemas/index.d.ts +0 -1183
  571. package/es6/@types/mergeable-store/index.d.ts +0 -222
  572. package/es6/@types/mergeable-store/with-schemas/index.d.ts +0 -509
  573. package/es6/@types/metrics/index.d.ts +0 -895
  574. package/es6/@types/metrics/with-schemas/index.d.ts +0 -982
  575. package/es6/@types/persisters/index.d.ts +0 -1319
  576. package/es6/@types/persisters/persister-automerge/index.d.ts +0 -162
  577. package/es6/@types/persisters/persister-automerge/with-schemas/index.d.ts +0 -177
  578. package/es6/@types/persisters/persister-browser/index.d.ts +0 -174
  579. package/es6/@types/persisters/persister-browser/with-schemas/index.d.ts +0 -199
  580. package/es6/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +0 -157
  581. package/es6/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +0 -176
  582. package/es6/@types/persisters/persister-electric-sql/index.d.ts +0 -183
  583. package/es6/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +0 -202
  584. package/es6/@types/persisters/persister-expo-sqlite/index.d.ts +0 -186
  585. package/es6/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +0 -205
  586. package/es6/@types/persisters/persister-expo-sqlite-next/index.d.ts +0 -187
  587. package/es6/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.ts +0 -206
  588. package/es6/@types/persisters/persister-file/index.d.ts +0 -88
  589. package/es6/@types/persisters/persister-file/with-schemas/index.d.ts +0 -102
  590. package/es6/@types/persisters/persister-indexed-db/index.d.ts +0 -116
  591. package/es6/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +0 -131
  592. package/es6/@types/persisters/persister-libsql/index.d.ts +0 -154
  593. package/es6/@types/persisters/persister-libsql/with-schemas/index.d.ts +0 -173
  594. package/es6/@types/persisters/persister-partykit-client/index.d.ts +0 -185
  595. package/es6/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +0 -200
  596. package/es6/@types/persisters/persister-partykit-server/index.d.ts +0 -631
  597. package/es6/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +0 -673
  598. package/es6/@types/persisters/persister-powersync/index.d.ts +0 -169
  599. package/es6/@types/persisters/persister-powersync/with-schemas/index.d.ts +0 -188
  600. package/es6/@types/persisters/persister-remote/index.d.ts +0 -113
  601. package/es6/@types/persisters/persister-remote/with-schemas/index.d.ts +0 -129
  602. package/es6/@types/persisters/persister-sqlite-wasm/index.d.ts +0 -170
  603. package/es6/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +0 -190
  604. package/es6/@types/persisters/persister-sqlite3/index.d.ts +0 -171
  605. package/es6/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +0 -190
  606. package/es6/@types/persisters/persister-yjs/index.d.ts +0 -157
  607. package/es6/@types/persisters/persister-yjs/with-schemas/index.d.ts +0 -172
  608. package/es6/@types/persisters/with-schemas/index.d.ts +0 -1393
  609. package/es6/@types/queries/index.d.ts +0 -3640
  610. package/es6/@types/queries/with-schemas/index.d.ts +0 -3961
  611. package/es6/@types/relationships/index.d.ts +0 -1266
  612. package/es6/@types/relationships/with-schemas/index.d.ts +0 -1420
  613. package/es6/@types/store/index.d.ts +0 -7453
  614. package/es6/@types/store/with-schemas/index.d.ts +0 -9131
  615. package/es6/@types/synchronizers/index.d.ts +0 -139
  616. package/es6/@types/synchronizers/synchronizer-local/index.d.ts +0 -27
  617. package/es6/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +0 -29
  618. package/es6/@types/synchronizers/synchronizer-ws-client/index.d.ts +0 -36
  619. package/es6/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +0 -42
  620. package/es6/@types/synchronizers/synchronizer-ws-server/index.d.ts +0 -58
  621. package/es6/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +0 -58
  622. package/es6/@types/synchronizers/with-schemas/index.d.ts +0 -156
  623. package/es6/@types/tools/index.d.ts +0 -556
  624. package/es6/@types/tools/with-schemas/index.d.ts +0 -567
  625. package/es6/@types/ui-react/index.d.ts +0 -15318
  626. package/es6/@types/ui-react/with-schemas/index.d.ts +0 -16235
  627. package/es6/@types/ui-react-dom/index.d.ts +0 -1751
  628. package/es6/@types/ui-react-dom/with-schemas/index.d.ts +0 -1883
  629. package/es6/@types/ui-react-inspector/index.d.ts +0 -77
  630. package/es6/@types/ui-react-inspector/with-schemas/index.d.ts +0 -1871
  631. package/es6/@types/with-schemas/index.d.ts +0 -18
  632. package/umd/@types/_internal/queries/index.d.ts +0 -0
  633. package/umd/@types/_internal/queries/with-schemas/index.d.ts +0 -22
  634. package/umd/@types/_internal/store/index.d.ts +0 -3
  635. package/umd/@types/_internal/store/with-schemas/index.d.ts +0 -106
  636. package/umd/@types/_internal/ui-react/index.d.ts +0 -0
  637. package/umd/@types/_internal/ui-react/with-schemas/index.d.ts +0 -813
  638. package/umd/@types/checkpoints/index.d.ts +0 -1033
  639. package/umd/@types/checkpoints/with-schemas/index.d.ts +0 -1125
  640. package/umd/@types/common/index.d.ts +0 -117
  641. package/umd/@types/common/with-schemas/index.d.ts +0 -117
  642. package/umd/@types/index.d.ts +0 -18
  643. package/umd/@types/indexes/index.d.ts +0 -1037
  644. package/umd/@types/indexes/with-schemas/index.d.ts +0 -1183
  645. package/umd/@types/mergeable-store/index.d.ts +0 -222
  646. package/umd/@types/mergeable-store/with-schemas/index.d.ts +0 -509
  647. package/umd/@types/metrics/index.d.ts +0 -895
  648. package/umd/@types/metrics/with-schemas/index.d.ts +0 -982
  649. package/umd/@types/persisters/index.d.ts +0 -1319
  650. package/umd/@types/persisters/persister-automerge/index.d.ts +0 -162
  651. package/umd/@types/persisters/persister-automerge/with-schemas/index.d.ts +0 -177
  652. package/umd/@types/persisters/persister-browser/index.d.ts +0 -174
  653. package/umd/@types/persisters/persister-browser/with-schemas/index.d.ts +0 -199
  654. package/umd/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +0 -157
  655. package/umd/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +0 -176
  656. package/umd/@types/persisters/persister-electric-sql/index.d.ts +0 -183
  657. package/umd/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +0 -202
  658. package/umd/@types/persisters/persister-expo-sqlite/index.d.ts +0 -186
  659. package/umd/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +0 -205
  660. package/umd/@types/persisters/persister-expo-sqlite-next/index.d.ts +0 -187
  661. package/umd/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.ts +0 -206
  662. package/umd/@types/persisters/persister-file/index.d.ts +0 -88
  663. package/umd/@types/persisters/persister-file/with-schemas/index.d.ts +0 -102
  664. package/umd/@types/persisters/persister-indexed-db/index.d.ts +0 -116
  665. package/umd/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +0 -131
  666. package/umd/@types/persisters/persister-libsql/index.d.ts +0 -154
  667. package/umd/@types/persisters/persister-libsql/with-schemas/index.d.ts +0 -173
  668. package/umd/@types/persisters/persister-partykit-client/index.d.ts +0 -185
  669. package/umd/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +0 -200
  670. package/umd/@types/persisters/persister-partykit-server/index.d.ts +0 -631
  671. package/umd/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +0 -673
  672. package/umd/@types/persisters/persister-powersync/index.d.ts +0 -169
  673. package/umd/@types/persisters/persister-powersync/with-schemas/index.d.ts +0 -188
  674. package/umd/@types/persisters/persister-remote/index.d.ts +0 -113
  675. package/umd/@types/persisters/persister-remote/with-schemas/index.d.ts +0 -129
  676. package/umd/@types/persisters/persister-sqlite-wasm/index.d.ts +0 -170
  677. package/umd/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +0 -190
  678. package/umd/@types/persisters/persister-sqlite3/index.d.ts +0 -171
  679. package/umd/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +0 -190
  680. package/umd/@types/persisters/persister-yjs/index.d.ts +0 -157
  681. package/umd/@types/persisters/persister-yjs/with-schemas/index.d.ts +0 -172
  682. package/umd/@types/persisters/with-schemas/index.d.ts +0 -1393
  683. package/umd/@types/queries/index.d.ts +0 -3640
  684. package/umd/@types/queries/with-schemas/index.d.ts +0 -3961
  685. package/umd/@types/relationships/index.d.ts +0 -1266
  686. package/umd/@types/relationships/with-schemas/index.d.ts +0 -1420
  687. package/umd/@types/store/index.d.ts +0 -7453
  688. package/umd/@types/store/with-schemas/index.d.ts +0 -9131
  689. package/umd/@types/synchronizers/index.d.ts +0 -139
  690. package/umd/@types/synchronizers/synchronizer-local/index.d.ts +0 -27
  691. package/umd/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +0 -29
  692. package/umd/@types/synchronizers/synchronizer-ws-client/index.d.ts +0 -36
  693. package/umd/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +0 -42
  694. package/umd/@types/synchronizers/synchronizer-ws-server/index.d.ts +0 -58
  695. package/umd/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +0 -58
  696. package/umd/@types/synchronizers/with-schemas/index.d.ts +0 -156
  697. package/umd/@types/tools/index.d.ts +0 -556
  698. package/umd/@types/tools/with-schemas/index.d.ts +0 -567
  699. package/umd/@types/ui-react/index.d.ts +0 -15318
  700. package/umd/@types/ui-react/with-schemas/index.d.ts +0 -16235
  701. package/umd/@types/ui-react-dom/index.d.ts +0 -1751
  702. package/umd/@types/ui-react-dom/with-schemas/index.d.ts +0 -1883
  703. package/umd/@types/ui-react-inspector/index.d.ts +0 -77
  704. package/umd/@types/ui-react-inspector/with-schemas/index.d.ts +0 -1871
  705. package/umd/@types/with-schemas/index.d.ts +0 -18
  706. package/umd-es6/@types/_internal/queries/index.d.ts +0 -0
  707. package/umd-es6/@types/_internal/queries/with-schemas/index.d.ts +0 -22
  708. package/umd-es6/@types/_internal/store/index.d.ts +0 -3
  709. package/umd-es6/@types/_internal/store/with-schemas/index.d.ts +0 -106
  710. package/umd-es6/@types/_internal/ui-react/index.d.ts +0 -0
  711. package/umd-es6/@types/_internal/ui-react/with-schemas/index.d.ts +0 -813
  712. package/umd-es6/@types/checkpoints/index.d.ts +0 -1033
  713. package/umd-es6/@types/checkpoints/with-schemas/index.d.ts +0 -1125
  714. package/umd-es6/@types/common/index.d.ts +0 -117
  715. package/umd-es6/@types/common/with-schemas/index.d.ts +0 -117
  716. package/umd-es6/@types/index.d.ts +0 -18
  717. package/umd-es6/@types/indexes/index.d.ts +0 -1037
  718. package/umd-es6/@types/indexes/with-schemas/index.d.ts +0 -1183
  719. package/umd-es6/@types/mergeable-store/index.d.ts +0 -222
  720. package/umd-es6/@types/mergeable-store/with-schemas/index.d.ts +0 -509
  721. package/umd-es6/@types/metrics/index.d.ts +0 -895
  722. package/umd-es6/@types/metrics/with-schemas/index.d.ts +0 -982
  723. package/umd-es6/@types/persisters/index.d.ts +0 -1319
  724. package/umd-es6/@types/persisters/persister-automerge/index.d.ts +0 -162
  725. package/umd-es6/@types/persisters/persister-automerge/with-schemas/index.d.ts +0 -177
  726. package/umd-es6/@types/persisters/persister-browser/index.d.ts +0 -174
  727. package/umd-es6/@types/persisters/persister-browser/with-schemas/index.d.ts +0 -199
  728. package/umd-es6/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +0 -157
  729. package/umd-es6/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +0 -176
  730. package/umd-es6/@types/persisters/persister-electric-sql/index.d.ts +0 -183
  731. package/umd-es6/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +0 -202
  732. package/umd-es6/@types/persisters/persister-expo-sqlite/index.d.ts +0 -186
  733. package/umd-es6/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +0 -205
  734. package/umd-es6/@types/persisters/persister-expo-sqlite-next/index.d.ts +0 -187
  735. package/umd-es6/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.ts +0 -206
  736. package/umd-es6/@types/persisters/persister-file/index.d.ts +0 -88
  737. package/umd-es6/@types/persisters/persister-file/with-schemas/index.d.ts +0 -102
  738. package/umd-es6/@types/persisters/persister-indexed-db/index.d.ts +0 -116
  739. package/umd-es6/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +0 -131
  740. package/umd-es6/@types/persisters/persister-libsql/index.d.ts +0 -154
  741. package/umd-es6/@types/persisters/persister-libsql/with-schemas/index.d.ts +0 -173
  742. package/umd-es6/@types/persisters/persister-partykit-client/index.d.ts +0 -185
  743. package/umd-es6/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +0 -200
  744. package/umd-es6/@types/persisters/persister-partykit-server/index.d.ts +0 -631
  745. package/umd-es6/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +0 -673
  746. package/umd-es6/@types/persisters/persister-powersync/index.d.ts +0 -169
  747. package/umd-es6/@types/persisters/persister-powersync/with-schemas/index.d.ts +0 -188
  748. package/umd-es6/@types/persisters/persister-remote/index.d.ts +0 -113
  749. package/umd-es6/@types/persisters/persister-remote/with-schemas/index.d.ts +0 -129
  750. package/umd-es6/@types/persisters/persister-sqlite-wasm/index.d.ts +0 -170
  751. package/umd-es6/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +0 -190
  752. package/umd-es6/@types/persisters/persister-sqlite3/index.d.ts +0 -171
  753. package/umd-es6/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +0 -190
  754. package/umd-es6/@types/persisters/persister-yjs/index.d.ts +0 -157
  755. package/umd-es6/@types/persisters/persister-yjs/with-schemas/index.d.ts +0 -172
  756. package/umd-es6/@types/persisters/with-schemas/index.d.ts +0 -1393
  757. package/umd-es6/@types/queries/index.d.ts +0 -3640
  758. package/umd-es6/@types/queries/with-schemas/index.d.ts +0 -3961
  759. package/umd-es6/@types/relationships/index.d.ts +0 -1266
  760. package/umd-es6/@types/relationships/with-schemas/index.d.ts +0 -1420
  761. package/umd-es6/@types/store/index.d.ts +0 -7453
  762. package/umd-es6/@types/store/with-schemas/index.d.ts +0 -9131
  763. package/umd-es6/@types/synchronizers/index.d.ts +0 -139
  764. package/umd-es6/@types/synchronizers/synchronizer-local/index.d.ts +0 -27
  765. package/umd-es6/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +0 -29
  766. package/umd-es6/@types/synchronizers/synchronizer-ws-client/index.d.ts +0 -36
  767. package/umd-es6/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +0 -42
  768. package/umd-es6/@types/synchronizers/synchronizer-ws-server/index.d.ts +0 -58
  769. package/umd-es6/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +0 -58
  770. package/umd-es6/@types/synchronizers/with-schemas/index.d.ts +0 -156
  771. package/umd-es6/@types/tools/index.d.ts +0 -556
  772. package/umd-es6/@types/tools/with-schemas/index.d.ts +0 -567
  773. package/umd-es6/@types/ui-react/index.d.ts +0 -15318
  774. package/umd-es6/@types/ui-react/with-schemas/index.d.ts +0 -16235
  775. package/umd-es6/@types/ui-react-dom/index.d.ts +0 -1751
  776. package/umd-es6/@types/ui-react-dom/with-schemas/index.d.ts +0 -1883
  777. package/umd-es6/@types/ui-react-inspector/index.d.ts +0 -77
  778. package/umd-es6/@types/ui-react-inspector/with-schemas/index.d.ts +0 -1871
  779. package/umd-es6/@types/with-schemas/index.d.ts +0 -18
  780. /package/{cjs-es6/@types/_internal/queries/index.d.ts → @types/_internal/queries/index.d.cts} +0 -0
  781. /package/{cjs-es6/@types/_internal/ui-react/index.d.ts → @types/_internal/ui-react/index.d.cts} +0 -0
  782. /package/{cjs-es6/@types/common/index.d.ts → @types/common/index.d.cts} +0 -0
  783. /package/{cjs-es6/@types/common/with-schemas/index.d.ts → @types/common/with-schemas/index.d.cts} +0 -0
  784. /package/{cjs-es6 → cjs/es6}/checkpoints/index.cjs +0 -0
  785. /package/{cjs-es6 → cjs/es6}/checkpoints/index.cjs.gz +0 -0
  786. /package/{cjs-es6 → cjs/es6}/checkpoints/with-schemas/index.cjs +0 -0
  787. /package/{cjs-es6 → cjs/es6}/common/index.cjs +0 -0
  788. /package/{cjs-es6 → cjs/es6}/common/index.cjs.gz +0 -0
  789. /package/{cjs-es6 → cjs/es6}/common/with-schemas/index.cjs +0 -0
  790. /package/{cjs-es6 → cjs/es6}/index.cjs +0 -0
  791. /package/{cjs-es6 → cjs/es6}/index.cjs.gz +0 -0
  792. /package/{cjs-es6 → cjs/es6}/indexes/index.cjs +0 -0
  793. /package/{cjs-es6 → cjs/es6}/indexes/index.cjs.gz +0 -0
  794. /package/{cjs-es6 → cjs/es6}/indexes/with-schemas/index.cjs +0 -0
  795. /package/{cjs-es6 → cjs/es6}/mergeable-store/index.cjs +0 -0
  796. /package/{cjs-es6 → cjs/es6}/mergeable-store/index.cjs.gz +0 -0
  797. /package/{cjs-es6 → cjs/es6}/mergeable-store/with-schemas/index.cjs +0 -0
  798. /package/{cjs-es6 → cjs/es6}/metrics/index.cjs +0 -0
  799. /package/{cjs-es6 → cjs/es6}/metrics/index.cjs.gz +0 -0
  800. /package/{cjs-es6 → cjs/es6}/metrics/with-schemas/index.cjs +0 -0
  801. /package/{cjs-es6 → cjs/es6}/persisters/index.cjs +0 -0
  802. /package/{cjs-es6 → cjs/es6}/persisters/index.cjs.gz +0 -0
  803. /package/{cjs-es6 → cjs/es6}/persisters/persister-automerge/index.cjs +0 -0
  804. /package/{cjs-es6 → cjs/es6}/persisters/persister-automerge/index.cjs.gz +0 -0
  805. /package/{cjs-es6 → cjs/es6}/persisters/persister-automerge/with-schemas/index.cjs +0 -0
  806. /package/{cjs-es6 → cjs/es6}/persisters/persister-browser/index.cjs +0 -0
  807. /package/{cjs-es6 → cjs/es6}/persisters/persister-browser/index.cjs.gz +0 -0
  808. /package/{cjs-es6 → cjs/es6}/persisters/persister-browser/with-schemas/index.cjs +0 -0
  809. /package/{cjs-es6 → cjs/es6}/persisters/persister-cr-sqlite-wasm/index.cjs +0 -0
  810. /package/{cjs-es6 → cjs/es6}/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  811. /package/{cjs-es6 → cjs/es6}/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +0 -0
  812. /package/{cjs-es6 → cjs/es6}/persisters/persister-electric-sql/index.cjs +0 -0
  813. /package/{cjs-es6 → cjs/es6}/persisters/persister-electric-sql/index.cjs.gz +0 -0
  814. /package/{cjs-es6 → cjs/es6}/persisters/persister-electric-sql/with-schemas/index.cjs +0 -0
  815. /package/{cjs-es6 → cjs/es6}/persisters/persister-expo-sqlite/index.cjs +0 -0
  816. /package/{cjs-es6 → cjs/es6}/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  817. /package/{cjs-es6 → cjs/es6}/persisters/persister-expo-sqlite/with-schemas/index.cjs +0 -0
  818. /package/{cjs-es6 → cjs/es6}/persisters/persister-expo-sqlite-next/index.cjs +0 -0
  819. /package/{cjs-es6 → cjs/es6}/persisters/persister-expo-sqlite-next/index.cjs.gz +0 -0
  820. /package/{cjs-es6 → cjs/es6}/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +0 -0
  821. /package/{cjs-es6 → cjs/es6}/persisters/persister-file/index.cjs +0 -0
  822. /package/{cjs-es6 → cjs/es6}/persisters/persister-file/index.cjs.gz +0 -0
  823. /package/{cjs-es6 → cjs/es6}/persisters/persister-file/with-schemas/index.cjs +0 -0
  824. /package/{cjs-es6 → cjs/es6}/persisters/persister-indexed-db/index.cjs +0 -0
  825. /package/{cjs-es6 → cjs/es6}/persisters/persister-indexed-db/index.cjs.gz +0 -0
  826. /package/{cjs-es6 → cjs/es6}/persisters/persister-indexed-db/with-schemas/index.cjs +0 -0
  827. /package/{cjs-es6 → cjs/es6}/persisters/persister-libsql/index.cjs +0 -0
  828. /package/{cjs-es6 → cjs/es6}/persisters/persister-libsql/index.cjs.gz +0 -0
  829. /package/{cjs-es6 → cjs/es6}/persisters/persister-libsql/with-schemas/index.cjs +0 -0
  830. /package/{cjs-es6 → cjs/es6}/persisters/persister-partykit-client/index.cjs +0 -0
  831. /package/{cjs-es6 → cjs/es6}/persisters/persister-partykit-client/index.cjs.gz +0 -0
  832. /package/{cjs-es6 → cjs/es6}/persisters/persister-partykit-client/with-schemas/index.cjs +0 -0
  833. /package/{cjs-es6 → cjs/es6}/persisters/persister-partykit-server/index.cjs +0 -0
  834. /package/{cjs-es6 → cjs/es6}/persisters/persister-partykit-server/index.cjs.gz +0 -0
  835. /package/{cjs-es6 → cjs/es6}/persisters/persister-partykit-server/with-schemas/index.cjs +0 -0
  836. /package/{cjs-es6 → cjs/es6}/persisters/persister-powersync/index.cjs +0 -0
  837. /package/{cjs-es6 → cjs/es6}/persisters/persister-powersync/index.cjs.gz +0 -0
  838. /package/{cjs-es6 → cjs/es6}/persisters/persister-powersync/with-schemas/index.cjs +0 -0
  839. /package/{cjs-es6 → cjs/es6}/persisters/persister-remote/index.cjs +0 -0
  840. /package/{cjs-es6 → cjs/es6}/persisters/persister-remote/index.cjs.gz +0 -0
  841. /package/{cjs-es6 → cjs/es6}/persisters/persister-remote/with-schemas/index.cjs +0 -0
  842. /package/{cjs-es6 → cjs/es6}/persisters/persister-sqlite-wasm/index.cjs +0 -0
  843. /package/{cjs-es6 → cjs/es6}/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  844. /package/{cjs-es6 → cjs/es6}/persisters/persister-sqlite-wasm/with-schemas/index.cjs +0 -0
  845. /package/{cjs-es6 → cjs/es6}/persisters/persister-sqlite3/index.cjs +0 -0
  846. /package/{cjs-es6 → cjs/es6}/persisters/persister-sqlite3/index.cjs.gz +0 -0
  847. /package/{cjs-es6 → cjs/es6}/persisters/persister-sqlite3/with-schemas/index.cjs +0 -0
  848. /package/{cjs-es6 → cjs/es6}/persisters/persister-yjs/index.cjs +0 -0
  849. /package/{cjs-es6 → cjs/es6}/persisters/persister-yjs/index.cjs.gz +0 -0
  850. /package/{cjs-es6 → cjs/es6}/persisters/persister-yjs/with-schemas/index.cjs +0 -0
  851. /package/{cjs-es6 → cjs/es6}/persisters/with-schemas/index.cjs +0 -0
  852. /package/{cjs-es6 → cjs/es6}/queries/index.cjs +0 -0
  853. /package/{cjs-es6 → cjs/es6}/queries/index.cjs.gz +0 -0
  854. /package/{cjs-es6 → cjs/es6}/queries/with-schemas/index.cjs +0 -0
  855. /package/{cjs-es6 → cjs/es6}/relationships/index.cjs +0 -0
  856. /package/{cjs-es6 → cjs/es6}/relationships/index.cjs.gz +0 -0
  857. /package/{cjs-es6 → cjs/es6}/relationships/with-schemas/index.cjs +0 -0
  858. /package/{cjs-es6 → cjs/es6}/store/index.cjs +0 -0
  859. /package/{cjs-es6 → cjs/es6}/store/index.cjs.gz +0 -0
  860. /package/{cjs-es6 → cjs/es6}/store/with-schemas/index.cjs +0 -0
  861. /package/{cjs-es6 → cjs/es6}/synchronizers/index.cjs +0 -0
  862. /package/{cjs-es6 → cjs/es6}/synchronizers/index.cjs.gz +0 -0
  863. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-local/index.cjs +0 -0
  864. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  865. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-local/with-schemas/index.cjs +0 -0
  866. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-ws-client/index.cjs +0 -0
  867. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  868. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +0 -0
  869. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-ws-server/index.cjs +0 -0
  870. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  871. /package/{cjs-es6 → cjs/es6}/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +0 -0
  872. /package/{cjs-es6 → cjs/es6}/synchronizers/with-schemas/index.cjs +0 -0
  873. /package/{cjs-es6 → cjs/es6}/tools/index.cjs +0 -0
  874. /package/{cjs-es6 → cjs/es6}/tools/index.cjs.gz +0 -0
  875. /package/{cjs-es6 → cjs/es6}/tools/with-schemas/index.cjs +0 -0
  876. /package/{cjs-es6 → cjs/es6}/ui-react/index.cjs +0 -0
  877. /package/{cjs-es6 → cjs/es6}/ui-react/index.cjs.gz +0 -0
  878. /package/{cjs-es6 → cjs/es6}/ui-react/with-schemas/index.cjs +0 -0
  879. /package/{cjs-es6 → cjs/es6}/ui-react-dom/index.cjs +0 -0
  880. /package/{cjs-es6 → cjs/es6}/ui-react-dom/index.cjs.gz +0 -0
  881. /package/{cjs-es6 → cjs/es6}/ui-react-dom/with-schemas/index.cjs +0 -0
  882. /package/{cjs-es6 → cjs/es6}/ui-react-inspector/index.cjs +0 -0
  883. /package/{cjs-es6 → cjs/es6}/ui-react-inspector/index.cjs.gz +0 -0
  884. /package/{cjs-es6 → cjs/es6}/ui-react-inspector/with-schemas/index.cjs +0 -0
  885. /package/{cjs-es6 → cjs/es6}/with-schemas/index.cjs +0 -0
  886. /package/{umd-es6 → umd/es6}/checkpoints/index.js +0 -0
  887. /package/{umd-es6 → umd/es6}/checkpoints/index.js.gz +0 -0
  888. /package/{umd-es6 → umd/es6}/checkpoints/with-schemas/index.js +0 -0
  889. /package/{umd-es6 → umd/es6}/common/index.js +0 -0
  890. /package/{umd-es6 → umd/es6}/common/index.js.gz +0 -0
  891. /package/{umd-es6 → umd/es6}/common/with-schemas/index.js +0 -0
  892. /package/{umd-es6 → umd/es6}/index.js +0 -0
  893. /package/{umd-es6 → umd/es6}/index.js.gz +0 -0
  894. /package/{umd-es6 → umd/es6}/indexes/index.js +0 -0
  895. /package/{umd-es6 → umd/es6}/indexes/index.js.gz +0 -0
  896. /package/{umd-es6 → umd/es6}/indexes/with-schemas/index.js +0 -0
  897. /package/{umd-es6 → umd/es6}/mergeable-store/index.js +0 -0
  898. /package/{umd-es6 → umd/es6}/mergeable-store/index.js.gz +0 -0
  899. /package/{umd-es6 → umd/es6}/mergeable-store/with-schemas/index.js +0 -0
  900. /package/{umd-es6 → umd/es6}/metrics/index.js +0 -0
  901. /package/{umd-es6 → umd/es6}/metrics/index.js.gz +0 -0
  902. /package/{umd-es6 → umd/es6}/metrics/with-schemas/index.js +0 -0
  903. /package/{umd-es6 → umd/es6}/persisters/index.js +0 -0
  904. /package/{umd-es6 → umd/es6}/persisters/index.js.gz +0 -0
  905. /package/{umd-es6 → umd/es6}/persisters/persister-automerge/index.js +0 -0
  906. /package/{umd-es6 → umd/es6}/persisters/persister-automerge/index.js.gz +0 -0
  907. /package/{umd-es6 → umd/es6}/persisters/persister-automerge/with-schemas/index.js +0 -0
  908. /package/{umd-es6 → umd/es6}/persisters/persister-browser/index.js +0 -0
  909. /package/{umd-es6 → umd/es6}/persisters/persister-browser/index.js.gz +0 -0
  910. /package/{umd-es6 → umd/es6}/persisters/persister-browser/with-schemas/index.js +0 -0
  911. /package/{umd-es6 → umd/es6}/persisters/persister-cr-sqlite-wasm/index.js +0 -0
  912. /package/{umd-es6 → umd/es6}/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  913. /package/{umd-es6 → umd/es6}/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +0 -0
  914. /package/{umd-es6 → umd/es6}/persisters/persister-electric-sql/index.js +0 -0
  915. /package/{umd-es6 → umd/es6}/persisters/persister-electric-sql/index.js.gz +0 -0
  916. /package/{umd-es6 → umd/es6}/persisters/persister-electric-sql/with-schemas/index.js +0 -0
  917. /package/{umd-es6 → umd/es6}/persisters/persister-expo-sqlite/index.js +0 -0
  918. /package/{umd-es6 → umd/es6}/persisters/persister-expo-sqlite/index.js.gz +0 -0
  919. /package/{umd-es6 → umd/es6}/persisters/persister-expo-sqlite/with-schemas/index.js +0 -0
  920. /package/{umd-es6 → umd/es6}/persisters/persister-expo-sqlite-next/index.js +0 -0
  921. /package/{umd-es6 → umd/es6}/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  922. /package/{umd-es6 → umd/es6}/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -0
  923. /package/{umd-es6 → umd/es6}/persisters/persister-file/index.js +0 -0
  924. /package/{umd-es6 → umd/es6}/persisters/persister-file/index.js.gz +0 -0
  925. /package/{umd-es6 → umd/es6}/persisters/persister-file/with-schemas/index.js +0 -0
  926. /package/{umd-es6 → umd/es6}/persisters/persister-indexed-db/index.js +0 -0
  927. /package/{umd-es6 → umd/es6}/persisters/persister-indexed-db/index.js.gz +0 -0
  928. /package/{umd-es6 → umd/es6}/persisters/persister-indexed-db/with-schemas/index.js +0 -0
  929. /package/{umd-es6 → umd/es6}/persisters/persister-libsql/index.js +0 -0
  930. /package/{umd-es6 → umd/es6}/persisters/persister-libsql/index.js.gz +0 -0
  931. /package/{umd-es6 → umd/es6}/persisters/persister-libsql/with-schemas/index.js +0 -0
  932. /package/{umd-es6 → umd/es6}/persisters/persister-partykit-client/index.js +0 -0
  933. /package/{umd-es6 → umd/es6}/persisters/persister-partykit-client/index.js.gz +0 -0
  934. /package/{umd-es6 → umd/es6}/persisters/persister-partykit-client/with-schemas/index.js +0 -0
  935. /package/{umd-es6 → umd/es6}/persisters/persister-partykit-server/index.js +0 -0
  936. /package/{umd-es6 → umd/es6}/persisters/persister-partykit-server/index.js.gz +0 -0
  937. /package/{umd-es6 → umd/es6}/persisters/persister-partykit-server/with-schemas/index.js +0 -0
  938. /package/{umd-es6 → umd/es6}/persisters/persister-powersync/index.js +0 -0
  939. /package/{umd-es6 → umd/es6}/persisters/persister-powersync/index.js.gz +0 -0
  940. /package/{umd-es6 → umd/es6}/persisters/persister-powersync/with-schemas/index.js +0 -0
  941. /package/{umd-es6 → umd/es6}/persisters/persister-remote/index.js +0 -0
  942. /package/{umd-es6 → umd/es6}/persisters/persister-remote/index.js.gz +0 -0
  943. /package/{umd-es6 → umd/es6}/persisters/persister-remote/with-schemas/index.js +0 -0
  944. /package/{umd-es6 → umd/es6}/persisters/persister-sqlite-wasm/index.js +0 -0
  945. /package/{umd-es6 → umd/es6}/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  946. /package/{umd-es6 → umd/es6}/persisters/persister-sqlite-wasm/with-schemas/index.js +0 -0
  947. /package/{umd-es6 → umd/es6}/persisters/persister-sqlite3/index.js +0 -0
  948. /package/{umd-es6 → umd/es6}/persisters/persister-sqlite3/index.js.gz +0 -0
  949. /package/{umd-es6 → umd/es6}/persisters/persister-sqlite3/with-schemas/index.js +0 -0
  950. /package/{umd-es6 → umd/es6}/persisters/persister-yjs/index.js +0 -0
  951. /package/{umd-es6 → umd/es6}/persisters/persister-yjs/index.js.gz +0 -0
  952. /package/{umd-es6 → umd/es6}/persisters/persister-yjs/with-schemas/index.js +0 -0
  953. /package/{umd-es6 → umd/es6}/persisters/with-schemas/index.js +0 -0
  954. /package/{umd-es6 → umd/es6}/queries/index.js +0 -0
  955. /package/{umd-es6 → umd/es6}/queries/index.js.gz +0 -0
  956. /package/{umd-es6 → umd/es6}/queries/with-schemas/index.js +0 -0
  957. /package/{umd-es6 → umd/es6}/relationships/index.js +0 -0
  958. /package/{umd-es6 → umd/es6}/relationships/index.js.gz +0 -0
  959. /package/{umd-es6 → umd/es6}/relationships/with-schemas/index.js +0 -0
  960. /package/{umd-es6 → umd/es6}/store/index.js +0 -0
  961. /package/{umd-es6 → umd/es6}/store/index.js.gz +0 -0
  962. /package/{umd-es6 → umd/es6}/store/with-schemas/index.js +0 -0
  963. /package/{umd-es6 → umd/es6}/synchronizers/index.js +0 -0
  964. /package/{umd-es6 → umd/es6}/synchronizers/index.js.gz +0 -0
  965. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-local/index.js +0 -0
  966. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-local/index.js.gz +0 -0
  967. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-local/with-schemas/index.js +0 -0
  968. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-ws-client/index.js +0 -0
  969. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  970. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-ws-client/with-schemas/index.js +0 -0
  971. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-ws-server/index.js +0 -0
  972. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  973. /package/{umd-es6 → umd/es6}/synchronizers/synchronizer-ws-server/with-schemas/index.js +0 -0
  974. /package/{umd-es6 → umd/es6}/synchronizers/with-schemas/index.js +0 -0
  975. /package/{umd-es6 → umd/es6}/tools/index.js +0 -0
  976. /package/{umd-es6 → umd/es6}/tools/index.js.gz +0 -0
  977. /package/{umd-es6 → umd/es6}/tools/with-schemas/index.js +0 -0
  978. /package/{umd-es6 → umd/es6}/ui-react/index.js +0 -0
  979. /package/{umd-es6 → umd/es6}/ui-react/index.js.gz +0 -0
  980. /package/{umd-es6 → umd/es6}/ui-react/with-schemas/index.js +0 -0
  981. /package/{umd-es6 → umd/es6}/ui-react-dom/index.js +0 -0
  982. /package/{umd-es6 → umd/es6}/ui-react-dom/index.js.gz +0 -0
  983. /package/{umd-es6 → umd/es6}/ui-react-dom/with-schemas/index.js +0 -0
  984. /package/{umd-es6 → umd/es6}/ui-react-inspector/index.js +0 -0
  985. /package/{umd-es6 → umd/es6}/ui-react-inspector/index.js.gz +0 -0
  986. /package/{umd-es6 → umd/es6}/ui-react-inspector/with-schemas/index.js +0 -0
  987. /package/{umd-es6 → umd/es6}/with-schemas/index.js +0 -0
@@ -0,0 +1,1183 @@
1
+ /**
2
+ * The indexes module of the TinyBase project provides the ability to create and
3
+ * track indexes of the data in Store objects.
4
+ *
5
+ * The main entry point to this module is the createIndexes function, which
6
+ * returns a new Indexes object. From there, you can create new Index
7
+ * definitions, access the contents of those Indexes directly, and register
8
+ * listeners for when they change.
9
+ * @packageDocumentation
10
+ * @module indexes
11
+ */
12
+
13
+ import type {
14
+ CellIdFromSchema,
15
+ TableIdFromSchema,
16
+ } from '../../_internal/store/with-schemas/index.d.cts';
17
+ import type {
18
+ GetCell,
19
+ OptionalSchemas,
20
+ OptionalTablesSchema,
21
+ RowCallback,
22
+ Store,
23
+ } from '../../store/with-schemas/index.d.cts';
24
+ import type {
25
+ Id,
26
+ IdOrNull,
27
+ Ids,
28
+ SortKey,
29
+ } from '../../common/with-schemas/index.d.cts';
30
+
31
+ /**
32
+ * The Index type represents the concept of a map of Slice objects, keyed by Id.
33
+ *
34
+ * The Ids in a Slice represent Row objects from a Table that all have a derived
35
+ * string value in common, as described by the setIndexDefinition method. Those
36
+ * values are used as the key for each Slice in the overall Index object.
37
+ *
38
+ * Note that the Index type is not actually used in the API, and you instead
39
+ * enumerate and access its structure with the getSliceIds method and
40
+ * getSliceRowIds method.
41
+ * @category Concept
42
+ */
43
+ export type Index = {[sliceId: Id]: Slice};
44
+
45
+ /**
46
+ * The Slice type represents the concept of a set of Row objects that comprise
47
+ * part of an Index.
48
+ *
49
+ * The Ids in a Slice represent Row objects from a Table that all have a derived
50
+ * string value in common, as described by the setIndexDefinition method.
51
+ *
52
+ * Note that the Slice type is not actually used in the API, and you instead get
53
+ * Row Ids directly with the getSliceRowIds method.
54
+ * @category Concept
55
+ */
56
+ export type Slice = Ids;
57
+
58
+ /**
59
+ * The IndexCallback type describes a function that takes an Index's Id and a
60
+ * callback to loop over each Slice within it.
61
+ *
62
+ * This has schema-based typing. The following is a simplified representation:
63
+ *
64
+ * ```ts override
65
+ * (
66
+ * indexId: Id,
67
+ * forEachSlice: (sliceCallback: SliceCallback) => void,
68
+ * ) => void;
69
+ * ```
70
+ *
71
+ * A IndexCallback is provided when using the forEachIndex method, so that you
72
+ * can do something based on every Index in the Indexes object. See that method
73
+ * for specific examples.
74
+ * @param indexId The Id of the Index that the callback can operate on.
75
+ * @param forEachRow A function that will let you iterate over the Slice objects
76
+ * in this Index.
77
+ * @category Callback
78
+ */
79
+ export type IndexCallback<Schema extends OptionalTablesSchema> = (
80
+ indexId: Id,
81
+ forEachSlice: (sliceCallback: SliceCallback<Schema>) => void,
82
+ ) => void;
83
+
84
+ /**
85
+ * The SliceCallback type describes a function that takes a Slice's Id and a
86
+ * callback to loop over each Row within it.
87
+ *
88
+ * This has schema-based typing. The following is a simplified representation:
89
+ *
90
+ * ```ts override
91
+ * (
92
+ * sliceId: Id,
93
+ * forEachRow: (rowCallback: RowCallback) => void,
94
+ * ) => void;
95
+ * ```
96
+ *
97
+ * A SliceCallback is provided when using the forEachSlice method, so that you
98
+ * can do something based on every Slice in an Index. See that method for
99
+ * specific examples.
100
+ * @param sliceId The Id of the Slice that the callback can operate on.
101
+ * @param forEachRow A function that will let you iterate over the Row objects
102
+ * in this Slice.
103
+ * @category Callback
104
+ */
105
+ export type SliceCallback<Schema extends OptionalTablesSchema> = (
106
+ sliceId: Id,
107
+ forEachRow: (rowCallback: RowCallback<Schema>) => void,
108
+ ) => void;
109
+
110
+ /**
111
+ * The IndexIdsListener type describes a function that is used to listen to
112
+ * Index definitions being added or removed.
113
+ *
114
+ * This has schema-based typing. The following is a simplified representation:
115
+ *
116
+ * ```ts override
117
+ * (indexes: Indexes) => void;
118
+ * ```
119
+ *
120
+ * A IndexIdsListener is provided when using the addIndexIdsListener method.
121
+ * See that method for specific examples.
122
+ *
123
+ * When called, an IndexIdsListener is given a reference to the Indexes object.
124
+ * @param indexes A reference to the Indexes object that changed.
125
+ * @category Listener
126
+ */
127
+ export type IndexIdsListener<Schemas extends OptionalSchemas> = (
128
+ indexes: Indexes<Schemas>,
129
+ ) => void;
130
+
131
+ /**
132
+ * The SliceIdsListener type describes a function that is used to listen to
133
+ * changes to the Slice Ids in an Index.
134
+ *
135
+ * This has schema-based typing. The following is a simplified representation:
136
+ *
137
+ * ```ts override
138
+ * (indexes: Indexes, indexId: Id) => void;
139
+ * ```
140
+ *
141
+ * A SliceIdsListener is provided when using the addSliceIdsListener method. See
142
+ * that method for specific examples.
143
+ *
144
+ * When called, a SliceIdsListener is given a reference to the Indexes object,
145
+ * and the Id of the Index that changed.
146
+ * @param indexes A reference to the Indexes object that changed.
147
+ * @param indexId The Id of the Index that changed.
148
+ * @category Listener
149
+ */
150
+ export type SliceIdsListener<Schemas extends OptionalSchemas> = (
151
+ indexes: Indexes<Schemas>,
152
+ indexId: Id,
153
+ ) => void;
154
+
155
+ /**
156
+ * The SliceRowIdsListener type describes a function that is used to listen to
157
+ * changes to the Row Ids in a Slice.
158
+ *
159
+ * This has schema-based typing. The following is a simplified representation:
160
+ *
161
+ * ```ts override
162
+ * (
163
+ * indexes: Indexes,
164
+ * indexId: Id,
165
+ * sliceId: Id,
166
+ * ) => void;
167
+ * ```
168
+ *
169
+ * A SliceRowIdsListener is provided when using the addSliceRowIdsListener
170
+ * method. See that method for specific examples.
171
+ *
172
+ * When called, a SliceRowIdsListener is given a reference to the Indexes
173
+ * object, the Id of the Index that changed, and the Id of the Slice whose Row
174
+ * Ids changed.
175
+ * @param indexes A reference to the Indexes object that changed.
176
+ * @param indexId The Id of the Index that changed.
177
+ * @param sliceId The Id of the Slice that changed.
178
+ * @category Listener
179
+ */
180
+ export type SliceRowIdsListener<Schemas extends OptionalSchemas> = (
181
+ indexes: Indexes<Schemas>,
182
+ indexId: Id,
183
+ sliceId: Id,
184
+ ) => void;
185
+
186
+ /**
187
+ * The IndexesListenerStats type describes the number of listeners registered
188
+ * with the Indexes object, and can be used for debugging purposes.
189
+ *
190
+ * A IndexesListenerStats object is returned from the getListenerStats method,
191
+ * and is only populated in a debug build.
192
+ * @category Development
193
+ */
194
+ export type IndexesListenerStats = {
195
+ /**
196
+ * The number of SlideIdsListener functions registered with the Indexes
197
+ * object.
198
+ */
199
+ sliceIds?: number;
200
+ /**
201
+ * The number of SliceRowIdsListener functions registered with the Indexes
202
+ * object.
203
+ */
204
+ sliceRowIds?: number;
205
+ };
206
+
207
+ /**
208
+ * An Indexes object lets you look up all the Row objects in a Table that have a
209
+ * certain Cell value.
210
+ *
211
+ * This is useful for creating filtered views of a Table, or simple search
212
+ * functionality.
213
+ *
214
+ * Create an Indexes object easily with the createIndexes function. From there,
215
+ * you can add new Index definitions (with the setIndexDefinition method), query
216
+ * their contents (with the getSliceIds method and getSliceRowIds method), and
217
+ * add listeners for when they change (with the addSliceIdsListener method and
218
+ * addSliceRowIdsListener method).
219
+ *
220
+ * This module defaults to indexing Row objects by one of their Cell values.
221
+ * However, far more complex indexes can be configured with a custom function.
222
+ * @example
223
+ * This example shows a very simple lifecycle of an Indexes object: from
224
+ * creation, to adding a definition, getting its contents, and then registering
225
+ * and removing a listener for it.
226
+ *
227
+ * ```js
228
+ * import {createIndexes, createStore} from 'tinybase';
229
+ *
230
+ * const store = createStore().setTable('pets', {
231
+ * fido: {species: 'dog'},
232
+ * felix: {species: 'cat'},
233
+ * cujo: {species: 'dog'},
234
+ * });
235
+ *
236
+ * const indexes = createIndexes(store);
237
+ * indexes.setIndexDefinition(
238
+ * 'bySpecies', // indexId
239
+ * 'pets', // tableId to index
240
+ * 'species', // cellId to index
241
+ * );
242
+ *
243
+ * console.log(indexes.getSliceIds('bySpecies'));
244
+ * // -> ['dog', 'cat']
245
+ * console.log(indexes.getSliceRowIds('bySpecies', 'dog'));
246
+ * // -> ['fido', 'cujo']
247
+ *
248
+ * const listenerId = indexes.addSliceIdsListener('bySpecies', () => {
249
+ * console.log(indexes.getSliceIds('bySpecies'));
250
+ * });
251
+ * store.setRow('pets', 'lowly', {species: 'worm'});
252
+ * // -> ['dog', 'cat', 'worm']
253
+ *
254
+ * indexes.delListener(listenerId);
255
+ * indexes.destroy();
256
+ * ```
257
+ * @see Metrics And Indexes guides
258
+ * @see Rolling Dice demos
259
+ * @see Country demo
260
+ * @see Todo App demos
261
+ * @see Word Frequencies demo
262
+ * @category Indexes
263
+ */
264
+ export interface Indexes<in out Schemas extends OptionalSchemas> {
265
+ /**
266
+ * The setIndexDefinition method lets you set the definition of an Index.
267
+ *
268
+ * This has schema-based typing. The following is a simplified representation:
269
+ *
270
+ * ```ts override
271
+ * setIndexDefinition(
272
+ * indexId: Id,
273
+ * tableId: Id,
274
+ * getSliceIdOrIds?: Id | ((getCell: GetCell, rowId: Id) => Id | Ids),
275
+ * getSortKey?: Id | ((getCell: GetCell, rowId: Id) => SortKey),
276
+ * sliceIdSorter?: (sliceId1: Id, sliceId2: Id) => number,
277
+ * rowIdSorter?: (sortKey1: SortKey, sortKey2: SortKey, sliceId: Id) => number,
278
+ * ): Indexes;
279
+ * ```
280
+ *
281
+ * Every Index definition is identified by a unique Id, and if you re-use an
282
+ * existing Id with this method, the previous definition is overwritten.
283
+ *
284
+ * An Index is a keyed map of Slice objects, each of which is a list of Row
285
+ * Ids from a given Table. Therefore the definition must specify the Table (by
286
+ * its Id) to be indexed.
287
+ *
288
+ * The Ids in a Slice represent Row objects from a Table that all have a
289
+ * derived string value in common, as described by this method. Those values
290
+ * are used as the key for each Slice in the overall Index object.
291
+ *
292
+ * Without the third `getSliceIdOrIds` parameter, the Index will simply have a
293
+ * single Slice, keyed by an empty string. But more often you will specify a
294
+ * Cell value containing the Slice Id that the Row should belong to.
295
+ * Alternatively, a custom function can be provided that produces your own
296
+ * Slice Id from the local Row as a whole. Since v2.1, the custom function can
297
+ * return an array of Slice Ids, each of which the Row will then belong to.
298
+ *
299
+ * The fourth `getSortKey` parameter specifies a Cell Id to get a value (or a
300
+ * function that processes a whole Row to get a value) that is used to sort
301
+ * the Row Ids within each Slice in the Index.
302
+ *
303
+ * The fifth parameter, `sliceIdSorter`, lets you specify a way to sort the
304
+ * Slice Ids when you access the Index, which may be useful if you are trying
305
+ * to create an alphabetic Index of Row entries. If not specified, the order
306
+ * of the Slice Ids will match the order of Row insertion.
307
+ *
308
+ * The final parameter, `rowIdSorter`, lets you specify a way to sort the Row
309
+ * Ids within each Slice, based on the `getSortKey` parameter. This may be
310
+ * useful if you are trying to keep Rows in a determined order relative to
311
+ * each other in the Index. If omitted, the Row Ids are sorted alphabetically,
312
+ * based on the `getSortKey` parameter.
313
+ *
314
+ * The two 'sorter' parameters, `sliceIdSorter` and `rowIdSorter`, are
315
+ * functions that take two values and return a positive or negative number for
316
+ * when they are in the wrong or right order, respectively. This is exactly
317
+ * the same as the 'compareFunction' that is used in the standard JavaScript
318
+ * array `sort` method, with the addition that `rowIdSorter` also takes the
319
+ * Slice Id parameter, in case you want to sort Row Ids differently in each
320
+ * Slice. You can use the convenient defaultSorter function to default this to
321
+ * be alphanumeric.
322
+ * @param indexId The Id of the Index to define.
323
+ * @param tableId The Id of the Table the Index will be generated from.
324
+ * @param getSliceIdOrIds Either the Id of the Cell containing, or a function
325
+ * that produces, the Id that is used to indicate which Slice in the Index the
326
+ * Row Id should be in. Defaults to a function that returns `''` (meaning that
327
+ * if this `getSliceIdOrIds` parameter is omitted, the Index will simply
328
+ * contain a single Slice containing all the Row Ids in the Table). Since
329
+ * v2.1, this can return an array of Slice Ids, each of which the Row will
330
+ * then belong to.
331
+ * @param getSortKey Either the Id of the Cell containing, or a function that
332
+ * produces, the value that is used to sort the Row Ids in each Slice.
333
+ * @param sliceIdSorter A function that takes two Slice Id values and returns
334
+ * a positive or negative number to indicate how they should be sorted.
335
+ * @param rowIdSorter A function that takes two Row Id values (and a slice Id)
336
+ * and returns a positive or negative number to indicate how they should be
337
+ * sorted.
338
+ * @returns A reference to the Indexes object.
339
+ * @example
340
+ * This example creates a Store, creates an Indexes object, and defines a
341
+ * simple Index based on the values in the `species` Cell.
342
+ *
343
+ * ```js
344
+ * import {createIndexes, createStore} from 'tinybase';
345
+ *
346
+ * const store = createStore().setTable('pets', {
347
+ * fido: {species: 'dog'},
348
+ * felix: {species: 'cat'},
349
+ * cujo: {species: 'dog'},
350
+ * });
351
+ *
352
+ * const indexes = createIndexes(store);
353
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
354
+ *
355
+ * console.log(indexes.getSliceIds('bySpecies'));
356
+ * // -> ['dog', 'cat']
357
+ * console.log(indexes.getSliceRowIds('bySpecies', 'dog'));
358
+ * // -> ['fido', 'cujo']
359
+ * ```
360
+ * @example
361
+ * This example creates a Store, creates an Indexes object, and defines an
362
+ * Index based on the first letter of the pets' names.
363
+ *
364
+ * ```js
365
+ * import {createIndexes, createStore} from 'tinybase';
366
+ *
367
+ * const store = createStore().setTable('pets', {
368
+ * fido: {species: 'dog'},
369
+ * felix: {species: 'cat'},
370
+ * cujo: {species: 'dog'},
371
+ * });
372
+ *
373
+ * const indexes = createIndexes(store);
374
+ * indexes.setIndexDefinition('byFirst', 'pets', (_, rowId) => rowId[0]);
375
+ *
376
+ * console.log(indexes.getSliceIds('byFirst'));
377
+ * // -> ['f', 'c']
378
+ * console.log(indexes.getSliceRowIds('byFirst', 'f'));
379
+ * // -> ['fido', 'felix']
380
+ * ```
381
+ * @example
382
+ * This example creates a Store, creates an Indexes object, and defines an
383
+ * Index based on each of the letters present in the pets' names.
384
+ *
385
+ * ```js
386
+ * import {createIndexes, createStore} from 'tinybase';
387
+ *
388
+ * const store = createStore().setTable('pets', {
389
+ * fido: {species: 'dog'},
390
+ * felix: {species: 'cat'},
391
+ * rex: {species: 'dog'},
392
+ * });
393
+ *
394
+ * const indexes = createIndexes(store);
395
+ * indexes.setIndexDefinition('containsLetter', 'pets', (_, rowId) =>
396
+ * rowId.split(''),
397
+ * );
398
+ *
399
+ * console.log(indexes.getSliceIds('containsLetter'));
400
+ * // -> ['f', 'i', 'd', 'o', 'e', 'l', 'x', 'r']
401
+ * console.log(indexes.getSliceRowIds('containsLetter', 'i'));
402
+ * // -> ['fido', 'felix']
403
+ * console.log(indexes.getSliceRowIds('containsLetter', 'x'));
404
+ * // -> ['felix', 'rex']
405
+ * ```
406
+ * @example
407
+ * This example creates a Store, creates an Indexes object, and defines an
408
+ * Index based on the first letter of the pets' names. The Slice Ids (and Row
409
+ * Ids within them) are alphabetically sorted.
410
+ *
411
+ * ```js
412
+ * import {createIndexes, createStore, defaultSorter} from 'tinybase';
413
+ *
414
+ * const store = createStore().setTable('pets', {
415
+ * fido: {species: 'dog'},
416
+ * felix: {species: 'cat'},
417
+ * cujo: {species: 'dog'},
418
+ * });
419
+ *
420
+ * const indexes = createIndexes(store);
421
+ * indexes.setIndexDefinition(
422
+ * 'byFirst', // indexId
423
+ * 'pets', // tableId
424
+ * (_, rowId) => rowId[0], // each Row's sliceId
425
+ * (_, rowId) => rowId, // each Row's sort key
426
+ * defaultSorter, // sort Slice Ids
427
+ * defaultSorter, // sort Row Ids
428
+ * );
429
+ *
430
+ * console.log(indexes.getSliceIds('byFirst'));
431
+ * // -> ['c', 'f']
432
+ * console.log(indexes.getSliceRowIds('byFirst', 'f'));
433
+ * // -> ['felix', 'fido']
434
+ * ```
435
+ * @category Configuration
436
+ */
437
+ setIndexDefinition<TableId extends TableIdFromSchema<Schemas[0]>>(
438
+ indexId: Id,
439
+ tableId: TableId,
440
+ getSliceIdOrIds?:
441
+ | CellIdFromSchema<Schemas[0], TableId>
442
+ | ((getCell: GetCell<Schemas[0], TableId>, rowId: Id) => Id | Ids),
443
+ getSortKey?:
444
+ | CellIdFromSchema<Schemas[0], TableId>
445
+ | ((getCell: GetCell<Schemas[0], TableId>, rowId: Id) => SortKey),
446
+ sliceIdSorter?: (sliceId1: Id, sliceId2: Id) => number,
447
+ rowIdSorter?: (sortKey1: SortKey, sortKey2: SortKey, sliceId: Id) => number,
448
+ ): Indexes<Schemas>;
449
+
450
+ /**
451
+ * The delIndexDefinition method removes an existing Index definition.
452
+ * @param indexId The Id of the Index to remove.
453
+ * @returns A reference to the Indexes object.
454
+ * @example
455
+ * This example creates a Store, creates an Indexes object, defines a simple
456
+ * Index, and then removes it.
457
+ *
458
+ * This has schema-based typing. The following is a simplified representation:
459
+ *
460
+ * ```ts override
461
+ * delIndexDefinition(indexId: Id): Indexes;
462
+ * ```
463
+ *
464
+ * ```js
465
+ * import {createIndexes, createStore} from 'tinybase';
466
+ *
467
+ * const store = createStore().setTable('pets', {
468
+ * fido: {species: 'dog'},
469
+ * felix: {species: 'cat'},
470
+ * cujo: {species: 'dog'},
471
+ * });
472
+ *
473
+ * const indexes = createIndexes(store);
474
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
475
+ * console.log(indexes.getIndexIds());
476
+ * // -> ['bySpecies']
477
+ *
478
+ * indexes.delIndexDefinition('bySpecies');
479
+ * console.log(indexes.getIndexIds());
480
+ * // -> []
481
+ * ```
482
+ * @category Configuration
483
+ */
484
+ delIndexDefinition(indexId: Id): Indexes<Schemas>;
485
+
486
+ /**
487
+ * The getStore method returns a reference to the underlying Store that is
488
+ * backing this Indexes object.
489
+ * @returns A reference to the Store.
490
+ * @example
491
+ * This example creates an Indexes object against a newly-created Store and
492
+ * then gets its reference in order to update its data.
493
+ *
494
+ * This has schema-based typing. The following is a simplified representation:
495
+ *
496
+ * ```ts override
497
+ * getStore(): Store;
498
+ * ```
499
+ *
500
+ * ```js
501
+ * import {createIndexes, createStore} from 'tinybase';
502
+ *
503
+ * const indexes = createIndexes(createStore());
504
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
505
+ * indexes.getStore().setCell('pets', 'fido', 'species', 'dog');
506
+ * console.log(indexes.getSliceIds('bySpecies'));
507
+ * // -> ['dog']
508
+ * ```
509
+ * @category Getter
510
+ */
511
+ getStore(): Store<Schemas>;
512
+
513
+ /**
514
+ * The getIndexIds method returns an array of the Index Ids registered with
515
+ * this Indexes object.
516
+ * @returns An array of Ids.
517
+ * @example
518
+ * This example creates an Indexes object with two definitions, and then gets
519
+ * the Ids of the definitions.
520
+ *
521
+ * ```js
522
+ * import {createIndexes, createStore} from 'tinybase';
523
+ *
524
+ * const indexes = createIndexes(createStore())
525
+ * .setIndexDefinition('bySpecies', 'pets', 'species')
526
+ * .setIndexDefinition('byColor', 'pets', 'color');
527
+ *
528
+ * console.log(indexes.getIndexIds());
529
+ * // -> ['bySpecies', 'byColor']
530
+ * ```
531
+ * @category Getter
532
+ */
533
+ getIndexIds(): Ids;
534
+
535
+ /**
536
+ * The forEachIndex method takes a function that it will then call for each
537
+ * Index in a specified Indexes object.
538
+ *
539
+ * This has schema-based typing. The following is a simplified representation:
540
+ *
541
+ * ```ts override
542
+ * forEachIndex(indexCallback: IndexCallback): void;
543
+ * ```
544
+ *
545
+ * This method is useful for iterating over the structure of the Indexes
546
+ * object in a functional style. The `indexCallback` parameter is a
547
+ * IndexCallback function that will be called with the Id of each Index, and
548
+ * with a function that can then be used to iterate over each Slice of the
549
+ * Index, should you wish.
550
+ * @param indexCallback The function that should be called for every Index.
551
+ * @example
552
+ * This example iterates over each Index in an Indexes object, and lists each
553
+ * Slice Id within them.
554
+ *
555
+ * ```js
556
+ * import {createIndexes, createStore} from 'tinybase';
557
+ *
558
+ * const store = createStore().setTable('pets', {
559
+ * fido: {species: 'dog', color: 'brown'},
560
+ * felix: {species: 'cat', color: 'black'},
561
+ * cujo: {species: 'dog', color: 'black'},
562
+ * });
563
+ * const indexes = createIndexes(store)
564
+ * .setIndexDefinition('bySpecies', 'pets', 'species')
565
+ * .setIndexDefinition('byColor', 'pets', 'color');
566
+ *
567
+ * indexes.forEachIndex((indexId, forEachSlice) => {
568
+ * console.log(indexId);
569
+ * forEachSlice((sliceId) => console.log(`- ${sliceId}`));
570
+ * });
571
+ * // -> 'bySpecies'
572
+ * // -> '- dog'
573
+ * // -> '- cat'
574
+ * // -> 'byColor'
575
+ * // -> '- brown'
576
+ * // -> '- black'
577
+ * ```
578
+ * @category Iterator
579
+ */
580
+ forEachIndex(indexCallback: IndexCallback<Schemas[0]>): void;
581
+
582
+ /**
583
+ * The forEachSlice method takes a function that it will then call for each
584
+ * Slice in a specified Index.
585
+ *
586
+ * This has schema-based typing. The following is a simplified representation:
587
+ *
588
+ * ```ts override
589
+ * forEachSlice(indexId: Id, sliceCallback: SliceCallback): void;
590
+ * ```
591
+ *
592
+ * This method is useful for iterating over the Slice structure of the Index
593
+ * in a functional style. The `rowCallback` parameter is a RowCallback
594
+ * function that will be called with the Id and value of each Row in the
595
+ * Slice.
596
+ * @param indexId The Id of the Index to iterate over.
597
+ * @param sliceCallback The function that should be called for every Slice.
598
+ * @example
599
+ * This example iterates over each Row in a Slice, and lists its Id.
600
+ *
601
+ * ```js
602
+ * import {createIndexes, createStore} from 'tinybase';
603
+ *
604
+ * const store = createStore().setTable('pets', {
605
+ * fido: {species: 'dog'},
606
+ * felix: {species: 'cat'},
607
+ * cujo: {species: 'dog'},
608
+ * });
609
+ * const indexes = createIndexes(store);
610
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
611
+ *
612
+ * indexes.forEachSlice('bySpecies', (sliceId, forEachRow) => {
613
+ * console.log(sliceId);
614
+ * forEachRow((rowId) => console.log(`- ${rowId}`));
615
+ * });
616
+ * // -> 'dog'
617
+ * // -> '- fido'
618
+ * // -> '- cujo'
619
+ * // -> 'cat'
620
+ * // -> '- felix'
621
+ * ```
622
+ * @category Iterator
623
+ */
624
+ forEachSlice(indexId: Id, sliceCallback: SliceCallback<Schemas[0]>): void;
625
+
626
+ /**
627
+ * The hasIndex method returns a boolean indicating whether a given Index
628
+ * exists in the Indexes object.
629
+ * @param indexId The Id of a possible Index in the Indexes object.
630
+ * @returns Whether an Index with that Id exists.
631
+ * @example
632
+ * This example shows two simple Index existence checks.
633
+ *
634
+ * ```js
635
+ * import {createIndexes, createStore} from 'tinybase';
636
+ *
637
+ * const indexes = createIndexes(createStore());
638
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
639
+ * console.log(indexes.hasIndex('bySpecies'));
640
+ * // -> true
641
+ * console.log(indexes.hasIndex('byColor'));
642
+ * // -> false
643
+ * ```
644
+ * @category Getter
645
+ */
646
+ hasIndex(indexId: Id): boolean;
647
+
648
+ /**
649
+ * The hasSlice method returns a boolean indicating whether a given Slice
650
+ * exists in the Indexes object.
651
+ * @param indexId The Id of a possible Index in the Indexes object.
652
+ * @param sliceId The Id of a possible Slice in the Index.
653
+ * @returns Whether a Slice with that Id exists.
654
+ * @example
655
+ * This example shows two simple Index existence checks.
656
+ *
657
+ * ```js
658
+ * import {createIndexes, createStore} from 'tinybase';
659
+ *
660
+ * const store = createStore().setTable('pets', {
661
+ * fido: {species: 'dog'},
662
+ * felix: {species: 'cat'},
663
+ * cujo: {species: 'dog'},
664
+ * });
665
+ * const indexes = createIndexes(store);
666
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
667
+ * console.log(indexes.hasSlice('bySpecies', 'dog'));
668
+ * // -> true
669
+ * console.log(indexes.hasSlice('bySpecies', 'worm'));
670
+ * // -> false
671
+ * ```
672
+ * @category Getter
673
+ */
674
+ hasSlice(indexId: Id, sliceId: Id): boolean;
675
+
676
+ /**
677
+ * The getTableId method returns the Id of the underlying Table that is
678
+ * backing an Index.
679
+ *
680
+ * This has schema-based typing. The following is a simplified representation:
681
+ *
682
+ * ```ts override
683
+ * getTableId(indexId: Id): Id | undefined;
684
+ * ```
685
+ *
686
+ * If the Index Id is invalid, the method returns `undefined`.
687
+ * @param indexId The Id of an Index.
688
+ * @returns The Id of the Table backing the Index, or `undefined`.
689
+ * @example
690
+ * This example creates an Indexes object, a single Index definition, and then
691
+ * queries it (and a non-existent definition) to get the underlying Table Id.
692
+ *
693
+ * ```js
694
+ * import {createIndexes, createStore} from 'tinybase';
695
+ *
696
+ * const indexes = createIndexes(createStore());
697
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
698
+ *
699
+ * console.log(indexes.getTableId('bySpecies'));
700
+ * // -> 'pets'
701
+ * console.log(indexes.getTableId('byColor'));
702
+ * // -> undefined
703
+ * ```
704
+ * @category Getter
705
+ */
706
+ getTableId<TableId extends TableIdFromSchema<Schemas[0]>>(
707
+ indexId: Id,
708
+ ): TableId | undefined;
709
+
710
+ /**
711
+ * The getSliceIds method gets the list of Slice Ids in an Index.
712
+ *
713
+ * If the identified Index does not exist (or if the definition references a
714
+ * Table that does not exist) then an empty array is returned.
715
+ * @param indexId The Id of the Index.
716
+ * @returns The Slice Ids in the Index, or an empty array.
717
+ * @example
718
+ * This example creates a Store, creates an Indexes object, and defines a
719
+ * simple Index. It then uses getSliceIds to see the available Slice Ids in
720
+ * the Index (and also the Slice Ids in an Index that has not been defined).
721
+ *
722
+ * ```js
723
+ * import {createIndexes, createStore} from 'tinybase';
724
+ *
725
+ * const store = createStore().setTable('pets', {
726
+ * fido: {species: 'dog'},
727
+ * felix: {species: 'cat'},
728
+ * cujo: {species: 'dog'},
729
+ * });
730
+ *
731
+ * const indexes = createIndexes(store);
732
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
733
+ *
734
+ * console.log(indexes.getSliceIds('bySpecies'));
735
+ * // -> ['dog', 'cat']
736
+ * console.log(indexes.getSliceIds('byColor'));
737
+ * // -> []
738
+ * ```
739
+ * @category Getter
740
+ */
741
+ getSliceIds(indexId: Id): Ids;
742
+
743
+ /**
744
+ * The getSliceRowIds method gets the list of Row Ids in a given Slice, within
745
+ * a given Index.
746
+ *
747
+ * If the identified Index or Slice do not exist (or if the definition
748
+ * references a Table that does not exist) then an empty array is returned.
749
+ * @param indexId The Id of the Index.
750
+ * @param sliceId The Id of the Slice in the Index.
751
+ * @returns The Row Ids in the Slice, or an empty array.
752
+ * @example
753
+ * This example creates a Store, creates an Indexes object, and defines a
754
+ * simple Index. It then uses getSliceRowIds to see the Row Ids in the Slice
755
+ * (and also the Row Ids in Slices that do not exist).
756
+ *
757
+ * ```js
758
+ * import {createIndexes, createStore} from 'tinybase';
759
+ *
760
+ * const store = createStore().setTable('pets', {
761
+ * fido: {species: 'dog'},
762
+ * felix: {species: 'cat'},
763
+ * cujo: {species: 'dog'},
764
+ * });
765
+ *
766
+ * const indexes = createIndexes(store);
767
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
768
+ *
769
+ * console.log(indexes.getSliceRowIds('bySpecies', 'dog'));
770
+ * // -> ['fido', 'cujo']
771
+ * console.log(indexes.getSliceRowIds('bySpecies', 'worm'));
772
+ * // -> []
773
+ * console.log(indexes.getSliceRowIds('byColor', 'brown'));
774
+ * // -> []
775
+ * ```
776
+ * @category Getter
777
+ */
778
+ getSliceRowIds(indexId: Id, sliceId: Id): Ids;
779
+
780
+ /**
781
+ * The addIndexIdsListener method registers a listener function with the
782
+ * Indexes object that will be called whenever an Index definition is added or
783
+ * removed.
784
+ *
785
+ * This has schema-based typing. The following is a simplified representation:
786
+ *
787
+ * ```ts override
788
+ * addIndexIdsListener(listener: IndexIdsListener): Id;
789
+ * ```
790
+ *
791
+ * The provided listener is an IndexIdsListener function, and will be called
792
+ * with a reference to the Indexes object.
793
+ * @param listener The function that will be called whenever an Index
794
+ * definition is added or removed.
795
+ * @example
796
+ * This example creates a Store, an Indexes object, and then registers a
797
+ * listener that responds to the addition and the removal of an Index
798
+ * definition.
799
+ *
800
+ * ```js
801
+ * import {createIndexes, createStore} from 'tinybase';
802
+ *
803
+ * const store = createStore().setTable('pets', {
804
+ * fido: {species: 'dog'},
805
+ * felix: {species: 'cat'},
806
+ * cujo: {species: 'dog'},
807
+ * });
808
+ *
809
+ * const indexes = createIndexes(store);
810
+ * const listenerId = indexes.addIndexIdsListener((indexes) => {
811
+ * console.log(indexes.getIndexIds());
812
+ * });
813
+ *
814
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
815
+ * // -> ['bySpecies']
816
+ * indexes.delIndexDefinition('bySpecies');
817
+ * // -> []
818
+ *
819
+ * indexes.delListener(listenerId);
820
+ * ```
821
+ * @category Listener
822
+ * @since v4.1.0
823
+ */
824
+ addIndexIdsListener(listener: IndexIdsListener<Schemas>): Id;
825
+
826
+ /**
827
+ * The addSliceIdsListener method registers a listener function with the
828
+ * Indexes object that will be called whenever the Slice Ids in an Index
829
+ * change.
830
+ *
831
+ * This has schema-based typing. The following is a simplified representation:
832
+ *
833
+ * ```ts override
834
+ * addSliceIdsListener(indexId: IdOrNull, listener: SliceIdsListener): Id;
835
+ * ```
836
+ *
837
+ * You can either listen to a single Index (by specifying the Index Id as the
838
+ * method's first parameter), or changes to any Index (by providing a `null`
839
+ * wildcard).
840
+ *
841
+ * The provided listener is a SliceIdsListener function, and will be called
842
+ * with a reference to the Indexes object, and the Id of the Index that
843
+ * changed.
844
+ * @param indexId The Id of the Index to listen to, or `null` as a wildcard.
845
+ * @param listener The function that will be called whenever the Slice Ids in
846
+ * the Index change.
847
+ * @returns A unique Id for the listener that can later be used to remove it.
848
+ * @example
849
+ * This example creates a Store, an Indexes object, and then registers a
850
+ * listener that responds to any changes to a specific Index.
851
+ *
852
+ * ```js
853
+ * import {createIndexes, createStore} from 'tinybase';
854
+ *
855
+ * const store = createStore().setTable('pets', {
856
+ * fido: {species: 'dog'},
857
+ * felix: {species: 'cat'},
858
+ * cujo: {species: 'dog'},
859
+ * });
860
+ *
861
+ * const indexes = createIndexes(store);
862
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
863
+ *
864
+ * const listenerId = indexes.addSliceIdsListener('bySpecies', (indexes) => {
865
+ * console.log('Slice Ids for bySpecies index changed');
866
+ * console.log(indexes.getSliceIds('bySpecies'));
867
+ * });
868
+ *
869
+ * store.setRow('pets', 'lowly', {species: 'worm'});
870
+ * // -> 'Slice Ids for bySpecies index changed'
871
+ * // -> ['dog', 'cat', 'worm']
872
+ *
873
+ * indexes.delListener(listenerId);
874
+ * ```
875
+ * @example
876
+ * This example creates a Store, an Indexes object, and then registers a
877
+ * listener that responds to any changes to any Index.
878
+ *
879
+ * ```js
880
+ * import {createIndexes, createStore} from 'tinybase';
881
+ *
882
+ * const store = createStore().setTable('pets', {
883
+ * fido: {species: 'dog', color: 'brown'},
884
+ * felix: {species: 'cat', color: 'black'},
885
+ * cujo: {species: 'dog', color: 'brown'},
886
+ * });
887
+ *
888
+ * const indexes = createIndexes(store)
889
+ * .setIndexDefinition('bySpecies', 'pets', 'species')
890
+ * .setIndexDefinition('byColor', 'pets', 'color');
891
+ *
892
+ * const listenerId = indexes.addSliceIdsListener(
893
+ * null,
894
+ * (indexes, indexId) => {
895
+ * console.log(`Slice Ids for ${indexId} index changed`);
896
+ * console.log(indexes.getSliceIds(indexId));
897
+ * },
898
+ * );
899
+ *
900
+ * store.setRow('pets', 'lowly', {species: 'worm', color: 'pink'});
901
+ * // -> 'Slice Ids for bySpecies index changed'
902
+ * // -> ['dog', 'cat', 'worm']
903
+ * // -> 'Slice Ids for byColor index changed'
904
+ * // -> ['brown', 'black', 'pink']
905
+ *
906
+ * indexes.delListener(listenerId);
907
+ * ```
908
+ * @category Listener
909
+ */
910
+ addSliceIdsListener(
911
+ indexId: IdOrNull,
912
+ listener: SliceIdsListener<Schemas>,
913
+ ): Id;
914
+
915
+ /**
916
+ * The addSliceRowIdsListener method registers a listener function with the
917
+ * Indexes object that will be called whenever the Row Ids in a Slice change.
918
+ *
919
+ * This has schema-based typing. The following is a simplified representation:
920
+ *
921
+ * ```ts override
922
+ * addSliceRowIdsListener(
923
+ * indexId: IdOrNull,
924
+ * sliceId: IdOrNull,
925
+ * listener: SliceRowIdsListener,
926
+ * ): Id;
927
+ * ```
928
+ *
929
+ * You can either listen to a single Slice (by specifying the Index Id and
930
+ * Slice Id as the method's first two parameters), or changes to any Slice (by
931
+ * providing `null` wildcards).
932
+ *
933
+ * Both, either, or neither of the `indexId` and `sliceId` parameters can be
934
+ * wildcarded with `null`. You can listen to a specific Slice in a specific
935
+ * Index, any Slice in a specific Index, a specific Slice in any Index, or any
936
+ * Slice in any Index.
937
+ *
938
+ * The provided listener is a SliceRowIdsListener function, and will be called
939
+ * with a reference to the Indexes object, the Id of the Index, and the Id of
940
+ * the Slice that changed.
941
+ * @param indexId The Id of the Index to listen to, or `null` as a wildcard.
942
+ * @param sliceId The Id of the Slice to listen to, or `null` as a wildcard.
943
+ * @param listener The function that will be called whenever the Row Ids in
944
+ * the Slice change.
945
+ * @returns A unique Id for the listener that can later be used to remove it.
946
+ * @example
947
+ * This example creates a Store, an Indexes object, and then registers a
948
+ * listener that responds to any changes to a specific Slice.
949
+ *
950
+ * ```js
951
+ * import {createIndexes, createStore} from 'tinybase';
952
+ *
953
+ * const store = createStore().setTable('pets', {
954
+ * fido: {species: 'dog'},
955
+ * felix: {species: 'cat'},
956
+ * cujo: {species: 'dog'},
957
+ * });
958
+ *
959
+ * const indexes = createIndexes(store);
960
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
961
+ *
962
+ * const listenerId = indexes.addSliceRowIdsListener(
963
+ * 'bySpecies',
964
+ * 'dog',
965
+ * (indexes) => {
966
+ * console.log('Row Ids for dog slice in bySpecies index changed');
967
+ * console.log(indexes.getSliceRowIds('bySpecies', 'dog'));
968
+ * },
969
+ * );
970
+ *
971
+ * store.setRow('pets', 'toto', {species: 'dog'});
972
+ * // -> 'Row Ids for dog slice in bySpecies index changed'
973
+ * // -> ['fido', 'cujo', 'toto']
974
+ *
975
+ * indexes.delListener(listenerId);
976
+ * ```
977
+ * @example
978
+ * This example creates a Store, an Indexes object, and then registers a
979
+ * listener that responds to any changes to any Slice.
980
+ *
981
+ * ```js
982
+ * import {createIndexes, createStore} from 'tinybase';
983
+ *
984
+ * const store = createStore().setTable('pets', {
985
+ * fido: {species: 'dog', color: 'brown'},
986
+ * felix: {species: 'cat', color: 'black'},
987
+ * cujo: {species: 'dog', color: 'black'},
988
+ * });
989
+ *
990
+ * const indexes = createIndexes(store)
991
+ * .setIndexDefinition('bySpecies', 'pets', 'species')
992
+ * .setIndexDefinition('byColor', 'pets', 'color');
993
+ *
994
+ * const listenerId = indexes.addSliceRowIdsListener(
995
+ * null,
996
+ * null,
997
+ * (indexes, indexId, sliceId) => {
998
+ * console.log(
999
+ * `Row Ids for ${sliceId} slice in ${indexId} index changed`,
1000
+ * );
1001
+ * console.log(indexes.getSliceRowIds(indexId, sliceId));
1002
+ * },
1003
+ * );
1004
+ *
1005
+ * store.setRow('pets', 'toto', {species: 'dog', color: 'brown'});
1006
+ * // -> 'Row Ids for dog slice in bySpecies index changed'
1007
+ * // -> ['fido', 'cujo', 'toto']
1008
+ * // -> 'Row Ids for brown slice in byColor index changed'
1009
+ * // -> ['fido', 'toto']
1010
+ *
1011
+ * indexes.delListener(listenerId);
1012
+ * ```
1013
+ * @category Listener
1014
+ */
1015
+ addSliceRowIdsListener(
1016
+ indexId: IdOrNull,
1017
+ sliceId: IdOrNull,
1018
+ listener: SliceRowIdsListener<Schemas>,
1019
+ ): Id;
1020
+
1021
+ /**
1022
+ * The delListener method removes a listener that was previously added to the
1023
+ * Indexes object.
1024
+ *
1025
+ * This has schema-based typing. The following is a simplified representation:
1026
+ *
1027
+ * ```ts override
1028
+ * delListener(listenerId: Id): Indexes;
1029
+ * ```
1030
+ *
1031
+ * Use the Id returned by whichever method was used to add the listener. Note
1032
+ * that the Indexes object may re-use this Id for future listeners added to
1033
+ * it.
1034
+ * @param listenerId The Id of the listener to remove.
1035
+ * @returns A reference to the Indexes object.
1036
+ * @example
1037
+ * This example creates a Store, an Indexes object, registers a listener, and
1038
+ * then removes it.
1039
+ *
1040
+ * ```js
1041
+ * import {createIndexes, createStore} from 'tinybase';
1042
+ *
1043
+ * const store = createStore().setTable('pets', {
1044
+ * fido: {species: 'dog'},
1045
+ * felix: {species: 'cat'},
1046
+ * cujo: {species: 'dog'},
1047
+ * });
1048
+ *
1049
+ * const indexes = createIndexes(store);
1050
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
1051
+ *
1052
+ * const listenerId = indexes.addSliceIdsListener('bySpecies', () => {
1053
+ * console.log('Slice Ids for bySpecies index changed');
1054
+ * });
1055
+ *
1056
+ * store.setRow('pets', 'lowly', {species: 'worm'});
1057
+ * // -> 'Slice Ids for bySpecies index changed'
1058
+ *
1059
+ * indexes.delListener(listenerId);
1060
+ *
1061
+ * store.setRow('pets', 'toto', {species: 'dog'});
1062
+ * // -> undefined
1063
+ * // The listener is not called.
1064
+ * ```
1065
+ * @category Listener
1066
+ */
1067
+ delListener(listenerId: Id): Indexes<Schemas>;
1068
+
1069
+ /**
1070
+ * The destroy method should be called when this Indexes object is no longer
1071
+ * used.
1072
+ *
1073
+ * This guarantees that all of the listeners that the object registered with
1074
+ * the underlying Store are removed and it can be correctly garbage collected.
1075
+ * @example
1076
+ * This example creates a Store, adds an Indexes object with a
1077
+ * definition (that registers a RowListener with the underlying Store),
1078
+ * and then destroys it again, removing the listener.
1079
+ *
1080
+ * ```js
1081
+ * import {createIndexes, createStore} from 'tinybase';
1082
+ *
1083
+ * const store = createStore().setTable('pets', {
1084
+ * fido: {species: 'dog'},
1085
+ * felix: {species: 'cat'},
1086
+ * cujo: {species: 'dog'},
1087
+ * });
1088
+ *
1089
+ * const indexes = createIndexes(store);
1090
+ * indexes.setIndexDefinition('bySpecies', 'pets', 'species');
1091
+ * console.log(store.getListenerStats().row);
1092
+ * // -> 1
1093
+ *
1094
+ * indexes.destroy();
1095
+ *
1096
+ * console.log(store.getListenerStats().row);
1097
+ * // -> 0
1098
+ * ```
1099
+ * @category Lifecycle
1100
+ */
1101
+ destroy(): void;
1102
+
1103
+ /**
1104
+ * The getListenerStats method provides a set of statistics about the
1105
+ * listeners registered with the Indexes object, and is used for debugging
1106
+ * purposes.
1107
+ *
1108
+ * The IndexesListenerStats object contains a breakdown of the different types
1109
+ * of listener.
1110
+ *
1111
+ * The statistics are only populated in a debug build: production builds
1112
+ * return an empty object. The method is intended to be used during
1113
+ * development to ensure your application is not leaking listener
1114
+ * registrations, for example.
1115
+ * @returns A IndexesListenerStats object containing Indexes listener
1116
+ * statistics.
1117
+ * @example
1118
+ * This example gets the listener statistics of an Indexes object.
1119
+ *
1120
+ * ```js
1121
+ * import {createIndexes, createStore} from 'tinybase';
1122
+ *
1123
+ * const store = createStore();
1124
+ * const indexes = createIndexes(store);
1125
+ * indexes.addSliceIdsListener(null, () => {
1126
+ * console.log('Slice Ids changed');
1127
+ * });
1128
+ * indexes.addSliceRowIdsListener(null, null, () => {
1129
+ * console.log('Slice Row Ids changed');
1130
+ * });
1131
+ *
1132
+ * console.log(indexes.getListenerStats());
1133
+ * // -> {sliceIds: 1, sliceRowIds: 1}
1134
+ * ```
1135
+ * @category Development
1136
+ */
1137
+ getListenerStats(): IndexesListenerStats;
1138
+ }
1139
+
1140
+ /**
1141
+ * The createIndexes function creates an Indexes object, and is the main entry
1142
+ * point into the indexes module.
1143
+ *
1144
+ * This has schema-based typing. The following is a simplified representation:
1145
+ *
1146
+ * ```ts override
1147
+ * createIndexes(store: Store): Indexes;
1148
+ * ```
1149
+ *
1150
+ * A given Store can only have one Indexes object associated with it. If you
1151
+ * call this function twice on the same Store, your second call will return a
1152
+ * reference to the Indexes object created by the first.
1153
+ * @param store The Store for which to register Index definitions.
1154
+ * @returns A reference to the new Indexes object.
1155
+ * @example
1156
+ * This example creates an Indexes object.
1157
+ *
1158
+ * ```js
1159
+ * import {createIndexes, createStore} from 'tinybase';
1160
+ *
1161
+ * const store = createStore();
1162
+ * const indexes = createIndexes(store);
1163
+ * console.log(indexes.getIndexIds());
1164
+ * // -> []
1165
+ * ```
1166
+ * @example
1167
+ * This example creates an Indexes object, and calls the method a second time
1168
+ * for the same Store to return the same object.
1169
+ *
1170
+ * ```js
1171
+ * import {createIndexes, createStore} from 'tinybase';
1172
+ *
1173
+ * const store = createStore();
1174
+ * const indexes1 = createIndexes(store);
1175
+ * const indexes2 = createIndexes(store);
1176
+ * console.log(indexes1 === indexes2);
1177
+ * // -> true
1178
+ * ```
1179
+ * @category Creation
1180
+ */
1181
+ export function createIndexes<Schemas extends OptionalSchemas>(
1182
+ store: Store<Schemas>,
1183
+ ): Indexes<Schemas>;