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
@@ -1,1393 +0,0 @@
1
- /**
2
- * The persisters module of the TinyBase project provides a simple framework for
3
- * saving and loading Store data, to and from different destinations, or
4
- * underlying storage types.
5
- *
6
- * Several entry points are provided (in separately installed modules), each of
7
- * which returns a new Persister object that can load and save a Store. Between
8
- * them, these allow you to store your TinyBase data locally, remotely, to
9
- * SQLite databases, and across synchronization boundaries with CRDT frameworks.
10
- *
11
- * |Module|Function|Storage|
12
- * |-|-|-|
13
- * |persister-browser|createSessionPersister|Browser session storage|
14
- * |persister-browser|createLocalPersister|Browser local storage|
15
- * |persister-indexed-db|createIndexedDbPersister|Browser IndexedDB|
16
- * |persister-remote|createRemotePersister|Remote server|
17
- * |persister-file|createFilePersister|Local file (where possible)|
18
- * |persister-partykit-client|createPartyKitPersister|PartyKit with the persister-partykit-server module|
19
- * |persister-sqlite3|createSqlite3Persister|SQLite in Node, via [sqlite3](https://github.com/TryGhost/node-sqlite3)|
20
- * |persister-sqlite-wasm|createSqliteWasmPersister|SQLite in a browser, via [sqlite-wasm](https://github.com/tomayac/sqlite-wasm)|
21
- * |persister-cr-sqlite-wasm|createCrSqliteWasmPersister|SQLite CRDTs, via [cr-sqlite-wasm](https://github.com/vlcn-io/cr-sqlite)|
22
- * |persister-expo-sqlite|createExpoSqlitePersister|SQLite in React Native, via [expo-sqlite](https://github.com/expo/expo/tree/main/packages/expo-sqlite)|
23
- * |persister-expo-sqlite-next|createExpoSqliteNextPersister|SQLite in React Native, via [expo-sqlite/next](https://github.com/expo/expo/tree/main/packages/expo-sqlite/next)|
24
- * |persister-electric-sql|createElectricSqlPersister|Electric SQL, via [electric-sql](https://github.com/electric-sql/electric)|
25
- * |persister-libsql|createLibSqlPersister|LibSQL for Turso, via [libsql-client](https://github.com/tursodatabase/libsql-client-ts)|
26
- * |persister-powersync|createPowerSyncPersister|PowerSync, via [powersync-sdk](https://github.com/powersync-ja/powersync-js)|
27
- * |persister-yjs|createYjsPersister|Yjs CRDTs, via [yjs](https://github.com/yjs/yjs)|
28
- * |persister-automerge|createSqliteWasmPersister|Automerge CRDTs, via [automerge-repo](https://github.com/automerge/automerge-repo)|
29
- *
30
- * Since persistence requirements can be different for every app, the
31
- * createCustomPersister function in this module can also be used to easily
32
- * create a fully customized way to save and load Store data.
33
- * @see Persisting Data guide
34
- * @see Database Persistence guide
35
- * @see Synchronizing Data guide
36
- * @see Countries demo
37
- * @see Todo App demos
38
- * @see Drawing demo
39
- * @packageDocumentation
40
- * @module persisters
41
- */
42
-
43
- import type {
44
- Changes,
45
- Content,
46
- OptionalSchemas,
47
- OptionalTablesSchema,
48
- Store,
49
- } from '../../store/with-schemas/index.d.ts';
50
- import type {
51
- MergeableChanges,
52
- MergeableContent,
53
- MergeableStore,
54
- } from '../../mergeable-store/with-schemas/index.d.ts';
55
- import type {TableIdFromSchema} from '../../_internal/store/with-schemas/index.d.ts';
56
-
57
- /**
58
- * The StoreTypes type
59
- */
60
- export type StoreTypes =
61
- | 1 // Store only
62
- | 2 // MergeableStore only
63
- | 3; // Store and MergeableStore
64
-
65
- /**
66
- * The PersistedStore type
67
- */
68
- export type PersistedStore<
69
- Schemas extends OptionalSchemas,
70
- StoreType extends StoreTypes = 1,
71
- > = StoreType extends 3
72
- ? Store<Schemas> | MergeableStore<Schemas>
73
- : StoreType extends 2
74
- ? MergeableStore<Schemas>
75
- : Store<Schemas>;
76
-
77
- /**
78
- * The PersistedContent type
79
- */
80
- export type PersistedContent<
81
- Schemas extends OptionalSchemas,
82
- StoreType extends StoreTypes = 1,
83
- > = StoreType extends 3
84
- ? Content<Schemas> | MergeableContent<Schemas>
85
- : StoreType extends 2
86
- ? MergeableContent<Schemas>
87
- : Content<Schemas>;
88
-
89
- /**
90
- * The PersistedChanges type
91
- */
92
- export type PersistedChanges<
93
- Schemas extends OptionalSchemas,
94
- StoreType extends StoreTypes = 1,
95
- > = StoreType extends 3
96
- ? Changes<Schemas> | MergeableChanges<Schemas>
97
- : StoreType extends 2
98
- ? MergeableChanges<Schemas>
99
- : Changes<Schemas>;
100
-
101
- /**
102
- * A PersisterListener is a callback that lets a Persister inform the Store that
103
- * a change has happened to the underlying data.
104
- *
105
- * This has schema-based typing. The following is a simplified representation:
106
- *
107
- * ```ts override
108
- * export type PersisterListener<StoreType extends StoreTypes = 1> = (
109
- * content?: PersistedContent<StoreType>,
110
- * changes?: PersistedChanges<StoreType>,
111
- * ) => void;
112
- * ```
113
- *
114
- * If the listener is called with the `changes` parameter, it will be used to
115
- * make an incremental change to the Store. If not, but the `content` parameter
116
- * is available, that will be used to make a wholesale change to the Store. If
117
- * neither are present, the content will be loaded using the Persister's load
118
- * method. Prior to v5.0, these parameters were callbacks.
119
- * @param content If provided, this is a Content object from the the Persister
120
- * that will be used to immediately wholesale update the Store.
121
- * @param changes If provided, this is a Changes object from the the Persister
122
- * that will be used to immediately incrementally update the Store. This takes
123
- * priority over the content argument above if present.
124
- * @category Creation
125
- * @since v4.0.0
126
- */
127
- export type PersisterListener<
128
- Schemas extends OptionalSchemas,
129
- StoreType extends StoreTypes = 1,
130
- > = (
131
- content?: PersistedContent<Schemas, StoreType>,
132
- changes?: PersistedChanges<Schemas, StoreType>,
133
- ) => void;
134
-
135
- /**
136
- * The PersisterStats type describes the number of times a Persister object has
137
- * loaded or saved data.
138
- *
139
- * A PersisterStats object is returned from the getStats method, and is only
140
- * populated in a debug build.
141
- * @category Development
142
- */
143
- export type PersisterStats = {
144
- /**
145
- * The number of times data has been loaded.
146
- */
147
- loads?: number;
148
- /**
149
- * The number of times data has been saved.
150
- */
151
- saves?: number;
152
- };
153
-
154
- /**
155
- * The DatabasePersisterConfig type describes the configuration of a
156
- * database-oriented Persister, such as those for SQLite.
157
- *
158
- * This has schema-based typing. The following is a simplified representation:
159
- *
160
- * ```ts override
161
- * DpcJson | DpcTabular;
162
- * ```
163
- *
164
- * There are two modes for persisting a Store with a database:
165
- *
166
- * - A JSON serialization of the whole Store, which is stored in a single row of
167
- * a table (normally called `tinybase`) within the database. This is
168
- * configured by providing a DpcJson object.
169
- * - A tabular mapping of Table Ids to database table names (and vice-versa).
170
- * Values are stored in a separate special table (normally called
171
- * `tinybase_values`). This is configured by providing a DpcTabular object.
172
- *
173
- * Please see the DpcJson and DpcTabular type documentation for more detail on
174
- * each. If not specified otherwise, JSON serialization will be used for
175
- * persistence.
176
- *
177
- * Changes made to the database (outside of this Persister) are picked up
178
- * immediately if they are made via the same connection or library that it is
179
- * using. If the database is being changed by another client, the Persister
180
- * needs to poll for changes. Hence both configuration types also contain an
181
- * `autoLoadIntervalSeconds` property which indicates how often it should do
182
- * that. This defaults to 1 second.
183
- *
184
- * Note that all the nested types within this type have a 'Dpc' prefix, short
185
- * for 'DatabasePersisterConfig'.
186
- * @example
187
- * When applied to a database Persister, this DatabasePersisterConfig will load
188
- * and save a JSON serialization from and to a table called `my_tinybase`,
189
- * polling the database every 2 seconds. See DpcJson for more details on these
190
- * settings.
191
- *
192
- * ```js
193
- * import type {DatabasePersisterConfig} from 'tinybase';
194
- *
195
- * export const databasePersisterConfig: DatabasePersisterConfig = {
196
- * mode: 'json',
197
- * storeTableName: 'my_tinybase',
198
- * autoLoadIntervalSeconds: 2,
199
- * };
200
- * ```
201
- * @example
202
- * When applied to a database Persister, this DatabasePersisterConfig will load
203
- * and save tabular data from and to tables specified in the `load` and `save`
204
- * mappings. See DpcTabular for more details on these settings.
205
- *
206
- * ```js
207
- * import type {DatabasePersisterConfig} from 'tinybase';
208
- *
209
- * export const databasePersisterConfig: DatabasePersisterConfig = {
210
- * mode: 'tabular',
211
- * tables: {
212
- * load: {petsInDb: 'pets', speciesInDb: 'species'},
213
- * save: {pets: 'petsInDb', species: 'speciesInDb'},
214
- * },
215
- * };
216
- * ```
217
- * @category Configuration
218
- * @since v4.0.0
219
- */
220
- export type DatabasePersisterConfig<Schemas extends OptionalSchemas> =
221
- | DpcJson
222
- | DpcTabular<Schemas[0]>;
223
-
224
- /**
225
- * The DpcJson type describes the configuration of a database-oriented Persister
226
- * operating in serialized JSON mode.
227
- *
228
- * One setting is the `storeTableName` property, which indicates the name of a
229
- * table in the database which will be used to serialize the Store content into.
230
- * It defaults to `tinybase`.
231
- *
232
- * That table in the database will be given two columns: a primary key column
233
- * called `_id`, and one called `store`. (These column names can be changed
234
- * using the `rowIdColumnName` and `storeColumnName` settings). The Persister
235
- * will place a single row in this table with `_` in the `_id` column, and the
236
- * JSON serialization in the `store` column, something like:
237
- *
238
- * ```
239
- * > SELECT * FROM tinybase;
240
- * +-----+-----------------------------------------------------+
241
- * | _id | store |
242
- * +-----+-----------------------------------------------------+
243
- * | _ | [{"pets":{"fido":{"species":"dog"}}},{"open":true}] |
244
- * +-----+-----------------------------------------------------+
245
- * ```
246
- *
247
- * The 'Dpc' prefix indicates that this type is used within the
248
- * DatabasePersisterConfig type.
249
- * @example
250
- * When applied to a database Persister, this DatabasePersisterConfig will load
251
- * and save a JSON serialization from and to a table called `tinybase_json`.
252
- *
253
- * ```js
254
- * import type {DatabasePersisterConfig} from 'tinybase';
255
- *
256
- * export const databasePersisterConfig: DatabasePersisterConfig = {
257
- * mode: 'json',
258
- * storeTableName: 'tinybase_json',
259
- * };
260
- * ```
261
- * @category Configuration
262
- * @since v4.0.0
263
- */
264
- export type DpcJson = {
265
- /**
266
- * The mode to be used for persisting the Store to the database, in this case
267
- * JSON serialization. See the DpcTabular type for the alternative tabular
268
- * mapping mode.
269
- */
270
- mode: 'json';
271
- /**
272
- * An optional string which indicates the name of a table in the database
273
- * which will be used to serialize the Store content into. It defaults to
274
- * `tinybase`.
275
- */
276
- storeTableName?: string;
277
- /**
278
- * The optional name of the column in the database table that will be used as
279
- * the Id for the Store, defaulting to '_id', since v5.0.
280
- */
281
- storeIdColumnName?: string;
282
- /**
283
- * The optional name of the column in the database table that will be used for
284
- * the JSON of the Store, defaulting to 'store', since v5.0.
285
- */
286
- storeColumnName?: string;
287
- /**
288
- * How often the Persister should poll the database for any changes made to it
289
- * by other clients, defaulting to 1 second.
290
- */
291
- autoLoadIntervalSeconds?: number;
292
- };
293
-
294
- /**
295
- * The DpcTabular type describes the configuration of a database-oriented
296
- * Persister that is operating in tabular mapping mode.
297
- *
298
- * It is important to note that both the tabular mapping in ('save') and out
299
- * ('load') of an underlying database are disabled by default. This is to ensure
300
- * that if you pass in an existing populated database you don't run the
301
- * immediate risk of corrupting or losing all your data.
302
- *
303
- * This configuration therefore takes a `tables` property object (with child
304
- * `load` and `save` property objects) and a `values` property object. These
305
- * indicate how you want to load and save Tables and Values respectively. At
306
- * least one of these two properties are required for the Persister to do
307
- * anything!
308
- *
309
- * Note that if you are planning to both load from and save to a database, it is
310
- * important to make sure that the load and save table mappings are symmetrical.
311
- * For example:
312
- *
313
- * ```js
314
- * import type {DatabasePersisterConfig} from 'tinybase';
315
- *
316
- * export const databasePersisterConfig: DatabasePersisterConfig = {
317
- * mode: 'tabular',
318
- * tables: {
319
- * load: {petsInDb: 'pets', speciesInDb: 'species'},
320
- * save: {pets: 'petsInDb', species: 'speciesInDb'},
321
- * },
322
- * };
323
- * ```
324
- *
325
- * See the documentation for the DpcTabularLoad, DpcTabularSave, and
326
- * DpcTabularValues types for more details on how to configure the tabular
327
- * mapping mode.
328
- *
329
- * The 'Dpc' prefix indicates that this type is used within the
330
- * DatabasePersisterConfig type.
331
- * @example
332
- * When applied to a database Persister, this DatabasePersisterConfig will load
333
- * and save Tables data from and to tables specified in the `load` and `save`
334
- * mappings, and Values data from and to a table called `my_tinybase_values`.
335
- *
336
- * ```js
337
- * import type {DatabasePersisterConfig} from 'tinybase';
338
- *
339
- * export const databasePersisterConfig: DatabasePersisterConfig = {
340
- * mode: 'tabular',
341
- * tables: {
342
- * load: {petsInDb: 'pets', speciesInDb: 'species'},
343
- * save: {pets: 'petsInDb', species: 'speciesInDb'},
344
- * },
345
- * values: {
346
- * load: true,
347
- * save: true,
348
- * tableName: 'my_tinybase_values',
349
- * },
350
- * };
351
- * ```
352
- * @category Configuration
353
- * @since v4.0.0
354
- */
355
- export type DpcTabular<Schema extends OptionalTablesSchema> = {
356
- /**
357
- * The mode to be used for persisting the Store to the database, in this case
358
- * tabular mapping. See the DpcJson type for the alternative JSON
359
- * serialization mode.
360
- */
361
- mode: 'tabular';
362
- /**
363
- * The settings for how the Store Tables are mapped to and from the database.
364
- */
365
- tables?: {
366
- /**
367
- * The settings for how the database tables are mapped into the Store Tables
368
- * when loading.
369
- */
370
- load?: DpcTabularLoad<Schema>;
371
- /**
372
- * The settings for how the Store Tables are mapped out to the database
373
- * tables when saving.
374
- */
375
- save?: DpcTabularSave<Schema>;
376
- };
377
- /**
378
- * The settings for how the Store Values are mapped to and from the database.
379
- */
380
- values?: DpcTabularValues;
381
- /**
382
- * How often the Persister should poll the database for any changes made to it
383
- * by other clients, defaulting to 1 second.
384
- */
385
- autoLoadIntervalSeconds?: number;
386
- };
387
-
388
- /**
389
- * The DpcTabularLoad type describes the configuration for loading Tables in a
390
- * database-oriented Persister that is operating in tabular mode.
391
- *
392
- * It is an object where each key is a name of a database table, and the value
393
- * is a child configuration object for how that table should be loaded into the
394
- * Store. The properties of the child configuration object are:
395
- *
396
- * ||Type|Description|
397
- * |-|-|-|
398
- * |`tableId`|Id|The Id of the Store Table into which data from this database table should be loaded.|
399
- * |`rowIdColumnName?`|string|The optional name of the column in the database table that will be used as the Row Ids in the Store Table, defaulting to '_id'.|
400
- *
401
- * As a shortcut, if you do not need to specify a custom `rowIdColumnName`, you
402
- * can simply provide the Id of the Store Table instead of the whole object.
403
- *
404
- * The 'Dpc' prefix indicates that this type is used within the
405
- * DatabasePersisterConfig type.
406
- * @example
407
- * When applied to a database Persister, this DatabasePersisterConfig will load
408
- * the data of two database tables (called 'petsInDb' and 'speciesInDb') into
409
- * two Store Tables (called 'pets' and 'species'). One has a column for the Row
410
- * Id called 'id' and the other defaults it to '_id'.
411
- *
412
- * ```js
413
- * import type {DatabasePersisterConfig} from 'tinybase';
414
- *
415
- * export const databasePersisterConfig: DatabasePersisterConfig = {
416
- * mode: 'tabular',
417
- * tables: {
418
- * load: {
419
- * petsInDb: {tableId: 'pets', rowIdColumnName: 'id'},
420
- * speciesInDb: 'species',
421
- * },
422
- * },
423
- * };
424
- * ```
425
- *
426
- * Imagine database tables that look like this:
427
- *
428
- * ```
429
- * > SELECT * FROM petsInDb;
430
- * +-------+---------+-------+
431
- * | id | species | color |
432
- * +-------+---------+-------+
433
- * | fido | dog | brown |
434
- * | felix | cat | black |
435
- * +-------+---------+-------+
436
- *
437
- * > SELECT * FROM speciesInDb;
438
- * +------+-------+
439
- * | _id | price |
440
- * +------+-------+
441
- * | dog | 5 |
442
- * | cat | 4 |
443
- * +------+-------+
444
- * ```
445
- *
446
- * With the configuration above, this will load into a Store with Tables that
447
- * look like this:
448
- *
449
- * ```json
450
- * {
451
- * "pets": {
452
- * "fido": {"species": "dog", "color": "brown"},
453
- * "felix": {"species": "cat", "color": "black"},
454
- * },
455
- * "species": {
456
- * "dog": {"price": 5},
457
- * "cat": {"price": 4},
458
- * },
459
- * }
460
- * ```
461
- * @category Configuration
462
- * @since v4.0.0
463
- */
464
- export type DpcTabularLoad<Schema extends OptionalTablesSchema> = {
465
- [tableName: string]:
466
- | {
467
- /**
468
- * The Id of the Store Table into which data from this database table
469
- * should be loaded.
470
- */
471
- tableId: TableIdFromSchema<Schema>;
472
- /**
473
- * The optional name of the column in the database table that will be
474
- * used as the Row Ids in the Store Table, defaulting to '_id'.
475
- */
476
- rowIdColumnName?: string;
477
- }
478
- | TableIdFromSchema<Schema>;
479
- };
480
-
481
- /**
482
- * The DpcTabularSave type describes the configuration for saving Tables in a
483
- * database-oriented Persister that is operating in tabular mode.
484
- *
485
- * It is an object where each key is an Id of a Store Table, and the value is a
486
- * child configuration object for how that Table should be saved out to the
487
- * database. The properties of the child configuration object are:
488
- *
489
- * ||Type|Description|
490
- * |-|-|-|
491
- * |`tableName`|string|The name of the database table out to which the Store Table should be saved.|
492
- * |`rowIdColumnName?`|string|The optional name of the column in the database table that will be used to save the Row Ids from the Store Table, defaulting to '_id'.|
493
- * |`deleteEmptyColumns?`|boolean|Whether columns in the database table will be removed if they are empty in the Store Table, defaulting to false.|
494
- * |`deleteEmptyTable?`|boolean|Whether tables in the database will be removed if the Store Table is empty, defaulting to false.|
495
- *
496
- * As a shortcut, if you do not need to specify a custom `rowIdColumnName`, or
497
- * enable the `deleteEmptyColumns` or `deleteEmptyTable` settings, you can
498
- * simply provide the name of the database table instead of the whole object.
499
- *
500
- * `deleteEmptyColumns` and `deleteEmptyTable` only have a guaranteed effect
501
- * when an explicit call is made to the Persister's save method. Columns and
502
- * tables will not necessarily be removed when the Persister is incrementally
503
- * 'autoSaving', due to performance reasons. If you want to be sure that your
504
- * database table matches a TinyBase Table without any extraneous columns,
505
- * simply call the save method at an idle moment.
506
- *
507
- * The 'Dpc' prefix indicates that this type is used within the
508
- * DatabasePersisterConfig type.
509
- * @example
510
- * When applied to a database Persister, this DatabasePersisterConfig will save
511
- * the data of two Store Tables (called 'pets' and 'species') into two database
512
- * tables (called 'petsInDb' and 'speciesInDb'). One has a column for the Row
513
- * Id called 'id' and will delete columns and the whole table if empty, the
514
- * other defaults to '_id' and will not delete columns or the whole table if
515
- * empty.
516
- *
517
- * ```js
518
- * import type {DatabasePersisterConfig} from 'tinybase';
519
- *
520
- * export const databasePersisterConfig: DatabasePersisterConfig = {
521
- * mode: 'tabular',
522
- * tables: {
523
- * save: {
524
- * pets: {
525
- * tableName: 'petsInDb',
526
- * deleteEmptyColumns: true,
527
- * deleteEmptyTable: true,
528
- * },
529
- * species: 'speciesInDb',
530
- * },
531
- * },
532
- * };
533
- * ```
534
- *
535
- * Imagine a Store with Tables that look like this:
536
- *
537
- * ```json
538
- * {
539
- * "pets": {
540
- * "fido": {"species": "dog", "color": "brown"},
541
- * "felix": {"species": "cat", "color": "black"},
542
- * },
543
- * "species": {
544
- * "dog": {"price": 5},
545
- * "cat": {"price": 4},
546
- * },
547
- * }
548
- * ```
549
- *
550
- * With the configuration above, this will save out to a database with tables
551
- * that look like this:
552
- *
553
- * ```
554
- * > SELECT * FROM petsInDb;
555
- * +-------+---------+-------+
556
- * | id | species | color |
557
- * +-------+---------+-------+
558
- * | fido | dog | brown |
559
- * | felix | cat | black |
560
- * +-------+---------+-------+
561
- *
562
- * > SELECT * FROM speciesInDb;
563
- * +------+-------+
564
- * | _id | price |
565
- * +------+-------+
566
- * | dog | 5 |
567
- * | cat | 4 |
568
- * +------+-------+
569
- * ```
570
- * @category Configuration
571
- * @since v4.0.0
572
- */
573
- export type DpcTabularSave<Schema extends OptionalTablesSchema> = {
574
- [TableId in TableIdFromSchema<Schema>]:
575
- | {
576
- /**
577
- * The name of the database table out to which the Store Table should be
578
- * saved.
579
- */
580
- tableName: string;
581
- /**
582
- * The optional name of the column in the database table that will be
583
- * used to save the Row Ids from the Store Table, defaulting to '_id'.
584
- */
585
- rowIdColumnName?: string;
586
- /**
587
- * Whether columns in the database table will be removed if they are
588
- * empty in the Store Table, defaulting to false.
589
- */
590
- deleteEmptyColumns?: boolean;
591
- /**
592
- * Whether tables in the database will be removed if the Store Table
593
- * is empty, defaulting to false.
594
- */
595
- deleteEmptyTable?: boolean;
596
- }
597
- | string;
598
- };
599
-
600
- /**
601
- * The DpcTabularValues type describes the configuration for handling Values in
602
- * a database-oriented Persister that is operating in tabular mode.
603
- *
604
- * Note that both loading and saving of Values from and to the database are
605
- * disabled by default.
606
- *
607
- * The 'Dpc' prefix indicates that this type is used within the
608
- * DatabasePersisterConfig type.
609
- * @example
610
- * When applied to a database Persister, this DatabasePersisterConfig will load
611
- * and save the data of a Store's Values into a database
612
- * table called 'my_tinybase_values'.
613
- *
614
- * ```js
615
- * import type {DatabasePersisterConfig} from 'tinybase';
616
- *
617
- * export const databasePersisterConfig: DatabasePersisterConfig = {
618
- * mode: 'tabular',
619
- * values: {
620
- * load: true,
621
- * save: true,
622
- * tableName: 'my_tinybase_values',
623
- * },
624
- * };
625
- * ```
626
- * @category Configuration
627
- * @since v4.0.0
628
- */
629
- export type DpcTabularValues = {
630
- /**
631
- * Whether Store Values will be loaded from a database table.
632
- */
633
- load?: boolean;
634
- /**
635
- * Whether Store Values will be saved to a database table.
636
- */
637
- save?: boolean;
638
- /**
639
- * The optional name of the database table from and to which the Store Values
640
- * should be loaded or saved, defaulting to `tinybase_values`.
641
- */
642
- tableName?: string;
643
- };
644
-
645
- /**
646
- * A Persister object lets you save and load Store data to and from different
647
- * locations, or underlying storage types.
648
- *
649
- * This is useful for preserving Store data between browser sessions or reloads,
650
- * saving or loading browser state to or from a server, or saving Store data to
651
- * disk in a environment with filesystem access.
652
- *
653
- * Creating a Persister depends on the choice of underlying storage where the
654
- * data is to be stored. Options include the createSessionPersister function,
655
- * the createLocalPersister function, the createRemotePersister function, and
656
- * the createFilePersister function. The createCustomPersister function can also
657
- * be used to easily create a fully customized way to save and load Store data.
658
- *
659
- * A Persister lets you explicit save or load data, with the save method and the
660
- * load method respectively. These methods are both asynchronous (since the
661
- * underlying data storage may also be) and return promises. As a result you
662
- * should use the `await` keyword to call them in a way that guarantees
663
- * subsequent execution order.
664
- *
665
- * When you don't want to deal with explicit persistence operations, a Persister
666
- * object also provides automatic saving and loading. Automatic saving listens
667
- * for changes to the Store and persists the data immediately. Automatic loading
668
- * listens (or polls) for changes to the persisted data and reflects those
669
- * changes in the Store.
670
- *
671
- * You can start automatic saving or loading with the startAutoSave method and
672
- * startAutoLoad method. Both are asynchronous since they will do an immediate
673
- * save and load before starting to listen for subsequent changes. You can stop
674
- * the behavior with the stopAutoSave method and stopAutoLoad method (which are
675
- * synchronous).
676
- *
677
- * You may often want to have both automatic saving and loading of a Store so
678
- * that changes are constantly synchronized (allowing basic state preservation
679
- * between browser tabs, for example). The framework has some basic provisions
680
- * to prevent race conditions - for example it will not attempt to save data if
681
- * it is currently loading it and vice-versa - and will sequentially schedule
682
- * methods that could cause race conditions.
683
- *
684
- * That said, be aware that you should always comprehensively test your
685
- * persistence strategy to understand the opportunity for data loss (in the case
686
- * of trying to save data to a server under poor network conditions, for
687
- * example).
688
- *
689
- * To help debug such issues, since v4.0.4, the create methods for all Persister
690
- * objects take an optional `onIgnoredError` argument. This is a handler for the
691
- * errors that the Persister would otherwise ignore when trying to save or load
692
- * data (such as when handling corrupted stored data). It's recommended you use
693
- * this for debugging persistence issues, but only in a development environment.
694
- * Database-based Persister objects also take an optional `onSqlCommand`
695
- * argument for logging commands and queries made to the underlying database.
696
- * @example
697
- * This example creates a Store, persists it to the browser's session storage as
698
- * a JSON string, changes the persisted data, updates the Store from it, and
699
- * finally destroys the Persister again.
700
- *
701
- * ```js
702
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
703
- * import {createStore} from 'tinybase';
704
- *
705
- * const store = createStore().setTables({pets: {fido: {species: 'dog'}}});
706
- * const persister = createSessionPersister(store, 'pets');
707
- *
708
- * await persister.save();
709
- * console.log(sessionStorage.getItem('pets'));
710
- * // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
711
- *
712
- * sessionStorage.setItem('pets', '[{"pets":{"toto":{"species":"dog"}}},{}]');
713
- * await persister.load();
714
- * console.log(store.getTables());
715
- * // -> {pets: {toto: {species: 'dog'}}}
716
- *
717
- * persister.destroy();
718
- * sessionStorage.clear();
719
- * ```
720
- * @example
721
- * This example creates a Store, and automatically saves and loads it to the
722
- * browser's session storage as a JSON string. Changes to the Store data, or the
723
- * persisted data (implicitly firing a StorageEvent), are reflected accordingly.
724
- *
725
- * ```js
726
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
727
- * import {createStore} from 'tinybase';
728
- *
729
- * const store = createStore();
730
- * const persister = createSessionPersister(store, 'pets');
731
- *
732
- * await persister.startAutoLoad([{pets: {fido: {species: 'dog'}}}, {}]);
733
- * await persister.startAutoSave();
734
- *
735
- * store.setTables({pets: {felix: {species: 'cat'}}});
736
- * // ...
737
- * console.log(sessionStorage.getItem('pets'));
738
- * // -> '[{"pets":{"felix":{"species":"cat"}}},{}]'
739
- *
740
- * // In another browser tab:
741
- * sessionStorage.setItem('pets', '[{"pets":{"toto":{"species":"dog"}}},{}]');
742
- * // -> StorageEvent('storage', {storageArea: sessionStorage, key: 'pets'})
743
- *
744
- * // ...
745
- * console.log(store.getTables());
746
- * // -> {pets: {toto: {species: 'dog'}}}
747
- *
748
- * persister.destroy();
749
- * sessionStorage.clear();
750
- * ```
751
- * @category Persister
752
- */
753
- export interface Persister<
754
- in out Schemas extends OptionalSchemas,
755
- StoreType extends StoreTypes = 1,
756
- > {
757
- /**
758
- * The load method gets persisted data from storage, and loads it into the
759
- * Store with which the Persister is associated, once.
760
- *
761
- * This has schema-based typing. The following is a simplified representation:
762
- *
763
- * ```ts override
764
- * load(initialContent?: Content): Promise<this>;
765
- * ```
766
- *
767
- * The optional parameter allows you to specify what the initial content for
768
- * the Store will be if there is nothing currently persisted or if the load
769
- * fails (for example when the Persister is remote and the environment is
770
- * offline). This allows you to fallback or instantiate a Store whether it's
771
- * loading from previously persisted storage or being run for the first time.
772
- *
773
- * This method is asynchronous because the persisted data may be on a remote
774
- * machine or a filesystem. Even for those storage types that are synchronous
775
- * (like browser storage) it is still recommended that you `await` calls to
776
- * this method or handle the return type natively as a Promise.
777
- * @param initialContent An optional Content object used when the underlying
778
- * storage has not previously been populated.
779
- * @returns A Promise containing a reference to the Persister object.
780
- * @example
781
- * This example creates an empty Store, and loads data into it from the
782
- * browser's session storage, which for the purposes of this example has been
783
- * previously populated.
784
- *
785
- * ```js
786
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
787
- * import {createStore} from 'tinybase';
788
- *
789
- * sessionStorage.setItem('pets', '[{"pets":{"fido":{"species":"dog"}}},{}]');
790
- *
791
- * const store = createStore();
792
- * const persister = createSessionPersister(store, 'pets');
793
- *
794
- * await persister.load();
795
- * console.log(store.getTables());
796
- * // -> {pets: {fido: {species: 'dog'}}}
797
- *
798
- * sessionStorage.clear();
799
- * ```
800
- * @example
801
- * This example creates an empty Store, and loads data into it from the
802
- * browser's session storage, which is at first empty, so the optional
803
- * parameter is used. The second time the load method is called, data has
804
- * previously been persisted and instead, that is loaded.
805
- *
806
- * ```js
807
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
808
- * import {createStore} from 'tinybase';
809
- *
810
- * const store = createStore();
811
- * const persister = createSessionPersister(store, 'pets');
812
- *
813
- * await persister.load([{pets: {fido: {species: 'dog'}}}, {}]);
814
- * console.log(store.getTables());
815
- * // -> {pets: {fido: {species: 'dog'}}}
816
- *
817
- * sessionStorage.setItem('pets', '[{"pets":{"toto":{"species":"dog"}}},{}]');
818
- * await persister.load({pets: {fido: {species: 'dog'}}});
819
- * console.log(store.getTables());
820
- * // -> {pets: {toto: {species: 'dog'}}}
821
- *
822
- * sessionStorage.clear();
823
- * ```
824
- * @category Load
825
- */
826
- load(initialContent?: Content<Schemas, true>): Promise<this>;
827
-
828
- /**
829
- * The startAutoLoad method gets persisted data from storage, and loads it
830
- * into the Store with which the Persister is associated, once, and then
831
- * continuously.
832
- *
833
- * This has schema-based typing. The following is a simplified representation:
834
- *
835
- * ```ts override
836
- * startAutoLoad(initialContent?: Content): Promise<this>;
837
- * ```
838
- *
839
- * The optional parameter allows you to specify what the initial content for
840
- * the Store will be if there is nothing currently persisted or if the load
841
- * fails (for example when the Persister is remote and the environment is
842
- * offline). This allows you to fallback or instantiate a Store whether it's
843
- * loading from previously persisted storage or being run for the first time.
844
- *
845
- * This method first runs a single call to the load method to ensure the data
846
- * is in sync with the persisted storage. It then continues to watch for
847
- * changes to the underlying data (either through events or polling, depending
848
- * on the storage type), automatically loading the data into the Store.
849
- *
850
- * This method is asynchronous because it starts by making a single call to
851
- * the asynchronous load method. Even for those storage types that are
852
- * synchronous (like browser storage) it is still recommended that you `await`
853
- * calls to this method or handle the return type natively as a Promise.
854
- * @param initialContent An optional Content object used when the underlying
855
- * storage has not previously been populated.
856
- * @returns A Promise containing a reference to the Persister object.
857
- * @example
858
- * This example creates an empty Store, and loads data into it from the
859
- * browser's session storage, which at first is empty (so the `initialTables`
860
- * parameter is used). Subsequent changes to the underlying storage are then
861
- * reflected in the Store (in this case through detection of StorageEvents
862
- * from session storage changes made in another browser tab).
863
- *
864
- * ```js
865
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
866
- * import {createStore} from 'tinybase';
867
- *
868
- * const store = createStore();
869
- * const persister = createSessionPersister(store, 'pets');
870
- *
871
- * await persister.startAutoLoad([{pets: {fido: {species: 'dog'}}}, {}]);
872
- * console.log(store.getTables());
873
- * // -> {pets: {fido: {species: 'dog'}}}
874
- *
875
- * // In another browser tab:
876
- * sessionStorage.setItem('pets', '[{"pets":{"toto":{"species":"dog"}}},{}]');
877
- * // -> StorageEvent('storage', {storageArea: sessionStorage, key: 'pets'})
878
- *
879
- * // ...
880
- * console.log(store.getTables());
881
- * // -> {pets: {toto: {species: 'dog'}}}
882
- *
883
- * persister.destroy();
884
- * sessionStorage.clear();
885
- * ```
886
- * @category Load
887
- */
888
- startAutoLoad(initialContent?: Content<Schemas, true>): Promise<this>;
889
-
890
- /**
891
- * The stopAutoLoad method stops the automatic loading of data from storage
892
- * previously started with the startAutoLoad method.
893
- *
894
- * If the Persister is not currently set to automatically load, this method
895
- * has no effect.
896
- * @returns A reference to the Persister object.
897
- * @example
898
- * This example creates an empty Store, and starts automatically loading data
899
- * into it from the browser's session storage. Once the automatic loading is
900
- * stopped, subsequent changes are not reflected in the Store.
901
- *
902
- * ```js
903
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
904
- * import {createStore} from 'tinybase';
905
- *
906
- * const store = createStore();
907
- * const persister = createSessionPersister(store, 'pets');
908
- * await persister.startAutoLoad();
909
- *
910
- * // In another browser tab:
911
- * sessionStorage.setItem('pets', '[{"pets":{"toto":{"species":"dog"}}},{}]');
912
- * // -> StorageEvent('storage', {storageArea: sessionStorage, key: 'pets'})
913
- * // ...
914
- * console.log(store.getTables());
915
- * // -> {pets: {toto: {species: 'dog'}}}
916
- *
917
- * persister.stopAutoLoad();
918
- *
919
- * // In another browser tab:
920
- * sessionStorage.setItem(
921
- * 'pets',
922
- * '[{"pets":{"felix":{"species":"cat"}}},{}]',
923
- * );
924
- * // -> StorageEvent('storage', {storageArea: sessionStorage, key: 'pets'})
925
- * // ...
926
- * console.log(store.getTables());
927
- * // -> {pets: {toto: {species: 'dog'}}}
928
- * // Storage change has not been automatically loaded.
929
- *
930
- * persister.destroy();
931
- * sessionStorage.clear();
932
- * ```
933
- * @category Load
934
- */
935
- stopAutoLoad(): this;
936
-
937
- /**
938
- * The isAutoLoading method lets you find out if the Persister is currently
939
- * automatically loading its content.
940
- * @returns A boolean indicating whether the Persister is currently
941
- * autoLoading.
942
- * @example
943
- * This example creates a Persister and queries whether it is autoLoading.
944
- *
945
- * ```js
946
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
947
- * import {createStore} from 'tinybase';
948
- *
949
- * const persister = createSessionPersister(createStore(), 'pets');
950
- *
951
- * console.log(persister.isAutoLoading());
952
- * // -> false
953
- *
954
- * await persister.startAutoLoad();
955
- * console.log(persister.isAutoLoading());
956
- * // -> true
957
- *
958
- * await persister.stopAutoLoad();
959
- * console.log(persister.isAutoLoading());
960
- * // -> false
961
- * ```
962
- * @category Load
963
- * @since v5.0.0
964
- */
965
- isAutoLoading(): boolean;
966
-
967
- /**
968
- * The save method takes data from the Store with which the Persister is
969
- * associated and persists it into storage, once.
970
- *
971
- * This method is asynchronous because the persisted data may be on a remote
972
- * machine or a filesystem. Even for those storage types that are synchronous
973
- * (like browser storage) it is still recommended that you `await` calls to
974
- * this method or handle the return type natively as a Promise.
975
- * @returns A Promise containing a reference to the Persister object.
976
- * @example
977
- * This example creates a Store with some data, and saves into the browser's
978
- * session storage.
979
- *
980
- * ```js
981
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
982
- * import {createStore} from 'tinybase';
983
- *
984
- * const store = createStore().setTables({pets: {fido: {species: 'dog'}}});
985
- * const persister = createSessionPersister(store, 'pets');
986
- *
987
- * await persister.save();
988
- * console.log(sessionStorage.getItem('pets'));
989
- * // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
990
- *
991
- * persister.destroy();
992
- * sessionStorage.clear();
993
- * ```
994
- * @category Save
995
- */
996
- save(): Promise<this>;
997
-
998
- /**
999
- * The save method takes data from the Store with which the Persister is
1000
- * associated and persists it into storage, once, and then continuously.
1001
- *
1002
- * This method first runs a single call to the save method to ensure the data
1003
- * is in sync with the persisted storage. It then continues to watch for
1004
- * changes to the Store, automatically saving the data to storage.
1005
- *
1006
- * This method is asynchronous because it starts by making a single call to
1007
- * the asynchronous save method. Even for those storage types that are
1008
- * synchronous (like browser storage) it is still recommended that you `await`
1009
- * calls to this method or handle the return type natively as a Promise.
1010
- * @returns A Promise containing a reference to the Persister object.
1011
- * @example
1012
- * This example creates a Store with some data, and saves into the browser's
1013
- * session storage. Subsequent changes to the Store are then automatically
1014
- * saved to the underlying storage.
1015
- *
1016
- * ```js
1017
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
1018
- * import {createStore} from 'tinybase';
1019
- *
1020
- * const store = createStore().setTables({pets: {fido: {species: 'dog'}}});
1021
- * const persister = createSessionPersister(store, 'pets');
1022
- *
1023
- * await persister.startAutoSave();
1024
- * console.log(sessionStorage.getItem('pets'));
1025
- * // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
1026
- *
1027
- * store.setTables({pets: {toto: {species: 'dog'}}});
1028
- * // ...
1029
- * console.log(sessionStorage.getItem('pets'));
1030
- * // -> '[{"pets":{"toto":{"species":"dog"}}},{}]'
1031
- *
1032
- * sessionStorage.clear();
1033
- * ```
1034
- * @category Save
1035
- */
1036
- startAutoSave(): Promise<this>;
1037
-
1038
- /**
1039
- * The stopAutoSave method stops the automatic save of data to storage
1040
- * previously started with the startAutoSave method.
1041
- *
1042
- * If the Persister is not currently set to automatically save, this method
1043
- * has no effect.
1044
- * @returns A reference to the Persister object.
1045
- * @example
1046
- * This example creates a Store with some data, and saves into the browser's
1047
- * session storage. Subsequent changes to the Store are then automatically
1048
- * saved to the underlying storage. Once the automatic saving is
1049
- * stopped, subsequent changes are not reflected.
1050
- *
1051
- * ```js
1052
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
1053
- * import {createStore} from 'tinybase';
1054
- *
1055
- * const store = createStore().setTables({pets: {fido: {species: 'dog'}}});
1056
- * const persister = createSessionPersister(store, 'pets');
1057
- * await persister.startAutoSave();
1058
- *
1059
- * store.setTables({pets: {toto: {species: 'dog'}}});
1060
- * // ...
1061
- * console.log(sessionStorage.getItem('pets'));
1062
- * // -> '[{"pets":{"toto":{"species":"dog"}}},{}]'
1063
- *
1064
- * persister.stopAutoSave();
1065
- *
1066
- * store.setTables({pets: {felix: {species: 'cat'}}});
1067
- * // ...
1068
- * console.log(sessionStorage.getItem('pets'));
1069
- * // -> '[{"pets":{"toto":{"species":"dog"}}},{}]'
1070
- * // Store change has not been automatically saved.
1071
- *
1072
- * sessionStorage.clear();
1073
- * ```
1074
- * @category Save
1075
- */
1076
- stopAutoSave(): this;
1077
-
1078
- /**
1079
- * The isAutoSaving method lets you find out if the Persister is currently
1080
- * automatically saving its content.
1081
- * @returns A boolean indicating whether the Persister is currently
1082
- * autoSaving.
1083
- * @example
1084
- * This example creates a Persister and queries whether it is autoSaving.
1085
- *
1086
- * ```js
1087
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
1088
- * import {createStore} from 'tinybase';
1089
- *
1090
- * const persister = createSessionPersister(createStore(), 'pets');
1091
- *
1092
- * console.log(persister.isAutoSaving());
1093
- * // -> false
1094
- *
1095
- * await persister.startAutoSave();
1096
- * console.log(persister.isAutoSaving());
1097
- * // -> true
1098
- *
1099
- * await persister.stopAutoSave();
1100
- * console.log(persister.isAutoSaving());
1101
- * // -> false
1102
- * ```
1103
- * @category Save
1104
- * @since v5.0.0
1105
- */
1106
- isAutoSaving(): boolean;
1107
-
1108
- /**
1109
- * The schedule method allows you to queue up a series of asynchronous actions
1110
- * that must run in sequence during persistence.
1111
- *
1112
- * For example, a database Persister may need to ensure that multiple
1113
- * asynchronous tasks to check and update the database schema are completed
1114
- * before data is written to it. Therefore it's most likely you will be using
1115
- * this method inside your `setPersisted` implementation.
1116
- *
1117
- * Call this method to add a single asynchronous action, or a sequence of them
1118
- * in one call. This will also start to run the first task in the queue (which
1119
- * once complete will then run the next, and so on), and so this method itself
1120
- * is also asynchronous and returns a promise of the Persister.
1121
- * @returns A reference to the Persister object.
1122
- * @example
1123
- * This example creates a custom Persister object against a newly-created
1124
- * Store and then sequences two tasks in order to update its data on a
1125
- * hypothetical remote system.
1126
- *
1127
- * ```js yolo
1128
- * import {
1129
- * checkRemoteSystemIsReady,
1130
- * getDataFromRemoteSystem,
1131
- * sendDataToRemoteSystem,
1132
- * } from 'custom-remote-handlers';
1133
- * import {createCustomPersister, createStore} from 'tinybase';
1134
- *
1135
- * const store = createStore();
1136
- * const persister = createCustomPersister(
1137
- * store,
1138
- * async () => {
1139
- * // getPersisted
1140
- * return await getDataFromRemoteSystem();
1141
- * },
1142
- * async (getContent) => {
1143
- * // setPersisted
1144
- * await persister.schedule(
1145
- * async () => await checkRemoteSystemIsReady(),
1146
- * async () => await sendDataToRemoteSystem(getContent()),
1147
- * );
1148
- * },
1149
- * (listener) => setInterval(listener, 1000),
1150
- * (interval) => clearInterval(interval),
1151
- * );
1152
- * ```
1153
- * @category Lifecycle
1154
- * @since v4.0.0
1155
- */
1156
- schedule(...actions: Promise<any>[]): Promise<this>;
1157
-
1158
- /**
1159
- * The getStore method returns a reference to the underlying Store that is
1160
- * backing this Persister object.
1161
- * @returns A reference to the Store.
1162
- * @example
1163
- * This example creates a Persister object against a newly-created Store and
1164
- * then gets its reference in order to update its data.
1165
- *
1166
- * This has schema-based typing. The following is a simplified representation:
1167
- *
1168
- * ```ts override
1169
- * getStore(): PersistedStore<StoreType>;
1170
- * ```
1171
- *
1172
- * ```js
1173
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
1174
- * import {createStore} from 'tinybase';
1175
- *
1176
- * const persister = createSessionPersister(createStore(), 'pets');
1177
- * await persister.startAutoSave();
1178
- *
1179
- * persister.getStore().setTables({pets: {fido: {species: 'dog'}}});
1180
- * // ...
1181
- * console.log(sessionStorage.getItem('pets'));
1182
- * // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
1183
- *
1184
- * sessionStorage.clear();
1185
- * ```
1186
- * @category Getter
1187
- */
1188
- getStore(): PersistedStore<Schemas, StoreType>;
1189
-
1190
- /**
1191
- * The destroy method should be called when this Persister object is no longer
1192
- * used.
1193
- *
1194
- * This guarantees that all of the listeners that the object registered with
1195
- * the underlying Store and storage are removed and it can be correctly
1196
- * garbage collected. It is equivalent to running the stopAutoLoad method and
1197
- * the stopAutoSave method in succession.
1198
- * @example
1199
- * This example creates a Store, associates a Persister object with it (that
1200
- * registers a TablesListener with the underlying Store), and then destroys it
1201
- * again, removing the listener.
1202
- *
1203
- * ```js
1204
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
1205
- * import {createStore} from 'tinybase';
1206
- *
1207
- * const store = createStore();
1208
- * const persister = createSessionPersister(store, 'pets');
1209
- * await persister.startAutoSave();
1210
- *
1211
- * console.log(store.getListenerStats().transaction);
1212
- * // -> 1
1213
- *
1214
- * persister.destroy();
1215
- *
1216
- * console.log(store.getListenerStats().transaction);
1217
- * // -> 0
1218
- * ```
1219
- * @category Lifecycle
1220
- */
1221
- destroy(): this;
1222
-
1223
- /**
1224
- * The getStats method provides a set of statistics about the Persister, and
1225
- * is used for debugging purposes.
1226
- *
1227
- * The PersisterStats object contains a count of the number of times the
1228
- * Persister has loaded and saved data.
1229
- *
1230
- * The statistics are only populated in a debug build: production builds
1231
- * return an empty object. The method is intended to be used during
1232
- * development to ensure your persistence layer is acting as expected, for
1233
- * example.
1234
- * @returns A PersisterStats object containing Persister load and save
1235
- * statistics.
1236
- * @example
1237
- * This example gets the load and save statistics of a Persister object.
1238
- * Remember that the startAutoLoad method invokes an explicit load when it
1239
- * starts, and the startAutoSave method invokes an explicit save when it
1240
- * starts - so those numbers are included in addition to the loads and saves
1241
- * invoked by changes to the Store and to the underlying storage.
1242
- *
1243
- * ```js
1244
- * import {createSessionPersister} from 'tinybase/persisters/persister-browser';
1245
- * import {createStore} from 'tinybase';
1246
- *
1247
- * const store = createStore();
1248
- * const persister = createSessionPersister(store, 'pets');
1249
- *
1250
- * await persister.startAutoLoad({pets: {fido: {species: 'dog'}}});
1251
- * await persister.startAutoSave();
1252
- *
1253
- * store.setTables({pets: {felix: {species: 'cat'}}});
1254
- * // ...
1255
- *
1256
- * sessionStorage.setItem('pets', '[{"pets":{"toto":{"species":"dog"}}},{}]');
1257
- * // -> StorageEvent('storage', {storageArea: sessionStorage, key: 'pets'})
1258
- * // ...
1259
- *
1260
- * console.log(persister.getStats());
1261
- * // -> {loads: 2, saves: 2}
1262
- *
1263
- * persister.destroy();
1264
- * sessionStorage.clear();
1265
- * ```
1266
- * @category Development
1267
- */
1268
- getStats(): PersisterStats;
1269
- }
1270
-
1271
- /**
1272
- * The createCustomPersister function creates a Persister object that you can
1273
- * configure to persist the Store in any way you wish.
1274
- *
1275
- * This has schema-based typing. The following is a simplified representation:
1276
- *
1277
- * ```ts override
1278
- * createCustomPersister<
1279
- * ListeningHandle,
1280
- * StoreType extends StoreTypes = 1,
1281
- * >(
1282
- * store: PersistedStore<StoreType>,
1283
- * getPersisted: () => Promise<PersistedContent<StoreType> | undefined>,
1284
- * setPersisted: (
1285
- * getContent: () => PersistedContent<StoreType>,
1286
- * changes?: PersistedChanges<StoreType>,
1287
- * ) => Promise<void>,
1288
- * addPersisterListener: (
1289
- * listener: PersisterListener<StoreType>,
1290
- * ) => ListeningHandle,
1291
- * delPersisterListener: (listeningHandle: ListeningHandle) => void,
1292
- * onIgnoredError?: (error: any) => void,
1293
- * supportedStoreType?: StoreType,
1294
- * ): Persister<StoreType>;
1295
- * ```
1296
- *
1297
- * As well as providing a reference to the Store to persist, you must provide
1298
- * functions that handle how to fetch, write, and listen to, the persistence
1299
- * layer.
1300
- *
1301
- * The other creation functions (such as the createSessionPersister function and
1302
- * createFilePersister function, for example) all use this function under the
1303
- * covers. See those implementations for ideas on how to implement your own
1304
- * Persister types.
1305
- *
1306
- * This API changed in v4.0. Any custom persisters created on previous versions
1307
- * should be upgraded. Most notably, the `setPersisted` function parameter is
1308
- * provided with a `getContent` function to get the content from the Store
1309
- * itself, rather than being passed pre-serialized JSON. It also receives
1310
- * information about the changes made during a transaction. The `getPersisted`
1311
- * function must return the content (or nothing) rather than JSON.
1312
- * `startListeningToPersisted` has been renamed `addPersisterListener`, and
1313
- * `stopListeningToPersisted` has been renamed `delPersisterListener`.
1314
- * @param store The Store to persist.
1315
- * @param getPersisted An asynchronous function which will fetch content from
1316
- * the persistence layer (or `undefined` if not present).
1317
- * @param setPersisted An asynchronous function which will send content to the
1318
- * persistence layer. Since v4.0, it receives functions for getting the Store
1319
- * content and information about the changes made during a transaction. Since
1320
- * v5.0, the changes are received directly by reference, rather than an
1321
- * accessor.
1322
- * @param addPersisterListener A function that will register a `listener`
1323
- * listener on underlying changes to the persistence layer. You can return a
1324
- * listening handle that will be provided again when `delPersisterListener` is
1325
- * called.
1326
- * @param delPersisterListener A function that will unregister the listener from
1327
- * the underlying changes to the persistence layer. It receives whatever was
1328
- * returned from your `addPersisterListener` implementation.
1329
- * @param onIgnoredError An optional handler for the errors that the Persister
1330
- * would otherwise ignore when trying to save or load data. This is suitable for
1331
- * debugging persistence issues in a development environment, since v4.0.4.
1332
- * @param supportedStoreType Since v5.0, an optional integer to indicate which
1333
- * types of Store are supported by this Persister: `1` indicates only a regular
1334
- * Store is supported, `2` indicates only a MergeableStore is supported, and `3`
1335
- * indicates that both Store and MergeableStore are supported.
1336
- * @returns A reference to the new Persister object.
1337
- * @example
1338
- * This example creates a custom Persister object and persists the Store to a
1339
- * local string called `storeJson` and which would automatically load by polling
1340
- * for changes every second.
1341
- *
1342
- * ```js
1343
- * import {createCustomPersister, createStore} from 'tinybase';
1344
- *
1345
- * const store = createStore().setTables({pets: {fido: {species: 'dog'}}});
1346
- * let storeJson;
1347
- *
1348
- * const persister = createCustomPersister(
1349
- * store,
1350
- * async () => {
1351
- * // getPersisted
1352
- * return JSON.parse(storeJson);
1353
- * },
1354
- * async (getContent) => {
1355
- * // setPersisted
1356
- * storeJson = JSON.stringify(getContent());
1357
- * },
1358
- * (listener) => setInterval(listener, 1000),
1359
- * (interval) => clearInterval(interval),
1360
- * );
1361
- *
1362
- * await persister.save();
1363
- * console.log(storeJson);
1364
- * // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
1365
- *
1366
- * storeJson = '[{"pets":{"fido":{"species":"dog","color":"brown"}}},{}]';
1367
- * await persister.load();
1368
- *
1369
- * console.log(store.getTables());
1370
- * // -> {pets: {fido: {species: 'dog', color: 'brown'}}}
1371
- *
1372
- * persister.destroy();
1373
- * ```
1374
- * @category Creation
1375
- */
1376
- export function createCustomPersister<
1377
- Schemas extends OptionalSchemas,
1378
- ListeningHandle,
1379
- StoreType extends StoreTypes = 1,
1380
- >(
1381
- store: PersistedStore<Schemas, StoreType>,
1382
- getPersisted: () => Promise<PersistedContent<Schemas, StoreType> | undefined>,
1383
- setPersisted: (
1384
- getContent: () => PersistedContent<Schemas, StoreType>,
1385
- changes?: PersistedChanges<Schemas, StoreType>,
1386
- ) => Promise<void>,
1387
- addPersisterListener: (
1388
- listener: PersisterListener<Schemas, StoreType>,
1389
- ) => ListeningHandle,
1390
- delPersisterListener: (listeningHandle: ListeningHandle) => void,
1391
- onIgnoredError?: (error: any) => void,
1392
- supportedStoreType?: StoreType,
1393
- ): Persister<Schemas, StoreType>;