tinybase 5.0.0-beta.5 → 5.0.0-beta.6

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 (353) hide show
  1. package/lib/cjs/mergeable-store.cjs +1 -1
  2. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  4. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  6. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  8. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  10. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  12. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  14. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-file.cjs +1 -1
  16. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  18. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-libsql.cjs +1 -1
  20. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  22. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-powersync.cjs +1 -0
  24. package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  26. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  28. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  30. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  31. package/lib/cjs/persisters/persister-sync.cjs +1 -0
  32. package/lib/cjs/persisters/persister-sync.cjs.gz +0 -0
  33. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  34. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  35. package/lib/cjs/persisters.cjs +1 -1
  36. package/lib/cjs/persisters.cjs.gz +0 -0
  37. package/lib/cjs/store.cjs +1 -1
  38. package/lib/cjs/store.cjs.gz +0 -0
  39. package/lib/cjs/tinybase.cjs +1 -1
  40. package/lib/cjs/tinybase.cjs.gz +0 -0
  41. package/lib/cjs/tools.cjs +1 -1
  42. package/lib/cjs/tools.cjs.gz +0 -0
  43. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  44. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  45. package/lib/cjs/ui-react.cjs +1 -1
  46. package/lib/cjs/ui-react.cjs.gz +0 -0
  47. package/lib/cjs-es6/mergeable-store.cjs +1 -1
  48. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  49. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  50. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  51. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  52. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  53. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  54. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -0
  70. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  74. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  75. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  76. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  77. package/lib/cjs-es6/persisters/persister-sync.cjs +1 -0
  78. package/lib/cjs-es6/persisters/persister-sync.cjs.gz +0 -0
  79. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  80. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  81. package/lib/cjs-es6/persisters.cjs +1 -1
  82. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  83. package/lib/cjs-es6/store.cjs +1 -1
  84. package/lib/cjs-es6/store.cjs.gz +0 -0
  85. package/lib/cjs-es6/tinybase.cjs +1 -1
  86. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  87. package/lib/cjs-es6/tools.cjs +1 -1
  88. package/lib/cjs-es6/tools.cjs.gz +0 -0
  89. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  90. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  91. package/lib/cjs-es6/ui-react.cjs +1 -1
  92. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  93. package/lib/debug/mergeable-store.js +287 -130
  94. package/lib/debug/persisters/persister-automerge.js +39 -46
  95. package/lib/debug/persisters/persister-browser.js +39 -46
  96. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +64 -60
  97. package/lib/debug/persisters/persister-electric-sql.js +64 -60
  98. package/lib/debug/persisters/persister-expo-sqlite-next.js +64 -60
  99. package/lib/debug/persisters/persister-expo-sqlite.js +64 -60
  100. package/lib/debug/persisters/persister-file.js +39 -46
  101. package/lib/debug/persisters/persister-indexed-db.js +39 -46
  102. package/lib/debug/persisters/persister-libsql.js +64 -60
  103. package/lib/debug/persisters/persister-partykit-client.js +39 -46
  104. package/lib/debug/persisters/persister-powersync.js +917 -0
  105. package/lib/debug/persisters/persister-remote.js +39 -46
  106. package/lib/debug/persisters/persister-sqlite-wasm.js +64 -60
  107. package/lib/debug/persisters/persister-sqlite3.js +64 -60
  108. package/lib/debug/persisters/persister-sync.js +594 -0
  109. package/lib/debug/persisters/persister-yjs.js +41 -48
  110. package/lib/debug/persisters.js +38 -45
  111. package/lib/debug/store.js +44 -32
  112. package/lib/debug/tinybase.js +322 -173
  113. package/lib/debug/tools.js +2 -2
  114. package/lib/debug/ui-react-dom.js +81 -76
  115. package/lib/debug/ui-react.js +1 -1
  116. package/lib/es6/mergeable-store.js +1 -1
  117. package/lib/es6/mergeable-store.js.gz +0 -0
  118. package/lib/es6/persisters/persister-automerge.js +1 -1
  119. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  120. package/lib/es6/persisters/persister-browser.js +1 -1
  121. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  122. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  123. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  124. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  125. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  126. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  127. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  128. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  129. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  130. package/lib/es6/persisters/persister-file.js +1 -1
  131. package/lib/es6/persisters/persister-file.js.gz +0 -0
  132. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  133. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  134. package/lib/es6/persisters/persister-libsql.js +1 -1
  135. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  136. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  137. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  138. package/lib/es6/persisters/persister-powersync.js +1 -0
  139. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  140. package/lib/es6/persisters/persister-remote.js +1 -1
  141. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  142. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  143. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  144. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  145. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  146. package/lib/es6/persisters/persister-sync.js +1 -0
  147. package/lib/es6/persisters/persister-sync.js.gz +0 -0
  148. package/lib/es6/persisters/persister-yjs.js +1 -1
  149. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  150. package/lib/es6/persisters.js +1 -1
  151. package/lib/es6/persisters.js.gz +0 -0
  152. package/lib/es6/store.js +1 -1
  153. package/lib/es6/store.js.gz +0 -0
  154. package/lib/es6/tinybase.js +1 -1
  155. package/lib/es6/tinybase.js.gz +0 -0
  156. package/lib/es6/tools.js +1 -1
  157. package/lib/es6/tools.js.gz +0 -0
  158. package/lib/es6/ui-react-dom-debug.js +1 -1
  159. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  160. package/lib/es6/ui-react.js +1 -1
  161. package/lib/es6/ui-react.js.gz +0 -0
  162. package/lib/mergeable-store.js +1 -1
  163. package/lib/mergeable-store.js.gz +0 -0
  164. package/lib/persisters/persister-automerge.js +1 -1
  165. package/lib/persisters/persister-automerge.js.gz +0 -0
  166. package/lib/persisters/persister-browser.js +1 -1
  167. package/lib/persisters/persister-browser.js.gz +0 -0
  168. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  169. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  170. package/lib/persisters/persister-electric-sql.js +1 -1
  171. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  172. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  173. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  174. package/lib/persisters/persister-expo-sqlite.js +1 -1
  175. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  176. package/lib/persisters/persister-file.js +1 -1
  177. package/lib/persisters/persister-file.js.gz +0 -0
  178. package/lib/persisters/persister-indexed-db.js +1 -1
  179. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  180. package/lib/persisters/persister-libsql.js +1 -1
  181. package/lib/persisters/persister-libsql.js.gz +0 -0
  182. package/lib/persisters/persister-partykit-client.js +1 -1
  183. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  184. package/lib/persisters/persister-powersync.js +1 -0
  185. package/lib/persisters/persister-powersync.js.gz +0 -0
  186. package/lib/persisters/persister-remote.js +1 -1
  187. package/lib/persisters/persister-remote.js.gz +0 -0
  188. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  189. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  190. package/lib/persisters/persister-sqlite3.js +1 -1
  191. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  192. package/lib/persisters/persister-sync.js +1 -0
  193. package/lib/persisters/persister-sync.js.gz +0 -0
  194. package/lib/persisters/persister-yjs.js +1 -1
  195. package/lib/persisters/persister-yjs.js.gz +0 -0
  196. package/lib/persisters.js +1 -1
  197. package/lib/persisters.js.gz +0 -0
  198. package/lib/store.js +1 -1
  199. package/lib/store.js.gz +0 -0
  200. package/lib/tinybase.js +1 -1
  201. package/lib/tinybase.js.gz +0 -0
  202. package/lib/tools.js +1 -1
  203. package/lib/tools.js.gz +0 -0
  204. package/lib/types/checkpoints.d.ts +2 -2
  205. package/lib/types/indexes.d.ts +2 -2
  206. package/lib/types/mergeable-store.d.ts +121 -59
  207. package/lib/types/metrics.d.ts +2 -2
  208. package/lib/types/persisters/persister-automerge.d.ts +3 -0
  209. package/lib/types/persisters/persister-browser.d.ts +9 -2
  210. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +3 -0
  211. package/lib/types/persisters/persister-electric-sql.d.ts +3 -0
  212. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +3 -0
  213. package/lib/types/persisters/persister-expo-sqlite.d.ts +3 -0
  214. package/lib/types/persisters/persister-file.d.ts +5 -1
  215. package/lib/types/persisters/persister-indexed-db.d.ts +3 -0
  216. package/lib/types/persisters/persister-libsql.d.ts +3 -0
  217. package/lib/types/persisters/persister-partykit-client.d.ts +3 -0
  218. package/lib/types/persisters/persister-powersync.d.ts +157 -0
  219. package/lib/types/persisters/persister-remote.d.ts +3 -0
  220. package/lib/types/persisters/persister-sqlite-wasm.d.ts +3 -0
  221. package/lib/types/persisters/persister-sqlite3.d.ts +3 -0
  222. package/lib/types/persisters/persister-sync.d.ts +182 -0
  223. package/lib/types/persisters/persister-yjs.d.ts +5 -2
  224. package/lib/types/persisters.d.ts +60 -3
  225. package/lib/types/queries.d.ts +2 -2
  226. package/lib/types/relationships.d.ts +2 -2
  227. package/lib/types/store.d.ts +36 -3
  228. package/lib/types/tinybase.d.ts +9 -9
  229. package/lib/types/tools.d.ts +2 -2
  230. package/lib/types/ui-react.d.ts +8 -8
  231. package/lib/types/with-schemas/checkpoints.d.ts +2 -2
  232. package/lib/types/with-schemas/indexes.d.ts +2 -2
  233. package/lib/types/with-schemas/mergeable-store.d.ts +185 -87
  234. package/lib/types/with-schemas/metrics.d.ts +2 -2
  235. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +4 -1
  236. package/lib/types/with-schemas/persisters/persister-browser.d.ts +13 -6
  237. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +4 -1
  238. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +4 -1
  239. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +4 -1
  240. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +4 -1
  241. package/lib/types/with-schemas/persisters/persister-file.d.ts +7 -3
  242. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +4 -1
  243. package/lib/types/with-schemas/persisters/persister-libsql.d.ts +4 -1
  244. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +4 -1
  245. package/lib/types/with-schemas/persisters/persister-powersync.d.ts +170 -0
  246. package/lib/types/with-schemas/persisters/persister-remote.d.ts +4 -1
  247. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +4 -1
  248. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +4 -1
  249. package/lib/types/with-schemas/persisters/persister-sync.d.ts +195 -0
  250. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +6 -3
  251. package/lib/types/with-schemas/persisters.d.ts +79 -7
  252. package/lib/types/with-schemas/queries.d.ts +3 -3
  253. package/lib/types/with-schemas/relationships.d.ts +2 -2
  254. package/lib/types/with-schemas/store.d.ts +100 -3
  255. package/lib/types/with-schemas/tinybase.d.ts +9 -9
  256. package/lib/types/with-schemas/tools.d.ts +2 -2
  257. package/lib/types/with-schemas/ui-react.d.ts +8 -8
  258. package/lib/ui-react.js +1 -1
  259. package/lib/ui-react.js.gz +0 -0
  260. package/lib/umd/mergeable-store.js +1 -1
  261. package/lib/umd/mergeable-store.js.gz +0 -0
  262. package/lib/umd/persisters/persister-automerge.js +1 -1
  263. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  264. package/lib/umd/persisters/persister-browser.js +1 -1
  265. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  266. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  267. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  268. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  269. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  270. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  271. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  272. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  273. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  274. package/lib/umd/persisters/persister-file.js +1 -1
  275. package/lib/umd/persisters/persister-file.js.gz +0 -0
  276. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  277. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  278. package/lib/umd/persisters/persister-libsql.js +1 -1
  279. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  280. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  281. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  282. package/lib/umd/persisters/persister-powersync.js +1 -0
  283. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  284. package/lib/umd/persisters/persister-remote.js +1 -1
  285. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  286. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  287. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  288. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  289. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  290. package/lib/umd/persisters/persister-sync.js +1 -0
  291. package/lib/umd/persisters/persister-sync.js.gz +0 -0
  292. package/lib/umd/persisters/persister-yjs.js +1 -1
  293. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  294. package/lib/umd/persisters.js +1 -1
  295. package/lib/umd/persisters.js.gz +0 -0
  296. package/lib/umd/store.js +1 -1
  297. package/lib/umd/store.js.gz +0 -0
  298. package/lib/umd/tinybase.js +1 -1
  299. package/lib/umd/tinybase.js.gz +0 -0
  300. package/lib/umd/tools.js +1 -1
  301. package/lib/umd/tools.js.gz +0 -0
  302. package/lib/umd/ui-react-dom-debug.js +1 -1
  303. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  304. package/lib/umd/ui-react.js +1 -1
  305. package/lib/umd/ui-react.js.gz +0 -0
  306. package/lib/umd-es6/mergeable-store.js +1 -1
  307. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  308. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  309. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  310. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  311. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  312. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  313. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  314. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  315. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  316. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  317. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  318. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  319. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  320. package/lib/umd-es6/persisters/persister-file.js +1 -1
  321. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  322. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  323. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  324. package/lib/umd-es6/persisters/persister-libsql.js +1 -1
  325. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  326. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  327. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  328. package/lib/umd-es6/persisters/persister-powersync.js +1 -0
  329. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  330. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  331. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  332. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  333. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  334. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  335. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  336. package/lib/umd-es6/persisters/persister-sync.js +1 -0
  337. package/lib/umd-es6/persisters/persister-sync.js.gz +0 -0
  338. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  339. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  340. package/lib/umd-es6/persisters.js +1 -1
  341. package/lib/umd-es6/persisters.js.gz +0 -0
  342. package/lib/umd-es6/store.js +1 -1
  343. package/lib/umd-es6/store.js.gz +0 -0
  344. package/lib/umd-es6/tinybase.js +1 -1
  345. package/lib/umd-es6/tinybase.js.gz +0 -0
  346. package/lib/umd-es6/tools.js +1 -1
  347. package/lib/umd-es6/tools.js.gz +0 -0
  348. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  349. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  350. package/lib/umd-es6/ui-react.js +1 -1
  351. package/lib/umd-es6/ui-react.js.gz +0 -0
  352. package/package.json +37 -26
  353. package/readme.md +2 -2
@@ -10,8 +10,8 @@
10
10
  * @module store
11
11
  */
12
12
 
13
- import {Id, IdOrNull, Ids, Json} from './common.d';
14
- import {StoreAlias} from './internal/store.d';
13
+ import {Id, IdOrNull, Ids, Json} from './common.d.ts';
14
+ import {StoreAlias} from './internal/store.d.ts';
15
15
 
16
16
  /**
17
17
  * The TablesSchema type describes the tabular structure of a Store in terms of
@@ -156,7 +156,35 @@ export type OptionalSchemas = [OptionalTablesSchema, OptionalValuesSchema];
156
156
  */
157
157
  export type NoSchemas = [NoTablesSchema, NoValuesSchema];
158
158
 
159
- // Content
159
+ /**
160
+ * The Content type describes both the Tables and Values in a Store.
161
+ *
162
+ * It is an array of two objects, representing tabular and keyed value content.
163
+ * @example
164
+ * The following is a valid Content array:
165
+ * ```json
166
+ * [
167
+ * {
168
+ * "pets": {
169
+ * "fido": {
170
+ * "sold": false,
171
+ * "price": 4,
172
+ * },
173
+ * "felix": {
174
+ * "sold": true,
175
+ * "price": 5,
176
+ * },
177
+ * },
178
+ * },
179
+ * {
180
+ * open: true,
181
+ * employees: 3,
182
+ * },
183
+ * ]
184
+ * ```
185
+ * @category Store
186
+ * @since v5.0.0
187
+ */
160
188
  export type Content = [Tables, Values];
161
189
 
162
190
  /**
@@ -1317,6 +1345,9 @@ export type InvalidValues = {[valueId: Id]: any[]};
1317
1345
  * If not empty, the second object has an entry for each Value in a Store that
1318
1346
  * has had a change. If the entry is null, the Value was deleted, otherwise it
1319
1347
  * will contain the new Value it was changed to during the transaction.
1348
+ *
1349
+ * A third, required, item in the array is the digit `1`, so that instances of
1350
+ * Content and Changes types can be disambiguated.
1320
1351
  * @example
1321
1352
  * The following is a valid Changes array that conveys the following:
1322
1353
  * ```json
@@ -1332,6 +1363,7 @@ export type InvalidValues = {[valueId: Id]: any[]};
1332
1363
  * "pendingSales": null, // this Table was deleted
1333
1364
  * },
1334
1365
  * {}, // no changes to keyed value data in the Store
1366
+ * 1, // indicates that this is a Changes array
1335
1367
  * ]
1336
1368
  * ```
1337
1369
  * @category Transaction
@@ -1344,6 +1376,7 @@ export type Changes = [
1344
1376
  | undefined;
1345
1377
  },
1346
1378
  changedValues: {[valueId: Id]: ValueOrUndefined},
1379
+ isChanges: 1,
1347
1380
  ];
1348
1381
 
1349
1382
  /**
@@ -3,12 +3,12 @@
3
3
  * @packageDocumentation
4
4
  */
5
5
 
6
- export * from './checkpoints.d';
7
- export * from './common.d';
8
- export * from './indexes.d';
9
- export * from './metrics.d';
10
- export * from './persisters.d';
11
- export * from './queries.d';
12
- export * from './relationships.d';
13
- export * from './mergeable-store.d';
14
- export * from './store.d';
6
+ export * from './checkpoints.d.ts';
7
+ export * from './common.d.ts';
8
+ export * from './indexes.d.ts';
9
+ export * from './metrics.d.ts';
10
+ export * from './persisters.d.ts';
11
+ export * from './queries.d.ts';
12
+ export * from './relationships.d.ts';
13
+ export * from './mergeable-store.d.ts';
14
+ export * from './store.d.ts';
@@ -9,8 +9,8 @@
9
9
  * @since v2.2.0
10
10
  */
11
11
 
12
- import {Store, TablesSchema, ValuesSchema} from './store.d';
13
- import {Id} from './common.d';
12
+ import {Store, TablesSchema, ValuesSchema} from './store.d.ts';
13
+ import {Id} from './common.d.ts';
14
14
 
15
15
  /**
16
16
  * The StoreStats type describes a set of statistics about the Store, and
@@ -22,7 +22,7 @@
22
22
  * @module ui-react
23
23
  */
24
24
 
25
- import {Callback, Id, IdOrNull, Ids, ParameterizedCallback} from './common.d';
25
+ import {Callback, Id, IdOrNull, Ids, ParameterizedCallback} from './common.d.ts';
26
26
  import {
27
27
  Cell,
28
28
  CellIdsListener,
@@ -56,22 +56,22 @@ import {
56
56
  ValueOrUndefined,
57
57
  Values,
58
58
  ValuesListener,
59
- } from './store.d';
59
+ } from './store.d.ts';
60
60
  import {
61
61
  CheckpointIds,
62
62
  CheckpointIdsListener,
63
63
  CheckpointListener,
64
64
  Checkpoints,
65
- } from './checkpoints.d';
65
+ } from './checkpoints.d.ts';
66
66
  import {ComponentType, ReactElement} from 'react';
67
- import {Indexes, SliceIdsListener, SliceRowIdsListener} from './indexes.d';
67
+ import {Indexes, SliceIdsListener, SliceRowIdsListener} from './indexes.d.ts';
68
68
  import {
69
69
  LinkedRowIdsListener,
70
70
  LocalRowIdsListener,
71
71
  Relationships,
72
72
  RemoteRowIdListener,
73
- } from './relationships.d';
74
- import {MetricListener, Metrics} from './metrics.d';
73
+ } from './relationships.d.ts';
74
+ import {MetricListener, Metrics} from './metrics.d.ts';
75
75
  import {
76
76
  Queries,
77
77
  ResultCellIdsListener,
@@ -82,8 +82,8 @@ import {
82
82
  ResultSortedRowIdsListener,
83
83
  ResultTableCellIdsListener,
84
84
  ResultTableListener,
85
- } from './queries.d';
86
- import {Persister} from './persisters.d';
85
+ } from './queries.d.ts';
86
+ import {Persister} from './persisters.d.ts';
87
87
 
88
88
  /**
89
89
  * The StoreOrStoreId type is used when you need to refer to a Store in a React
@@ -10,8 +10,8 @@
10
10
  * @module checkpoints
11
11
  */
12
12
 
13
- import {Id, IdOrNull, Ids} from './common.d';
14
- import {OptionalSchemas, Store} from './store.d';
13
+ import {Id, IdOrNull, Ids} from './common.d.ts';
14
+ import {OptionalSchemas, Store} from './store.d.ts';
15
15
 
16
16
  /**
17
17
  * The CheckpointIds type is a representation of the list of checkpoint Ids
@@ -17,8 +17,8 @@ import {
17
17
  OptionalTablesSchema,
18
18
  RowCallback,
19
19
  Store,
20
- } from './store.d';
21
- import {Id, IdOrNull, Ids, SortKey} from './common.d';
20
+ } from './store.d.ts';
21
+ import {Id, IdOrNull, Ids, SortKey} from './common.d.ts';
22
22
 
23
23
  /**
24
24
  * The Index type represents the concept of a map of Slice objects, keyed by Id.
@@ -2,6 +2,7 @@
2
2
  * The mergeable-store module
3
3
  * @packageDocumentation
4
4
  * @module mergeable-store
5
+ * @since v5.0.0
5
6
  */
6
7
 
7
8
  import {
@@ -21,9 +22,8 @@ import {
21
22
  TablesSchema,
22
23
  ValueOrUndefined,
23
24
  ValuesSchema,
24
- } from './store.d';
25
- import {Id} from './common';
26
- import {IdObj} from '../../common/obj';
25
+ } from './store.d.ts';
26
+ import {Id, Ids} from './common';
27
27
 
28
28
  /**
29
29
  * The Hash type
@@ -37,39 +37,127 @@ export type Hash = number;
37
37
  */
38
38
  export type Time = string;
39
39
 
40
- /**
41
- * The HashStamp type
42
- * @category Stamps
43
- */
44
- export type HashStamp<Thing> = [time: Time, thing: Thing, hash: Hash];
45
-
46
40
  /**
47
41
  * The Stamp type
48
42
  * @category Stamps
49
43
  */
50
- export type Stamp<Thing> = [time: Time, thing: Thing];
44
+ export type Stamp<Thing, Hashed extends boolean = false> = Hashed extends true
45
+ ? [time: Time, thing: Thing, hash: Hash]
46
+ : [time: Time, thing: Thing];
47
+
48
+ // ContentHashes
49
+ export type ContentHashes = [time: Time, [tablesHash: Hash, valuesHash: Hash]];
50
+
51
+ // TablesStamp
52
+ export type TablesStamp<
53
+ Schema extends OptionalTablesSchema,
54
+ Hashed extends boolean = false,
55
+ > = Stamp<
56
+ {
57
+ [TableId in TableIdFromSchema<Schema>]?: TableStamp<
58
+ Schema,
59
+ TableId,
60
+ Hashed
61
+ >;
62
+ },
63
+ Hashed
64
+ >;
65
+
66
+ // TableHashes
67
+ export type TableHashes<Schema extends OptionalTablesSchema> = {
68
+ [TableId in TableIdFromSchema<Schema>]?: Hash;
69
+ };
70
+
71
+ // TableIdsDiff
72
+ export type TableIdsDiff<Schema extends OptionalTablesSchema> =
73
+ TableIdFromSchema<Schema>[];
74
+
75
+ // TableStamp
76
+ export type TableStamp<
77
+ Schema extends OptionalTablesSchema,
78
+ TableId extends TableIdFromSchema<Schema>,
79
+ Hashed extends boolean = false,
80
+ > = Stamp<{[rowId: Id]: RowStamp<Schema, TableId, Hashed>}, Hashed>;
81
+
82
+ // RowHashes
83
+ export type RowHashes<Schema extends OptionalTablesSchema> = {
84
+ [TableId in TableIdFromSchema<Schema>]?: {[rowId: Id]: Hash};
85
+ };
86
+
87
+ // RowIdsDiff
88
+ export type RowIdsDiff<Schema extends OptionalTablesSchema> = {
89
+ [TableId in TableIdFromSchema<Schema>]?: Ids;
90
+ };
91
+
92
+ // RowStamp
93
+ export type RowStamp<
94
+ Schema extends OptionalTablesSchema,
95
+ TableId extends TableIdFromSchema<Schema>,
96
+ Hashed extends boolean = false,
97
+ > = Stamp<
98
+ {
99
+ [CellId in CellIdFromSchema<Schema, TableId>]?: CellStamp<
100
+ Schema,
101
+ TableId,
102
+ CellId,
103
+ Hashed
104
+ >;
105
+ },
106
+ Hashed
107
+ >;
108
+
109
+ // CellHashes
110
+ export type CellHashes<Schema extends OptionalTablesSchema> = {
111
+ [TableId in TableIdFromSchema<Schema>]?: {
112
+ [rowId: Id]: {[CellId in CellIdFromSchema<Schema, TableId>]?: Hash};
113
+ };
114
+ };
115
+
116
+ // CellStamp
117
+ export type CellStamp<
118
+ Schema extends OptionalTablesSchema,
119
+ TableId extends TableIdFromSchema<Schema>,
120
+ CellId extends CellIdFromSchema<Schema, TableId>,
121
+ Hashed extends boolean = false,
122
+ > = Stamp<CellOrUndefined<Schema, TableId, CellId>, Hashed>;
123
+
124
+ // ValuesStamp
125
+ export type ValuesStamp<
126
+ Schema extends OptionalValuesSchema,
127
+ Hashed extends boolean = false,
128
+ > = Stamp<
129
+ {
130
+ [ValueId in ValueIdFromSchema<Schema>]?: ValueStamp<
131
+ Schema,
132
+ ValueId,
133
+ Hashed
134
+ >;
135
+ },
136
+ Hashed
137
+ >;
138
+
139
+ // ValuesHashes
140
+ export type ValuesHashes<Schema extends OptionalValuesSchema> = {
141
+ [ValueId in ValueIdFromSchema<Schema>]?: Hash;
142
+ };
143
+
144
+ // ValueStamp
145
+ export type ValueStamp<
146
+ Schema extends OptionalValuesSchema,
147
+ ValueId extends ValueIdFromSchema<Schema>,
148
+ Hashed extends boolean = false,
149
+ > = Stamp<ValueOrUndefined<Schema, ValueId>, Hashed>;
51
150
 
52
151
  /**
53
152
  * The MergeableContent type
54
153
  * @category Mergeable
55
154
  */
56
- export type MergeableContent<Schemas extends OptionalSchemas> = HashStamp<
155
+ export type MergeableContent<Schemas extends OptionalSchemas> = Stamp<
57
156
  [
58
- mergeableTables: HashStamp<{
59
- [TableId in TableIdFromSchema<Schemas[0]>]?: HashStamp<{
60
- [rowId: Id]: HashStamp<{
61
- [CellId in CellIdFromSchema<Schemas[0], TableId>]?: HashStamp<
62
- CellOrUndefined<Schemas[0], TableId, CellId>
63
- >;
64
- }>;
65
- }>;
66
- }>,
67
- mergeableValues: HashStamp<{
68
- [ValueId in ValueIdFromSchema<Schemas[1]>]?: HashStamp<
69
- ValueOrUndefined<Schemas[1], ValueId>
70
- >;
71
- }>,
72
- ]
157
+ mergeableTables: TablesStamp<Schemas[0], true>,
158
+ mergeableValues: ValuesStamp<Schemas[1], true>,
159
+ ],
160
+ true
73
161
  >;
74
162
 
75
163
  /**
@@ -78,22 +166,9 @@ export type MergeableContent<Schemas extends OptionalSchemas> = HashStamp<
78
166
  */
79
167
  export type MergeableChanges<Schemas extends OptionalSchemas> = Stamp<
80
168
  [
81
- mergeableTables: Stamp<{
82
- [TableId in TableIdFromSchema<Schemas[0]>]?: Stamp<
83
- IdObj<
84
- Stamp<{
85
- [CellId in CellIdFromSchema<Schemas[0], TableId>]?: Stamp<
86
- CellOrUndefined<Schemas[0], TableId, CellId>
87
- >;
88
- }>
89
- >
90
- >;
91
- }>,
92
- mergeableValues: Stamp<{
93
- [ValueId in ValueIdFromSchema<Schemas[1]>]?: Stamp<
94
- ValueOrUndefined<Schemas[1], ValueId>
95
- >;
96
- }>,
169
+ mergeableTables: TablesStamp<Schemas[0]>,
170
+ mergeableValues: ValuesStamp<Schemas[1]>,
171
+ isChanges: 1,
97
172
  ]
98
173
  >;
99
174
 
@@ -105,87 +180,110 @@ export interface MergeableStore<Schemas extends OptionalSchemas>
105
180
  extends Store<Schemas> {
106
181
  //
107
182
  /**
108
- * The merge method
109
- * @category Merging
183
+ * The getId method
184
+ * @category Getter
110
185
  */
111
- merge(mergeableStore: MergeableStore<Schemas>): MergeableStore<Schemas>;
186
+ getId(): Id;
112
187
 
113
188
  /**
114
189
  * The getMergeableContent method
115
- * @category Merging
190
+ * @category Getter
116
191
  */
117
192
  getMergeableContent(): MergeableContent<Schemas>;
118
193
 
119
194
  /**
120
- * The setMergeableContent method
121
- * @category Merging
195
+ * The getMergeableContentHashes method
196
+ * @category Syncing
122
197
  */
123
- setMergeableContent(
124
- mergeableContent: MergeableContent<Schemas>,
125
- ): MergeableStore<Schemas>;
198
+ getMergeableContentHashes(): ContentHashes;
126
199
 
127
200
  /**
128
- * The getTransactionMergeableChanges method
129
- * @category Merging
201
+ * The getMergeableTableHashes method
202
+ * @category Syncing
130
203
  */
131
- getTransactionMergeableChanges(): MergeableChanges<Schemas>;
204
+ getMergeableTableHashes(): TableHashes<Schemas[0]>;
132
205
 
133
206
  /**
134
- * The applyMergeableChanges method
135
- * @category Merging
207
+ * The getMergeableTableIdsDiff method
208
+ * @category Syncing
136
209
  */
137
- applyMergeableChanges(
138
- mergeableChanges: MergeableChanges<Schemas> | MergeableContent<Schemas>,
139
- ): MergeableStore<Schemas>;
210
+ getMergeableTableIdsDiff(
211
+ relativeTo: TableHashes<Schemas[0]>,
212
+ ): TableIdsDiff<Schemas[0]>;
213
+
214
+ /**
215
+ * The getMergeableRowHashes method
216
+ * @category Syncing
217
+ */
218
+ getMergeableRowHashes(
219
+ tablesDelta: TableIdsDiff<Schemas[0]>,
220
+ ): RowHashes<Schemas[0]>;
140
221
 
141
222
  /**
142
- * The getContentHash method
143
- * @category Hashes
223
+ * The getMergeableRowIdsDiff method
224
+ * @category Syncing
144
225
  */
145
- getContentHash(): Hash;
226
+ getMergeableRowIdsDiff(
227
+ relativeTo: RowHashes<Schemas[0]>,
228
+ ): RowIdsDiff<Schemas[0]>;
146
229
 
147
230
  /**
148
- * The getTablesHash method
149
- * @category Hashes
231
+ * The getMergeableCellHashes method
232
+ * @category Syncing
150
233
  */
151
- getTablesHash(): Hash;
234
+ getMergeableCellHashes(
235
+ tableDelta: RowIdsDiff<Schemas[0]>,
236
+ ): CellHashes<Schemas[0]>;
152
237
 
153
238
  /**
154
- * The getTableHash method
155
- * @category Hashes
239
+ * The getMergeableTablesChanges method
240
+ * @category Syncing
156
241
  */
157
- getTableHash(tableId: TableIdFromSchema<Schemas[0]>): Hash;
242
+ getMergeableTablesChanges(
243
+ relativeTo: CellHashes<Schemas[0]>,
244
+ ): TablesStamp<Schemas[0]>;
158
245
 
159
246
  /**
160
- * The getRowHash method
161
- * @category Hashes
247
+ * The getMergeableValuesHashes method
248
+ * @category Syncing
249
+ */
250
+ getMergeableValuesHashes(): ValuesHashes<Schemas[1]>;
251
+
252
+ /**
253
+ * The getMergeableValuesChanges method
254
+ * @category Syncing
255
+ */
256
+ getMergeableValuesChanges(
257
+ relativeTo: ValuesHashes<Schemas[1]>,
258
+ ): ValuesStamp<Schemas[1]>;
259
+
260
+ /**
261
+ * The setMergeableContent method
262
+ * @category Setter
162
263
  */
163
- getRowHash<TableId extends TableIdFromSchema<Schemas[0]>>(
164
- tableId: TableId,
165
- rowId: Id,
166
- ): Hash;
264
+ setMergeableContent(
265
+ mergeableContent: MergeableContent<Schemas>,
266
+ ): MergeableStore<Schemas>;
167
267
 
168
268
  /**
169
- * The getCellHash method
170
- * @category Hashes
269
+ * The getTransactionMergeableChanges method
270
+ * @category Getter
171
271
  */
172
- getCellHash<TableId extends TableIdFromSchema<Schemas[0]>>(
173
- tableId: TableId,
174
- rowId: Id,
175
- cellId: CellIdFromSchema<Schemas[0], TableId>,
176
- ): Hash;
272
+ getTransactionMergeableChanges(): MergeableChanges<Schemas>;
177
273
 
178
274
  /**
179
- * The getValuesHash method
180
- * @category Hashes
275
+ * The applyMergeableChanges method
276
+ * @category Setter
181
277
  */
182
- getValuesHash(): Hash;
278
+ applyMergeableChanges(
279
+ mergeableChanges: MergeableChanges<Schemas> | MergeableContent<Schemas>,
280
+ ): MergeableStore<Schemas>;
183
281
 
184
282
  /**
185
- * The getValueHash method
186
- * @category Hashes
283
+ * The merge method
284
+ * @category Setter
187
285
  */
188
- getValueHash(valueId: ValueIdFromSchema<Schemas[1]>): Hash;
286
+ merge(mergeableStore: MergeableStore<Schemas>): MergeableStore<Schemas>;
189
287
 
190
288
  /**
191
289
  * The setTablesSchema method lets you specify the TablesSchema of the tabular
@@ -11,8 +11,8 @@
11
11
  */
12
12
 
13
13
  import {CellIdFromSchema, TableIdFromSchema} from './internal/store';
14
- import {GetCell, OptionalSchemas, Store} from './store.d';
15
- import {Id, IdOrNull, Ids} from './common.d';
14
+ import {GetCell, OptionalSchemas, Store} from './store.d.ts';
15
+ import {Id, IdOrNull, Ids} from './common.d.ts';
16
16
 
17
17
  /**
18
18
  * The Metric type is simply an alias, but represents a number formed by
@@ -21,6 +21,9 @@ import {Persister} from '../persisters';
21
21
  *
22
22
  * It simply provides an extra getDocHandle method for accessing the Automerge
23
23
  * document handler the Store is being persisted to.
24
+ *
25
+ * You should use the createAutomergePersister function to create an
26
+ * AutomergePersister object.
24
27
  * @category Persister
25
28
  * @since v4.3.14
26
29
  */
@@ -47,7 +50,7 @@ export interface AutomergePersister<Schemas extends OptionalSchemas>
47
50
  * @category Getter
48
51
  * @since v4.3.14
49
52
  */
50
- getDocHandle: () => DocHandle<any>;
53
+ getDocHandle(): DocHandle<any>;
51
54
  }
52
55
 
53
56
  /**
@@ -15,6 +15,7 @@
15
15
  */
16
16
 
17
17
  import {OptionalSchemas, Store} from '../store';
18
+ import {MergeableStore} from '../mergeable-store';
18
19
  import {Persister} from '../persisters';
19
20
 
20
21
  /**
@@ -23,6 +24,9 @@ import {Persister} from '../persisters';
23
24
  *
24
25
  * It simply provides an extra getStorageName method for accessing the unique
25
26
  * key of the storage location the Store is being persisted to.
27
+ *
28
+ * You should use the createSessionPersister function to create a
29
+ * SessionPersister object.
26
30
  * @category Persister
27
31
  * @since v4.3.14
28
32
  */
@@ -48,7 +52,7 @@ export interface SessionPersister<Schemas extends OptionalSchemas>
48
52
  * @category Getter
49
53
  * @since v4.3.14
50
54
  */
51
- getStorageName: () => string;
55
+ getStorageName(): string;
52
56
  }
53
57
 
54
58
  /**
@@ -56,6 +60,9 @@ export interface SessionPersister<Schemas extends OptionalSchemas>
56
60
  *
57
61
  * It simply provides an extra getStorageName method for accessing the unique
58
62
  * key of the storage location the Store is being persisted to.
63
+ *
64
+ * You should use the createLocalPersister function to create a LocalPersister
65
+ * object.
59
66
  * @category Persister
60
67
  * @since v4.3.14
61
68
  */
@@ -81,7 +88,7 @@ export interface LocalPersister<Schemas extends OptionalSchemas>
81
88
  * @category Getter
82
89
  * @since v4.3.14
83
90
  */
84
- getStorageName: () => string;
91
+ getStorageName(): string;
85
92
  }
86
93
 
87
94
  /**
@@ -92,7 +99,7 @@ export interface LocalPersister<Schemas extends OptionalSchemas>
92
99
  *
93
100
  * ```ts override
94
101
  * createSessionPersister(
95
- * store: Store,
102
+ * store: Store | MergeableStore,
96
103
  * storageName: string,
97
104
  * onIgnoredError?: (error: any) => void,
98
105
  * ): SessionPersister;
@@ -125,7 +132,7 @@ export interface LocalPersister<Schemas extends OptionalSchemas>
125
132
  * @category Creation
126
133
  */
127
134
  export function createSessionPersister<Schemas extends OptionalSchemas>(
128
- store: Store<Schemas>,
135
+ store: Store<Schemas> | MergeableStore<Schemas>,
129
136
  storageName: string,
130
137
  onIgnoredError?: (error: any) => void,
131
138
  ): SessionPersister<Schemas>;
@@ -138,7 +145,7 @@ export function createSessionPersister<Schemas extends OptionalSchemas>(
138
145
  *
139
146
  * ```ts override
140
147
  * createLocalPersister(
141
- * store: Store,
148
+ * store: Store | MergeableStore,
142
149
  * storageName: string,
143
150
  * onIgnoredError?: (error: any) => void,
144
151
  * ): LocalPersister;
@@ -171,7 +178,7 @@ export function createSessionPersister<Schemas extends OptionalSchemas>(
171
178
  * @category Creation
172
179
  */
173
180
  export function createLocalPersister<Schemas extends OptionalSchemas>(
174
- store: Store<Schemas>,
181
+ store: Store<Schemas> | MergeableStore<Schemas>,
175
182
  storageName: string,
176
183
  onIgnoredError?: (error: any) => void,
177
184
  ): LocalPersister<Schemas>;
@@ -18,6 +18,9 @@ import {DB} from '@vlcn.io/crsqlite-wasm';
18
18
  *
19
19
  * It simply provides an extra getDb method for accessing a reference to the
20
20
  * database instance the Store is being persisted to.
21
+ *
22
+ * You should use the createCrSqliteWasmPersister function to create a
23
+ * CrSqliteWasmPersister object.
21
24
  * @category Persister
22
25
  * @since v4.3.14
23
26
  */
@@ -45,7 +48,7 @@ export interface CrSqliteWasmPersister<Schemas extends OptionalSchemas>
45
48
  * @category Getter
46
49
  * @since v4.3.14
47
50
  */
48
- getDb: () => DB;
51
+ getDb(): DB;
49
52
  }
50
53
 
51
54
  /**
@@ -18,6 +18,9 @@ import {ElectricClient} from 'electric-sql/client/model';
18
18
  *
19
19
  * It simply provides an extra getElectricClient method for accessing a
20
20
  * reference to the Electric client the Store is being persisted to.
21
+ *
22
+ * You should use the createElectricSqlPersister function to create an
23
+ * ElectricSqlPersister object.
21
24
  * @category Persister
22
25
  * @since v4.6.0
23
26
  */
@@ -52,7 +55,7 @@ export interface ElectricSqlPersister<Schemas extends OptionalSchemas>
52
55
  * @category Getter
53
56
  * @since v4.6.0
54
57
  */
55
- getElectricClient: () => ElectricClient<any>;
58
+ getElectricClient(): ElectricClient<any>;
56
59
  }
57
60
 
58
61
  /**