@vibesdotdev/storage 0.0.1 → 1.0.0-rc.3

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 (1463) hide show
  1. package/LICENSE +18 -0
  2. package/README.md +87 -63
  3. package/dist/adapters/cloud-api/cloud-api.adapter.descriptor.d.ts +10 -0
  4. package/dist/adapters/cloud-api/cloud-api.adapter.descriptor.d.ts.map +1 -0
  5. package/dist/adapters/cloud-api/cloud-api.adapter.descriptor.js +40 -0
  6. package/dist/adapters/cloud-api/cloud-api.adapter.descriptor.js.map +1 -0
  7. package/dist/adapters/cloud-api/cloud-api.adapter.impl.d.ts +93 -0
  8. package/dist/adapters/cloud-api/cloud-api.adapter.impl.d.ts.map +1 -0
  9. package/dist/adapters/cloud-api/cloud-api.adapter.impl.js +437 -0
  10. package/dist/adapters/cloud-api/cloud-api.adapter.impl.js.map +1 -0
  11. package/dist/adapters/cloud-api/cloud-api.fetch-client.d.ts +59 -0
  12. package/dist/adapters/cloud-api/cloud-api.fetch-client.d.ts.map +1 -0
  13. package/dist/adapters/cloud-api/cloud-api.fetch-client.js +357 -0
  14. package/dist/adapters/cloud-api/cloud-api.fetch-client.js.map +1 -0
  15. package/dist/adapters/cloud-api/cloud-api.record.d.ts +85 -0
  16. package/dist/adapters/cloud-api/cloud-api.record.d.ts.map +1 -0
  17. package/dist/adapters/cloud-api/cloud-api.record.helpers.d.ts +71 -0
  18. package/dist/adapters/cloud-api/cloud-api.record.helpers.d.ts.map +1 -0
  19. package/dist/adapters/cloud-api/cloud-api.record.helpers.js +270 -0
  20. package/dist/adapters/cloud-api/cloud-api.record.helpers.js.map +1 -0
  21. package/dist/adapters/cloud-api/cloud-api.record.js +351 -0
  22. package/dist/adapters/cloud-api/cloud-api.record.js.map +1 -0
  23. package/dist/adapters/cloud-api/cloud-api.test-utils.d.ts +38 -0
  24. package/dist/adapters/cloud-api/cloud-api.test-utils.d.ts.map +1 -0
  25. package/dist/adapters/cloud-api/cloud-api.test-utils.js +139 -0
  26. package/dist/adapters/cloud-api/cloud-api.test-utils.js.map +1 -0
  27. package/dist/adapters/cloud-api/index.d.ts +10 -0
  28. package/dist/adapters/cloud-api/index.d.ts.map +1 -0
  29. package/dist/adapters/cloud-api/index.js +10 -0
  30. package/dist/adapters/cloud-api/index.js.map +1 -0
  31. package/dist/adapters/cloud-api/storage-adapter-cloud-api.plugin.d.ts +9 -0
  32. package/dist/adapters/cloud-api/storage-adapter-cloud-api.plugin.d.ts.map +1 -0
  33. package/dist/adapters/cloud-api/storage-adapter-cloud-api.plugin.js +21 -0
  34. package/dist/adapters/cloud-api/storage-adapter-cloud-api.plugin.js.map +1 -0
  35. package/dist/adapters/drizzle/batch-type-proof.d.ts +21 -0
  36. package/dist/adapters/drizzle/batch-type-proof.d.ts.map +1 -0
  37. package/dist/adapters/drizzle/batch-type-proof.js +2 -0
  38. package/dist/adapters/drizzle/batch-type-proof.js.map +1 -0
  39. package/dist/adapters/drizzle/canonical.adapter.descriptor.d.ts +4 -0
  40. package/dist/adapters/drizzle/canonical.adapter.descriptor.d.ts.map +1 -0
  41. package/dist/adapters/drizzle/canonical.adapter.descriptor.js +29 -0
  42. package/dist/adapters/drizzle/canonical.adapter.descriptor.js.map +1 -0
  43. package/dist/adapters/drizzle/contracts.d.ts +24 -0
  44. package/dist/adapters/drizzle/contracts.d.ts.map +1 -0
  45. package/dist/adapters/drizzle/contracts.js +5 -0
  46. package/dist/adapters/drizzle/contracts.js.map +1 -0
  47. package/dist/adapters/drizzle/docs/storage.adapters.drizzle.docs.descriptor.d.ts +4 -0
  48. package/dist/adapters/drizzle/docs/storage.adapters.drizzle.docs.descriptor.d.ts.map +1 -0
  49. package/dist/adapters/drizzle/docs/storage.adapters.drizzle.docs.descriptor.js +187 -0
  50. package/dist/adapters/drizzle/docs/storage.adapters.drizzle.docs.descriptor.js.map +1 -0
  51. package/dist/adapters/drizzle/drizzle-journal.migration-format.impl.d.ts +15 -0
  52. package/dist/adapters/drizzle/drizzle-journal.migration-format.impl.d.ts.map +1 -0
  53. package/dist/adapters/drizzle/drizzle-journal.migration-format.impl.js +59 -0
  54. package/dist/adapters/drizzle/drizzle-journal.migration-format.impl.js.map +1 -0
  55. package/dist/adapters/drizzle/drizzle-journal.migration-format.plugin.d.ts +5 -0
  56. package/dist/adapters/drizzle/drizzle-journal.migration-format.plugin.d.ts.map +1 -0
  57. package/dist/adapters/drizzle/drizzle-journal.migration-format.plugin.js +27 -0
  58. package/dist/adapters/drizzle/drizzle-journal.migration-format.plugin.js.map +1 -0
  59. package/dist/adapters/drizzle/drizzle.adapter.descriptor.d.ts +2 -0
  60. package/dist/adapters/drizzle/drizzle.adapter.descriptor.d.ts.map +1 -0
  61. package/dist/adapters/drizzle/drizzle.adapter.descriptor.js +3 -0
  62. package/dist/adapters/drizzle/drizzle.adapter.descriptor.js.map +1 -0
  63. package/dist/adapters/drizzle/drizzle.adapter.impl.d.ts +37 -0
  64. package/dist/adapters/drizzle/drizzle.adapter.impl.d.ts.map +1 -0
  65. package/dist/adapters/drizzle/drizzle.adapter.impl.js +1163 -0
  66. package/dist/adapters/drizzle/drizzle.adapter.impl.js.map +1 -0
  67. package/dist/adapters/drizzle/extensions.d.ts +5 -0
  68. package/dist/adapters/drizzle/extensions.d.ts.map +1 -0
  69. package/dist/adapters/drizzle/extensions.js +30 -0
  70. package/dist/adapters/drizzle/extensions.js.map +1 -0
  71. package/dist/adapters/drizzle/index.d.ts +12 -0
  72. package/dist/adapters/drizzle/index.d.ts.map +1 -0
  73. package/dist/adapters/drizzle/index.js +12 -0
  74. package/dist/adapters/drizzle/index.js.map +1 -0
  75. package/dist/adapters/drizzle/libsql-migrator.d.ts +23 -0
  76. package/dist/adapters/drizzle/libsql-migrator.d.ts.map +1 -0
  77. package/dist/adapters/drizzle/libsql-migrator.js +67 -0
  78. package/dist/adapters/drizzle/libsql-migrator.js.map +1 -0
  79. package/dist/adapters/drizzle/libsql.d.ts +15 -0
  80. package/dist/adapters/drizzle/libsql.d.ts.map +1 -0
  81. package/dist/adapters/drizzle/libsql.js +19 -0
  82. package/dist/adapters/drizzle/libsql.js.map +1 -0
  83. package/dist/adapters/drizzle/migration-files.d.ts +15 -0
  84. package/dist/adapters/drizzle/migration-files.d.ts.map +1 -0
  85. package/dist/adapters/drizzle/migration-files.js +54 -0
  86. package/dist/adapters/drizzle/migration-files.js.map +1 -0
  87. package/dist/adapters/drizzle/migration-statements.d.ts +7 -0
  88. package/dist/adapters/drizzle/migration-statements.d.ts.map +1 -0
  89. package/dist/adapters/drizzle/migration-statements.js +14 -0
  90. package/dist/adapters/drizzle/migration-statements.js.map +1 -0
  91. package/dist/adapters/drizzle/persistence-errors.d.ts +33 -0
  92. package/dist/adapters/drizzle/persistence-errors.d.ts.map +1 -0
  93. package/dist/adapters/drizzle/persistence-errors.js +75 -0
  94. package/dist/adapters/drizzle/persistence-errors.js.map +1 -0
  95. package/dist/adapters/drizzle/persistence-factory.d.ts +100 -0
  96. package/dist/adapters/drizzle/persistence-factory.d.ts.map +1 -0
  97. package/dist/adapters/drizzle/persistence-factory.js +391 -0
  98. package/dist/adapters/drizzle/persistence-factory.js.map +1 -0
  99. package/dist/adapters/drizzle/persistence.client.d.ts +73 -0
  100. package/dist/adapters/drizzle/persistence.client.d.ts.map +1 -0
  101. package/dist/adapters/drizzle/persistence.client.js +238 -0
  102. package/dist/adapters/drizzle/persistence.client.js.map +1 -0
  103. package/dist/adapters/drizzle/providers.d.ts +19 -0
  104. package/dist/adapters/drizzle/providers.d.ts.map +1 -0
  105. package/dist/adapters/drizzle/providers.js +62 -0
  106. package/dist/adapters/drizzle/providers.js.map +1 -0
  107. package/dist/adapters/drizzle/record-ddl.d.ts +13 -0
  108. package/dist/adapters/drizzle/record-ddl.d.ts.map +1 -0
  109. package/dist/adapters/drizzle/record-ddl.js +70 -0
  110. package/dist/adapters/drizzle/record-ddl.js.map +1 -0
  111. package/dist/adapters/drizzle/record-table.d.ts +59 -0
  112. package/dist/adapters/drizzle/record-table.d.ts.map +1 -0
  113. package/dist/adapters/drizzle/record-table.js +87 -0
  114. package/dist/adapters/drizzle/record-table.js.map +1 -0
  115. package/dist/adapters/drizzle/schemas/record-migration.d.ts +30 -0
  116. package/dist/adapters/drizzle/schemas/record-migration.d.ts.map +1 -0
  117. package/dist/adapters/drizzle/schemas/record-migration.js +12 -0
  118. package/dist/adapters/drizzle/schemas/record-migration.js.map +1 -0
  119. package/dist/adapters/drizzle/storage-adapter-drizzle.plugin.d.ts +26 -0
  120. package/dist/adapters/drizzle/storage-adapter-drizzle.plugin.d.ts.map +1 -0
  121. package/dist/adapters/drizzle/storage-adapter-drizzle.plugin.js +90 -0
  122. package/dist/adapters/drizzle/storage-adapter-drizzle.plugin.js.map +1 -0
  123. package/dist/adapters/drizzle/storage-drizzle-db.context.d.ts +53 -0
  124. package/dist/adapters/drizzle/storage-drizzle-db.context.d.ts.map +1 -0
  125. package/dist/adapters/drizzle/storage-drizzle-db.context.js +8 -0
  126. package/dist/adapters/drizzle/storage-drizzle-db.context.js.map +1 -0
  127. package/dist/adapters/drizzle/test.d.ts +60 -0
  128. package/dist/adapters/drizzle/test.d.ts.map +1 -0
  129. package/dist/adapters/drizzle/test.js +49 -0
  130. package/dist/adapters/drizzle/test.js.map +1 -0
  131. package/dist/adapters/drizzle/transforms.d.ts +42 -0
  132. package/dist/adapters/drizzle/transforms.d.ts.map +1 -0
  133. package/dist/adapters/drizzle/transforms.js +147 -0
  134. package/dist/adapters/drizzle/transforms.js.map +1 -0
  135. package/dist/adapters/filesystem/filesystem.adapter.descriptor.d.ts +13 -0
  136. package/dist/adapters/filesystem/filesystem.adapter.descriptor.d.ts.map +1 -0
  137. package/dist/adapters/filesystem/filesystem.adapter.descriptor.js +34 -0
  138. package/dist/adapters/filesystem/filesystem.adapter.descriptor.js.map +1 -0
  139. package/dist/adapters/filesystem/filesystem.adapter.impl.d.ts +57 -0
  140. package/dist/adapters/filesystem/filesystem.adapter.impl.d.ts.map +1 -0
  141. package/dist/adapters/filesystem/filesystem.adapter.impl.js +257 -0
  142. package/dist/adapters/filesystem/filesystem.adapter.impl.js.map +1 -0
  143. package/dist/adapters/filesystem/index.d.ts +10 -0
  144. package/dist/adapters/filesystem/index.d.ts.map +1 -0
  145. package/dist/adapters/filesystem/index.js +10 -0
  146. package/dist/adapters/filesystem/index.js.map +1 -0
  147. package/dist/adapters/filesystem/storage-adapter-filesystem.plugin.d.ts +11 -0
  148. package/dist/adapters/filesystem/storage-adapter-filesystem.plugin.d.ts.map +1 -0
  149. package/dist/adapters/filesystem/storage-adapter-filesystem.plugin.js +25 -0
  150. package/dist/adapters/filesystem/storage-adapter-filesystem.plugin.js.map +1 -0
  151. package/dist/adapters/fixture/fixture.adapter.descriptor.d.ts +14 -0
  152. package/dist/adapters/fixture/fixture.adapter.descriptor.d.ts.map +1 -0
  153. package/dist/adapters/fixture/fixture.adapter.descriptor.js +35 -0
  154. package/dist/adapters/fixture/fixture.adapter.descriptor.js.map +1 -0
  155. package/dist/adapters/fixture/fixture.adapter.impl.d.ts +41 -0
  156. package/dist/adapters/fixture/fixture.adapter.impl.d.ts.map +1 -0
  157. package/dist/adapters/fixture/fixture.adapter.impl.js +162 -0
  158. package/dist/adapters/fixture/fixture.adapter.impl.js.map +1 -0
  159. package/dist/adapters/fixture/index.d.ts +9 -0
  160. package/dist/adapters/fixture/index.d.ts.map +1 -0
  161. package/dist/adapters/fixture/index.js +9 -0
  162. package/dist/adapters/fixture/index.js.map +1 -0
  163. package/dist/adapters/fixture/storage-adapter-fixture.plugin.d.ts +10 -0
  164. package/dist/adapters/fixture/storage-adapter-fixture.plugin.d.ts.map +1 -0
  165. package/dist/adapters/fixture/storage-adapter-fixture.plugin.js +21 -0
  166. package/dist/adapters/fixture/storage-adapter-fixture.plugin.js.map +1 -0
  167. package/dist/adapters/idb/idb-backend.d.ts +33 -0
  168. package/dist/adapters/idb/idb-backend.d.ts.map +1 -0
  169. package/dist/adapters/idb/idb-backend.js +217 -0
  170. package/dist/adapters/idb/idb-backend.js.map +1 -0
  171. package/dist/adapters/idb/idb.adapter.descriptor.d.ts +14 -0
  172. package/dist/adapters/idb/idb.adapter.descriptor.d.ts.map +1 -0
  173. package/dist/adapters/idb/idb.adapter.descriptor.js +35 -0
  174. package/dist/adapters/idb/idb.adapter.descriptor.js.map +1 -0
  175. package/dist/adapters/idb/idb.adapter.impl.d.ts +56 -0
  176. package/dist/adapters/idb/idb.adapter.impl.d.ts.map +1 -0
  177. package/dist/adapters/idb/idb.adapter.impl.js +227 -0
  178. package/dist/adapters/idb/idb.adapter.impl.js.map +1 -0
  179. package/dist/adapters/idb/index.d.ts +10 -0
  180. package/dist/adapters/idb/index.d.ts.map +1 -0
  181. package/dist/adapters/idb/index.js +10 -0
  182. package/dist/adapters/idb/index.js.map +1 -0
  183. package/dist/adapters/idb/storage-adapter-idb.plugin.d.ts +11 -0
  184. package/dist/adapters/idb/storage-adapter-idb.plugin.d.ts.map +1 -0
  185. package/dist/adapters/idb/storage-adapter-idb.plugin.js +22 -0
  186. package/dist/adapters/idb/storage-adapter-idb.plugin.js.map +1 -0
  187. package/dist/adapters/json/filesystem-binding.d.ts +14 -0
  188. package/dist/adapters/json/filesystem-binding.d.ts.map +1 -0
  189. package/dist/adapters/json/filesystem-binding.js +7 -0
  190. package/dist/adapters/json/filesystem-binding.js.map +1 -0
  191. package/dist/adapters/json/index.d.ts +10 -0
  192. package/dist/adapters/json/index.d.ts.map +1 -0
  193. package/dist/adapters/json/index.js +10 -0
  194. package/dist/adapters/json/index.js.map +1 -0
  195. package/dist/adapters/json/json.adapter.descriptor.d.ts +10 -0
  196. package/dist/adapters/json/json.adapter.descriptor.d.ts.map +1 -0
  197. package/dist/adapters/json/json.adapter.descriptor.js +38 -0
  198. package/dist/adapters/json/json.adapter.descriptor.js.map +1 -0
  199. package/dist/adapters/json/json.adapter.impl.d.ts +59 -0
  200. package/dist/adapters/json/json.adapter.impl.d.ts.map +1 -0
  201. package/dist/adapters/json/json.adapter.impl.js +395 -0
  202. package/dist/adapters/json/json.adapter.impl.js.map +1 -0
  203. package/dist/adapters/json/storage-adapter-json.plugin.d.ts +9 -0
  204. package/dist/adapters/json/storage-adapter-json.plugin.d.ts.map +1 -0
  205. package/dist/adapters/json/storage-adapter-json.plugin.js +21 -0
  206. package/dist/adapters/json/storage-adapter-json.plugin.js.map +1 -0
  207. package/dist/adapters/localdb/index.d.ts +9 -0
  208. package/dist/adapters/localdb/index.d.ts.map +1 -0
  209. package/dist/adapters/localdb/index.js +9 -0
  210. package/dist/adapters/localdb/index.js.map +1 -0
  211. package/dist/adapters/localdb/localdb.adapter.descriptor.d.ts +10 -0
  212. package/dist/adapters/localdb/localdb.adapter.descriptor.d.ts.map +1 -0
  213. package/dist/adapters/localdb/localdb.adapter.descriptor.js +37 -0
  214. package/dist/adapters/localdb/localdb.adapter.descriptor.js.map +1 -0
  215. package/dist/adapters/localdb/localdb.adapter.impl.d.ts +237 -0
  216. package/dist/adapters/localdb/localdb.adapter.impl.d.ts.map +1 -0
  217. package/dist/adapters/localdb/localdb.adapter.impl.js +1370 -0
  218. package/dist/adapters/localdb/localdb.adapter.impl.js.map +1 -0
  219. package/dist/adapters/localdb/localdb.adapter.loader.consumer.d.ts +2 -0
  220. package/dist/adapters/localdb/localdb.adapter.loader.consumer.d.ts.map +1 -0
  221. package/dist/adapters/localdb/localdb.adapter.loader.consumer.js +2 -0
  222. package/dist/adapters/localdb/localdb.adapter.loader.consumer.js.map +1 -0
  223. package/dist/adapters/localdb/localdb.inputs.d.ts +3 -0
  224. package/dist/adapters/localdb/localdb.inputs.d.ts.map +1 -0
  225. package/dist/adapters/localdb/localdb.inputs.js +3 -0
  226. package/dist/adapters/localdb/localdb.inputs.js.map +1 -0
  227. package/dist/adapters/localdb/migration-failure.d.ts +3 -0
  228. package/dist/adapters/localdb/migration-failure.d.ts.map +1 -0
  229. package/dist/adapters/localdb/migration-failure.js +16 -0
  230. package/dist/adapters/localdb/migration-failure.js.map +1 -0
  231. package/dist/adapters/localdb/outcome.d.ts +13 -0
  232. package/dist/adapters/localdb/outcome.d.ts.map +1 -0
  233. package/dist/adapters/localdb/outcome.js +12 -0
  234. package/dist/adapters/localdb/outcome.js.map +1 -0
  235. package/dist/adapters/localdb/repository-query.d.ts +19 -0
  236. package/dist/adapters/localdb/repository-query.d.ts.map +1 -0
  237. package/dist/adapters/localdb/repository-query.js +127 -0
  238. package/dist/adapters/localdb/repository-query.js.map +1 -0
  239. package/dist/adapters/localdb/storage-adapter-localdb.plugin.d.ts +14 -0
  240. package/dist/adapters/localdb/storage-adapter-localdb.plugin.d.ts.map +1 -0
  241. package/dist/adapters/localdb/storage-adapter-localdb.plugin.js +30 -0
  242. package/dist/adapters/localdb/storage-adapter-localdb.plugin.js.map +1 -0
  243. package/dist/adapters/memory/index.d.ts +9 -0
  244. package/dist/adapters/memory/index.d.ts.map +1 -0
  245. package/dist/adapters/memory/index.js +9 -0
  246. package/dist/adapters/memory/index.js.map +1 -0
  247. package/dist/adapters/memory/memory-root-store.d.ts +20 -0
  248. package/dist/adapters/memory/memory-root-store.d.ts.map +1 -0
  249. package/dist/adapters/memory/memory-root-store.js +49 -0
  250. package/dist/adapters/memory/memory-root-store.js.map +1 -0
  251. package/dist/adapters/memory/memory.adapter.impl.d.ts +61 -0
  252. package/dist/adapters/memory/memory.adapter.impl.d.ts.map +1 -0
  253. package/dist/adapters/memory/memory.adapter.impl.js +718 -0
  254. package/dist/adapters/memory/memory.adapter.impl.js.map +1 -0
  255. package/dist/adapters/memory/memory.adapter.storage-adapter-memory.descriptor.d.ts +10 -0
  256. package/dist/adapters/memory/memory.adapter.storage-adapter-memory.descriptor.d.ts.map +1 -0
  257. package/dist/adapters/memory/memory.adapter.storage-adapter-memory.descriptor.js +37 -0
  258. package/dist/adapters/memory/memory.adapter.storage-adapter-memory.descriptor.js.map +1 -0
  259. package/dist/adapters/memory/storage-adapter-memory.plugin.d.ts +9 -0
  260. package/dist/adapters/memory/storage-adapter-memory.plugin.d.ts.map +1 -0
  261. package/dist/adapters/memory/storage-adapter-memory.plugin.js +44 -0
  262. package/dist/adapters/memory/storage-adapter-memory.plugin.js.map +1 -0
  263. package/dist/adapters/parse-adapter-input.d.ts +22 -0
  264. package/dist/adapters/parse-adapter-input.d.ts.map +1 -0
  265. package/dist/adapters/parse-adapter-input.js +36 -0
  266. package/dist/adapters/parse-adapter-input.js.map +1 -0
  267. package/dist/adapters/select-adapter.d.ts +36 -0
  268. package/dist/adapters/select-adapter.d.ts.map +1 -0
  269. package/dist/adapters/select-adapter.js +88 -0
  270. package/dist/adapters/select-adapter.js.map +1 -0
  271. package/dist/adapters/validate-for-persist.d.ts +21 -0
  272. package/dist/adapters/validate-for-persist.d.ts.map +1 -0
  273. package/dist/adapters/validate-for-persist.js +36 -0
  274. package/dist/adapters/validate-for-persist.js.map +1 -0
  275. package/dist/backup/backup.plugin.d.ts +276 -0
  276. package/dist/backup/backup.plugin.d.ts.map +1 -0
  277. package/dist/backup/backup.plugin.js +72 -0
  278. package/dist/backup/backup.plugin.js.map +1 -0
  279. package/dist/backup/channels/backup.channel.d.ts +21 -0
  280. package/dist/backup/channels/backup.channel.d.ts.map +1 -0
  281. package/dist/backup/channels/backup.channel.js +89 -0
  282. package/dist/backup/channels/backup.channel.js.map +1 -0
  283. package/dist/backup/config/storage.backup.config.descriptor.d.ts +57 -0
  284. package/dist/backup/config/storage.backup.config.descriptor.d.ts.map +1 -0
  285. package/dist/backup/config/storage.backup.config.descriptor.js +53 -0
  286. package/dist/backup/config/storage.backup.config.descriptor.js.map +1 -0
  287. package/dist/backup/core/hash.d.ts +8 -0
  288. package/dist/backup/core/hash.d.ts.map +1 -0
  289. package/dist/backup/core/hash.js +10 -0
  290. package/dist/backup/core/hash.js.map +1 -0
  291. package/dist/backup/core/homes.d.ts +13 -0
  292. package/dist/backup/core/homes.d.ts.map +1 -0
  293. package/dist/backup/core/homes.js +54 -0
  294. package/dist/backup/core/homes.js.map +1 -0
  295. package/dist/backup/core/index.d.ts +17 -0
  296. package/dist/backup/core/index.d.ts.map +1 -0
  297. package/dist/backup/core/index.js +12 -0
  298. package/dist/backup/core/index.js.map +1 -0
  299. package/dist/backup/core/io.d.ts +76 -0
  300. package/dist/backup/core/io.d.ts.map +1 -0
  301. package/dist/backup/core/io.js +177 -0
  302. package/dist/backup/core/io.js.map +1 -0
  303. package/dist/backup/core/paths.d.ts +50 -0
  304. package/dist/backup/core/paths.d.ts.map +1 -0
  305. package/dist/backup/core/paths.js +75 -0
  306. package/dist/backup/core/paths.js.map +1 -0
  307. package/dist/backup/core/readiness.d.ts +9 -0
  308. package/dist/backup/core/readiness.d.ts.map +1 -0
  309. package/dist/backup/core/readiness.js +104 -0
  310. package/dist/backup/core/readiness.js.map +1 -0
  311. package/dist/backup/core/recovery.d.ts +11 -0
  312. package/dist/backup/core/recovery.d.ts.map +1 -0
  313. package/dist/backup/core/recovery.js +75 -0
  314. package/dist/backup/core/recovery.js.map +1 -0
  315. package/dist/backup/core/registry.d.ts +13 -0
  316. package/dist/backup/core/registry.d.ts.map +1 -0
  317. package/dist/backup/core/registry.js +18 -0
  318. package/dist/backup/core/registry.js.map +1 -0
  319. package/dist/backup/core/restore.d.ts +36 -0
  320. package/dist/backup/core/restore.d.ts.map +1 -0
  321. package/dist/backup/core/restore.js +280 -0
  322. package/dist/backup/core/restore.js.map +1 -0
  323. package/dist/backup/core/rotate.d.ts +19 -0
  324. package/dist/backup/core/rotate.d.ts.map +1 -0
  325. package/dist/backup/core/rotate.js +153 -0
  326. package/dist/backup/core/rotate.js.map +1 -0
  327. package/dist/backup/core/rotation.d.ts +19 -0
  328. package/dist/backup/core/rotation.d.ts.map +1 -0
  329. package/dist/backup/core/rotation.js +100 -0
  330. package/dist/backup/core/rotation.js.map +1 -0
  331. package/dist/backup/core/snapshot.d.ts +45 -0
  332. package/dist/backup/core/snapshot.d.ts.map +1 -0
  333. package/dist/backup/core/snapshot.js +217 -0
  334. package/dist/backup/core/snapshot.js.map +1 -0
  335. package/dist/backup/docs/backup.disaster-recovery.docs.descriptor.d.ts +19 -0
  336. package/dist/backup/docs/backup.disaster-recovery.docs.descriptor.d.ts.map +1 -0
  337. package/dist/backup/docs/backup.disaster-recovery.docs.descriptor.js +42 -0
  338. package/dist/backup/docs/backup.disaster-recovery.docs.descriptor.js.map +1 -0
  339. package/dist/backup/index.d.ts +19 -0
  340. package/dist/backup/index.d.ts.map +1 -0
  341. package/dist/backup/index.js +16 -0
  342. package/dist/backup/index.js.map +1 -0
  343. package/dist/backup/jobs/backup.snapshot.descriptor.d.ts +95 -0
  344. package/dist/backup/jobs/backup.snapshot.descriptor.d.ts.map +1 -0
  345. package/dist/backup/jobs/backup.snapshot.descriptor.js +33 -0
  346. package/dist/backup/jobs/backup.snapshot.descriptor.js.map +1 -0
  347. package/dist/backup/jobs/backup.snapshot.impl.d.ts +59 -0
  348. package/dist/backup/jobs/backup.snapshot.impl.d.ts.map +1 -0
  349. package/dist/backup/jobs/backup.snapshot.impl.js +393 -0
  350. package/dist/backup/jobs/backup.snapshot.impl.js.map +1 -0
  351. package/dist/backup/jobs/backup.snapshot.schema.d.ts +3 -0
  352. package/dist/backup/jobs/backup.snapshot.schema.d.ts.map +1 -0
  353. package/dist/backup/jobs/backup.snapshot.schema.js +3 -0
  354. package/dist/backup/jobs/backup.snapshot.schema.js.map +1 -0
  355. package/dist/backup/kinds/backup-preflight.kind.d.ts +16 -0
  356. package/dist/backup/kinds/backup-preflight.kind.d.ts.map +1 -0
  357. package/dist/backup/kinds/backup-preflight.kind.js +27 -0
  358. package/dist/backup/kinds/backup-preflight.kind.js.map +1 -0
  359. package/dist/backup/kinds/backup-recovery-plan.kind.d.ts +11 -0
  360. package/dist/backup/kinds/backup-recovery-plan.kind.d.ts.map +1 -0
  361. package/dist/backup/kinds/backup-recovery-plan.kind.js +16 -0
  362. package/dist/backup/kinds/backup-recovery-plan.kind.js.map +1 -0
  363. package/dist/backup/kinds/backup-target.kind.d.ts +16 -0
  364. package/dist/backup/kinds/backup-target.kind.d.ts.map +1 -0
  365. package/dist/backup/kinds/backup-target.kind.js +21 -0
  366. package/dist/backup/kinds/backup-target.kind.js.map +1 -0
  367. package/dist/backup/schemas/core.d.ts +169 -0
  368. package/dist/backup/schemas/core.d.ts.map +1 -0
  369. package/dist/backup/schemas/core.js +117 -0
  370. package/dist/backup/schemas/core.js.map +1 -0
  371. package/dist/backup/schemas/disaster-recovery.d.ts +512 -0
  372. package/dist/backup/schemas/disaster-recovery.d.ts.map +1 -0
  373. package/dist/backup/schemas/disaster-recovery.js +410 -0
  374. package/dist/backup/schemas/disaster-recovery.js.map +1 -0
  375. package/dist/backup/schemas/index.d.ts +10 -0
  376. package/dist/backup/schemas/index.d.ts.map +1 -0
  377. package/dist/backup/schemas/index.js +10 -0
  378. package/dist/backup/schemas/index.js.map +1 -0
  379. package/dist/backup/schemas/job.d.ts +102 -0
  380. package/dist/backup/schemas/job.d.ts.map +1 -0
  381. package/dist/backup/schemas/job.js +47 -0
  382. package/dist/backup/schemas/job.js.map +1 -0
  383. package/dist/backup/schemas/preflight.d.ts +38 -0
  384. package/dist/backup/schemas/preflight.d.ts.map +1 -0
  385. package/dist/backup/schemas/preflight.js +21 -0
  386. package/dist/backup/schemas/preflight.js.map +1 -0
  387. package/dist/backup/schemas/snapshot.d.ts +110 -0
  388. package/dist/backup/schemas/snapshot.d.ts.map +1 -0
  389. package/dist/backup/schemas/snapshot.js +84 -0
  390. package/dist/backup/schemas/snapshot.js.map +1 -0
  391. package/dist/backup/schemas/target.d.ts +95 -0
  392. package/dist/backup/schemas/target.d.ts.map +1 -0
  393. package/dist/backup/schemas/target.js +105 -0
  394. package/dist/backup/schemas/target.js.map +1 -0
  395. package/dist/backup/storage/snapshot.record.descriptor.d.ts +10 -0
  396. package/dist/backup/storage/snapshot.record.descriptor.d.ts.map +1 -0
  397. package/dist/backup/storage/snapshot.record.descriptor.js +41 -0
  398. package/dist/backup/storage/snapshot.record.descriptor.js.map +1 -0
  399. package/dist/backup/targets/awareness-bus.target.descriptor.d.ts +10 -0
  400. package/dist/backup/targets/awareness-bus.target.descriptor.d.ts.map +1 -0
  401. package/dist/backup/targets/awareness-bus.target.descriptor.js +32 -0
  402. package/dist/backup/targets/awareness-bus.target.descriptor.js.map +1 -0
  403. package/dist/backup/targets/presence-identity.target.descriptor.d.ts +10 -0
  404. package/dist/backup/targets/presence-identity.target.descriptor.d.ts.map +1 -0
  405. package/dist/backup/targets/presence-identity.target.descriptor.js +40 -0
  406. package/dist/backup/targets/presence-identity.target.descriptor.js.map +1 -0
  407. package/dist/backup/targets/presence-inner.target.descriptor.d.ts +10 -0
  408. package/dist/backup/targets/presence-inner.target.descriptor.d.ts.map +1 -0
  409. package/dist/backup/targets/presence-inner.target.descriptor.js +36 -0
  410. package/dist/backup/targets/presence-inner.target.descriptor.js.map +1 -0
  411. package/dist/backup/targets/storage-records.target.descriptor.d.ts +16 -0
  412. package/dist/backup/targets/storage-records.target.descriptor.d.ts.map +1 -0
  413. package/dist/backup/targets/storage-records.target.descriptor.js +38 -0
  414. package/dist/backup/targets/storage-records.target.descriptor.js.map +1 -0
  415. package/dist/bridge/index.d.ts +2 -2
  416. package/dist/bridge/index.d.ts.map +1 -1
  417. package/dist/bridge/index.js +1 -1
  418. package/dist/bridge/index.js.map +1 -1
  419. package/dist/bridge/storage-kind-bridge.d.ts +13 -2
  420. package/dist/bridge/storage-kind-bridge.d.ts.map +1 -1
  421. package/dist/bridge/storage-kind-bridge.js +72 -69
  422. package/dist/bridge/storage-kind-bridge.js.map +1 -1
  423. package/dist/bridge/types.d.ts +4 -3
  424. package/dist/bridge/types.d.ts.map +1 -1
  425. package/dist/cli/backup/backup.cli-group.descriptor.d.ts +9 -0
  426. package/dist/cli/backup/backup.cli-group.descriptor.d.ts.map +1 -0
  427. package/dist/cli/backup/backup.cli-group.descriptor.js +16 -0
  428. package/dist/cli/backup/backup.cli-group.descriptor.js.map +1 -0
  429. package/dist/cli/backup/commands/backup.now.cli-command.descriptor.d.ts +4 -0
  430. package/dist/cli/backup/commands/backup.now.cli-command.descriptor.d.ts.map +1 -0
  431. package/dist/cli/backup/commands/backup.now.cli-command.descriptor.js +24 -0
  432. package/dist/cli/backup/commands/backup.now.cli-command.descriptor.js.map +1 -0
  433. package/dist/cli/backup/commands/backup.now.cli-command.impl.d.ts +26 -0
  434. package/dist/cli/backup/commands/backup.now.cli-command.impl.d.ts.map +1 -0
  435. package/dist/cli/backup/commands/backup.now.cli-command.impl.js +61 -0
  436. package/dist/cli/backup/commands/backup.now.cli-command.impl.js.map +1 -0
  437. package/dist/cli/backup/commands/backup.restore.cli-command.descriptor.d.ts +4 -0
  438. package/dist/cli/backup/commands/backup.restore.cli-command.descriptor.d.ts.map +1 -0
  439. package/dist/cli/backup/commands/backup.restore.cli-command.descriptor.js +24 -0
  440. package/dist/cli/backup/commands/backup.restore.cli-command.descriptor.js.map +1 -0
  441. package/dist/cli/backup/commands/backup.restore.cli-command.impl.d.ts +23 -0
  442. package/dist/cli/backup/commands/backup.restore.cli-command.impl.d.ts.map +1 -0
  443. package/dist/cli/backup/commands/backup.restore.cli-command.impl.js +50 -0
  444. package/dist/cli/backup/commands/backup.restore.cli-command.impl.js.map +1 -0
  445. package/dist/cli/backup/commands/backup.status.cli-command.descriptor.d.ts +4 -0
  446. package/dist/cli/backup/commands/backup.status.cli-command.descriptor.d.ts.map +1 -0
  447. package/dist/cli/backup/commands/backup.status.cli-command.descriptor.js +19 -0
  448. package/dist/cli/backup/commands/backup.status.cli-command.descriptor.js.map +1 -0
  449. package/dist/cli/backup/commands/backup.status.cli-command.impl.d.ts +21 -0
  450. package/dist/cli/backup/commands/backup.status.cli-command.impl.d.ts.map +1 -0
  451. package/dist/cli/backup/commands/backup.status.cli-command.impl.js +76 -0
  452. package/dist/cli/backup/commands/backup.status.cli-command.impl.js.map +1 -0
  453. package/dist/cli/backup/commands/backup.verify.cli-command.descriptor.d.ts +4 -0
  454. package/dist/cli/backup/commands/backup.verify.cli-command.descriptor.d.ts.map +1 -0
  455. package/dist/cli/backup/commands/backup.verify.cli-command.descriptor.js +20 -0
  456. package/dist/cli/backup/commands/backup.verify.cli-command.descriptor.js.map +1 -0
  457. package/dist/cli/backup/commands/backup.verify.cli-command.impl.d.ts +20 -0
  458. package/dist/cli/backup/commands/backup.verify.cli-command.impl.d.ts.map +1 -0
  459. package/dist/cli/backup/commands/backup.verify.cli-command.impl.js +48 -0
  460. package/dist/cli/backup/commands/backup.verify.cli-command.impl.js.map +1 -0
  461. package/dist/cli/backup/plugin.d.ts +5 -0
  462. package/dist/cli/backup/plugin.d.ts.map +1 -0
  463. package/dist/cli/backup/plugin.js +30 -0
  464. package/dist/cli/backup/plugin.js.map +1 -0
  465. package/dist/cli/commands/list/storage.list.cli-command.descriptor.d.ts +1 -1
  466. package/dist/cli/commands/list/storage.list.cli-command.descriptor.d.ts.map +1 -1
  467. package/dist/cli/commands/list/storage.list.cli-command.impl.d.ts +8 -1
  468. package/dist/cli/commands/list/storage.list.cli-command.impl.d.ts.map +1 -1
  469. package/dist/cli/commands/list/storage.list.cli-command.impl.js +17 -8
  470. package/dist/cli/commands/list/storage.list.cli-command.impl.js.map +1 -1
  471. package/dist/cli/commands/sync/pull/storage.sync.pull.cli-command.descriptor.d.ts +1 -1
  472. package/dist/cli/commands/sync/pull/storage.sync.pull.cli-command.descriptor.d.ts.map +1 -1
  473. package/dist/cli/commands/sync/pull/storage.sync.pull.cli-command.impl.d.ts +9 -1
  474. package/dist/cli/commands/sync/pull/storage.sync.pull.cli-command.impl.d.ts.map +1 -1
  475. package/dist/cli/commands/sync/pull/storage.sync.pull.cli-command.impl.js +110 -76
  476. package/dist/cli/commands/sync/pull/storage.sync.pull.cli-command.impl.js.map +1 -1
  477. package/dist/cli/commands/sync/push/storage.sync.push.cli-command.descriptor.d.ts +1 -1
  478. package/dist/cli/commands/sync/push/storage.sync.push.cli-command.descriptor.d.ts.map +1 -1
  479. package/dist/cli/commands/sync/push/storage.sync.push.cli-command.impl.d.ts +9 -1
  480. package/dist/cli/commands/sync/push/storage.sync.push.cli-command.impl.d.ts.map +1 -1
  481. package/dist/cli/commands/sync/push/storage.sync.push.cli-command.impl.js +131 -108
  482. package/dist/cli/commands/sync/push/storage.sync.push.cli-command.impl.js.map +1 -1
  483. package/dist/cli/commands/sync/resolve/storage.sync.resolve.cli-command.descriptor.d.ts +1 -1
  484. package/dist/cli/commands/sync/resolve/storage.sync.resolve.cli-command.descriptor.d.ts.map +1 -1
  485. package/dist/cli/commands/sync/resolve/storage.sync.resolve.cli-command.impl.d.ts +12 -1
  486. package/dist/cli/commands/sync/resolve/storage.sync.resolve.cli-command.impl.d.ts.map +1 -1
  487. package/dist/cli/commands/sync/resolve/storage.sync.resolve.cli-command.impl.js +34 -26
  488. package/dist/cli/commands/sync/resolve/storage.sync.resolve.cli-command.impl.js.map +1 -1
  489. package/dist/cli/commands/sync/status/storage.sync.status.cli-command.descriptor.d.ts +1 -1
  490. package/dist/cli/commands/sync/status/storage.sync.status.cli-command.descriptor.d.ts.map +1 -1
  491. package/dist/cli/commands/sync/status/storage.sync.status.cli-command.impl.d.ts +11 -1
  492. package/dist/cli/commands/sync/status/storage.sync.status.cli-command.impl.d.ts.map +1 -1
  493. package/dist/cli/commands/sync/status/storage.sync.status.cli-command.impl.js +89 -42
  494. package/dist/cli/commands/sync/status/storage.sync.status.cli-command.impl.js.map +1 -1
  495. package/dist/cli/commands/sync/sync-command-input.d.ts +20 -0
  496. package/dist/cli/commands/sync/sync-command-input.d.ts.map +1 -0
  497. package/dist/cli/commands/sync/sync-command-input.js +20 -0
  498. package/dist/cli/commands/sync/sync-command-input.js.map +1 -0
  499. package/dist/cli/gc/commands/gc.run.cli-command.descriptor.d.ts +4 -0
  500. package/dist/cli/gc/commands/gc.run.cli-command.descriptor.d.ts.map +1 -0
  501. package/dist/cli/gc/commands/gc.run.cli-command.descriptor.js +20 -0
  502. package/dist/cli/gc/commands/gc.run.cli-command.descriptor.js.map +1 -0
  503. package/dist/cli/gc/commands/gc.run.cli-command.impl.d.ts +24 -0
  504. package/dist/cli/gc/commands/gc.run.cli-command.impl.d.ts.map +1 -0
  505. package/dist/cli/gc/commands/gc.run.cli-command.impl.js +104 -0
  506. package/dist/cli/gc/commands/gc.run.cli-command.impl.js.map +1 -0
  507. package/dist/cli/gc/commands/gc.status.cli-command.descriptor.d.ts +4 -0
  508. package/dist/cli/gc/commands/gc.status.cli-command.descriptor.d.ts.map +1 -0
  509. package/dist/cli/gc/commands/gc.status.cli-command.descriptor.js +19 -0
  510. package/dist/cli/gc/commands/gc.status.cli-command.descriptor.js.map +1 -0
  511. package/dist/cli/gc/commands/gc.status.cli-command.impl.d.ts +21 -0
  512. package/dist/cli/gc/commands/gc.status.cli-command.impl.d.ts.map +1 -0
  513. package/dist/cli/gc/commands/gc.status.cli-command.impl.js +74 -0
  514. package/dist/cli/gc/commands/gc.status.cli-command.impl.js.map +1 -0
  515. package/dist/cli/gc/gc.cli-group.descriptor.d.ts +4 -0
  516. package/dist/cli/gc/gc.cli-group.descriptor.d.ts.map +1 -0
  517. package/dist/cli/gc/gc.cli-group.descriptor.js +11 -0
  518. package/dist/cli/gc/gc.cli-group.descriptor.js.map +1 -0
  519. package/dist/cli/gc/plugin.d.ts +5 -0
  520. package/dist/cli/gc/plugin.d.ts.map +1 -0
  521. package/dist/cli/gc/plugin.js +28 -0
  522. package/dist/cli/gc/plugin.js.map +1 -0
  523. package/dist/cli/plugin.d.ts +17 -0
  524. package/dist/cli/plugin.d.ts.map +1 -0
  525. package/dist/cli/plugin.js +51 -0
  526. package/dist/cli/plugin.js.map +1 -0
  527. package/dist/cli/storage.cli-group.descriptor.d.ts +1 -1
  528. package/dist/cli/storage.cli-group.descriptor.d.ts.map +1 -1
  529. package/dist/cli/storage.sync.cli-group.descriptor.d.ts +1 -1
  530. package/dist/cli/storage.sync.cli-group.descriptor.d.ts.map +1 -1
  531. package/dist/cli/types.d.ts +4 -20
  532. package/dist/cli/types.d.ts.map +1 -1
  533. package/dist/cli/types.js +3 -4
  534. package/dist/cli/types.js.map +1 -1
  535. package/dist/client/browse-adapter.d.ts +49 -0
  536. package/dist/client/browse-adapter.d.ts.map +1 -0
  537. package/dist/client/browse-adapter.js +99 -0
  538. package/dist/client/browse-adapter.js.map +1 -0
  539. package/dist/client/diagnose-adapter.d.ts +9 -0
  540. package/dist/client/diagnose-adapter.d.ts.map +1 -0
  541. package/dist/client/diagnose-adapter.js +9 -0
  542. package/dist/client/diagnose-adapter.js.map +1 -0
  543. package/dist/client/index.d.ts +7 -1
  544. package/dist/client/index.d.ts.map +1 -1
  545. package/dist/client/index.js +5 -1
  546. package/dist/client/index.js.map +1 -1
  547. package/dist/client/list-browsable-adapters.d.ts +4 -3
  548. package/dist/client/list-browsable-adapters.d.ts.map +1 -1
  549. package/dist/client/list-browsable-adapters.js +3 -8
  550. package/dist/client/list-browsable-adapters.js.map +1 -1
  551. package/dist/client/object-adapter.d.ts +33 -0
  552. package/dist/client/object-adapter.d.ts.map +1 -0
  553. package/dist/client/object-adapter.js +45 -0
  554. package/dist/client/object-adapter.js.map +1 -0
  555. package/dist/client/storage-explorer-capability.d.ts +81 -0
  556. package/dist/client/storage-explorer-capability.d.ts.map +1 -0
  557. package/dist/client/storage-explorer-capability.impl.worker.d.ts +23 -0
  558. package/dist/client/storage-explorer-capability.impl.worker.d.ts.map +1 -0
  559. package/dist/client/storage-explorer-capability.impl.worker.js +124 -0
  560. package/dist/client/storage-explorer-capability.impl.worker.js.map +1 -0
  561. package/dist/client/storage-explorer-capability.js +125 -0
  562. package/dist/client/storage-explorer-capability.js.map +1 -0
  563. package/dist/client/storage-failure.d.ts +43 -0
  564. package/dist/client/storage-failure.d.ts.map +1 -0
  565. package/dist/client/storage-failure.js +100 -0
  566. package/dist/client/storage-failure.js.map +1 -0
  567. package/dist/daemon/commands/browse.d.ts +29 -0
  568. package/dist/daemon/commands/browse.d.ts.map +1 -0
  569. package/dist/daemon/commands/browse.js +91 -0
  570. package/dist/daemon/commands/browse.js.map +1 -0
  571. package/dist/daemon/commands/sync.d.ts +1 -1
  572. package/dist/daemon/commands/sync.d.ts.map +1 -1
  573. package/dist/daemon/commands/sync.js +60 -52
  574. package/dist/daemon/commands/sync.js.map +1 -1
  575. package/dist/docs/records.docs.descriptor.d.ts +1 -1
  576. package/dist/docs/records.docs.descriptor.d.ts.map +1 -1
  577. package/dist/docs/records.docs.descriptor.js +136 -151
  578. package/dist/docs/records.docs.descriptor.js.map +1 -1
  579. package/dist/docs/storage.adapters.docs.descriptor.d.ts +4 -0
  580. package/dist/docs/storage.adapters.docs.descriptor.d.ts.map +1 -0
  581. package/dist/docs/storage.adapters.docs.descriptor.js +175 -0
  582. package/dist/docs/storage.adapters.docs.descriptor.js.map +1 -0
  583. package/dist/docs/storage.browse.docs.descriptor.d.ts +4 -0
  584. package/dist/docs/storage.browse.docs.descriptor.d.ts.map +1 -0
  585. package/dist/docs/storage.browse.docs.descriptor.js +74 -0
  586. package/dist/docs/storage.browse.docs.descriptor.js.map +1 -0
  587. package/dist/docs/storage.docs.descriptor.d.ts +4 -0
  588. package/dist/docs/storage.docs.descriptor.d.ts.map +1 -0
  589. package/dist/docs/storage.docs.descriptor.js +51 -0
  590. package/dist/docs/storage.docs.descriptor.js.map +1 -0
  591. package/dist/docs/storage.manifests.docs.descriptor.d.ts +4 -0
  592. package/dist/docs/storage.manifests.docs.descriptor.d.ts.map +1 -0
  593. package/dist/docs/{manifests.docs.descriptor.js → storage.manifests.docs.descriptor.js} +69 -34
  594. package/dist/docs/storage.manifests.docs.descriptor.js.map +1 -0
  595. package/dist/docs/sync.docs.descriptor.d.ts +1 -1
  596. package/dist/docs/sync.docs.descriptor.d.ts.map +1 -1
  597. package/dist/docs/sync.docs.descriptor.js +140 -150
  598. package/dist/docs/sync.docs.descriptor.js.map +1 -1
  599. package/dist/docs/transform.docs.descriptor.d.ts +4 -0
  600. package/dist/docs/transform.docs.descriptor.d.ts.map +1 -0
  601. package/dist/docs/transform.docs.descriptor.js +134 -0
  602. package/dist/docs/transform.docs.descriptor.js.map +1 -0
  603. package/dist/host-files.d.ts +35 -0
  604. package/dist/host-files.d.ts.map +1 -0
  605. package/dist/host-files.js +60 -0
  606. package/dist/host-files.js.map +1 -0
  607. package/dist/index.d.ts +15 -13
  608. package/dist/index.d.ts.map +1 -1
  609. package/dist/index.js +10 -10
  610. package/dist/index.js.map +1 -1
  611. package/dist/interfaces/adapter.d.ts +166 -47
  612. package/dist/interfaces/adapter.d.ts.map +1 -1
  613. package/dist/interfaces/document-store.d.ts +41 -1
  614. package/dist/interfaces/document-store.d.ts.map +1 -1
  615. package/dist/interfaces/index.d.ts +8 -7
  616. package/dist/interfaces/index.d.ts.map +1 -1
  617. package/dist/interfaces/index.js +9 -7
  618. package/dist/interfaces/index.js.map +1 -1
  619. package/dist/interfaces/object-store.d.ts +54 -0
  620. package/dist/interfaces/object-store.d.ts.map +1 -0
  621. package/dist/interfaces/object-store.js +13 -0
  622. package/dist/interfaces/object-store.js.map +1 -0
  623. package/dist/interfaces/query-builder.d.ts +2 -30
  624. package/dist/interfaces/query-builder.d.ts.map +1 -1
  625. package/dist/interfaces/query-builder.js +0 -9
  626. package/dist/interfaces/query-builder.js.map +1 -1
  627. package/dist/interfaces/record/index.d.ts +1 -1
  628. package/dist/interfaces/record/index.d.ts.map +1 -1
  629. package/dist/interfaces/record/index.js +1 -1
  630. package/dist/interfaces/record/index.js.map +1 -1
  631. package/dist/interfaces/record/interface.d.ts +30 -9
  632. package/dist/interfaces/record/interface.d.ts.map +1 -1
  633. package/dist/interfaces/schema/index.d.ts +2 -2
  634. package/dist/interfaces/schema/index.d.ts.map +1 -1
  635. package/dist/interfaces/schema/index.js +2 -2
  636. package/dist/interfaces/schema/index.js.map +1 -1
  637. package/dist/interfaces/schema/schema-interface.d.ts +9 -8
  638. package/dist/interfaces/schema/schema-interface.d.ts.map +1 -1
  639. package/dist/interfaces/schema/table-interface.d.ts +4 -3
  640. package/dist/interfaces/schema/table-interface.d.ts.map +1 -1
  641. package/dist/interfaces/storage-consumer-fs.d.ts +25 -27
  642. package/dist/interfaces/storage-consumer-fs.d.ts.map +1 -1
  643. package/dist/interfaces/storage-consumer-fs.js +29 -30
  644. package/dist/interfaces/storage-consumer-fs.js.map +1 -1
  645. package/dist/manifest/base.d.ts +104 -22
  646. package/dist/manifest/base.d.ts.map +1 -1
  647. package/dist/manifest/base.js +393 -151
  648. package/dist/manifest/base.js.map +1 -1
  649. package/dist/manifest/cloud-sync.browser.d.ts +3 -0
  650. package/dist/manifest/cloud-sync.browser.d.ts.map +1 -0
  651. package/dist/manifest/cloud-sync.browser.js +3 -0
  652. package/dist/manifest/cloud-sync.browser.js.map +1 -0
  653. package/dist/manifest/cloud-sync.consumer.d.ts +2 -6
  654. package/dist/manifest/cloud-sync.consumer.d.ts.map +1 -1
  655. package/dist/manifest/cloud-sync.consumer.js +2 -81
  656. package/dist/manifest/cloud-sync.consumer.js.map +1 -1
  657. package/dist/manifest/cloud-sync.core.d.ts +30 -0
  658. package/dist/manifest/cloud-sync.core.d.ts.map +1 -0
  659. package/dist/manifest/cloud-sync.core.js +67 -0
  660. package/dist/manifest/cloud-sync.core.js.map +1 -0
  661. package/dist/manifest/cloud-sync.d.ts +3 -0
  662. package/dist/manifest/cloud-sync.d.ts.map +1 -0
  663. package/dist/manifest/cloud-sync.js +8 -0
  664. package/dist/manifest/cloud-sync.js.map +1 -0
  665. package/dist/manifest/index.d.ts +1 -1
  666. package/dist/manifest/index.d.ts.map +1 -1
  667. package/dist/manifest/index.js +1 -1
  668. package/dist/manifest/index.js.map +1 -1
  669. package/dist/manifest/source-policy.d.ts +21 -4
  670. package/dist/manifest/source-policy.d.ts.map +1 -1
  671. package/dist/manifest/source-policy.js +48 -50
  672. package/dist/manifest/source-policy.js.map +1 -1
  673. package/dist/migration-format/index.d.ts +3 -0
  674. package/dist/migration-format/index.d.ts.map +1 -0
  675. package/dist/migration-format/index.js +3 -0
  676. package/dist/migration-format/index.js.map +1 -0
  677. package/dist/migration-format/migration-format.kind.d.ts +5 -0
  678. package/dist/migration-format/migration-format.kind.d.ts.map +1 -0
  679. package/dist/migration-format/migration-format.kind.js +18 -0
  680. package/dist/migration-format/migration-format.kind.js.map +1 -0
  681. package/dist/path-format.d.ts +4 -0
  682. package/dist/path-format.d.ts.map +1 -0
  683. package/dist/path-format.js +71 -0
  684. package/dist/path-format.js.map +1 -0
  685. package/dist/path-policy.d.ts +28 -0
  686. package/dist/path-policy.d.ts.map +1 -0
  687. package/dist/path-policy.js +123 -0
  688. package/dist/path-policy.js.map +1 -0
  689. package/dist/paths.d.ts +14 -5
  690. package/dist/paths.d.ts.map +1 -1
  691. package/dist/paths.js +17 -150
  692. package/dist/paths.js.map +1 -1
  693. package/dist/policy/context.d.ts +3 -2
  694. package/dist/policy/context.d.ts.map +1 -1
  695. package/dist/policy/context.js +13 -16
  696. package/dist/policy/context.js.map +1 -1
  697. package/dist/policy/index.d.ts +3 -3
  698. package/dist/policy/index.d.ts.map +1 -1
  699. package/dist/policy/index.js +3 -3
  700. package/dist/policy/index.js.map +1 -1
  701. package/dist/policy/overrides.d.ts +5 -39
  702. package/dist/policy/overrides.d.ts.map +1 -1
  703. package/dist/policy/overrides.js +19 -24
  704. package/dist/policy/overrides.js.map +1 -1
  705. package/dist/policy/persistence.d.ts +2 -35
  706. package/dist/policy/persistence.d.ts.map +1 -1
  707. package/dist/policy/persistence.js +2 -12
  708. package/dist/policy/persistence.js.map +1 -1
  709. package/dist/policy/types.d.ts +5 -5
  710. package/dist/policy/types.d.ts.map +1 -1
  711. package/dist/record/array-fields.d.ts +15 -0
  712. package/dist/record/array-fields.d.ts.map +1 -0
  713. package/dist/record/array-fields.js +80 -0
  714. package/dist/record/array-fields.js.map +1 -0
  715. package/dist/record/atomic.d.ts +5 -0
  716. package/dist/record/atomic.d.ts.map +1 -0
  717. package/dist/record/atomic.js +10 -0
  718. package/dist/record/atomic.js.map +1 -0
  719. package/dist/record/base.d.ts +177 -39
  720. package/dist/record/base.d.ts.map +1 -1
  721. package/dist/record/base.js +1708 -525
  722. package/dist/record/base.js.map +1 -1
  723. package/dist/record/columns.d.ts +23 -0
  724. package/dist/record/columns.d.ts.map +1 -0
  725. package/dist/record/columns.js +161 -0
  726. package/dist/record/columns.js.map +1 -0
  727. package/dist/record/delivery.d.ts +57 -0
  728. package/dist/record/delivery.d.ts.map +1 -0
  729. package/dist/record/delivery.js +262 -0
  730. package/dist/record/delivery.js.map +1 -0
  731. package/dist/record/events.js +1 -1
  732. package/dist/record/events.js.map +1 -1
  733. package/dist/record/extensions.d.ts +17 -14
  734. package/dist/record/extensions.d.ts.map +1 -1
  735. package/dist/record/extensions.js +79 -53
  736. package/dist/record/extensions.js.map +1 -1
  737. package/dist/record/failure-condition.d.ts +14 -0
  738. package/dist/record/failure-condition.d.ts.map +1 -0
  739. package/dist/record/failure-condition.js +17 -0
  740. package/dist/record/failure-condition.js.map +1 -0
  741. package/dist/record/index.d.ts +5 -1
  742. package/dist/record/index.d.ts.map +1 -1
  743. package/dist/record/index.js +5 -1
  744. package/dist/record/index.js.map +1 -1
  745. package/dist/record/merge.d.ts +21 -0
  746. package/dist/record/merge.d.ts.map +1 -0
  747. package/dist/record/merge.js +147 -0
  748. package/dist/record/merge.js.map +1 -0
  749. package/dist/record/relations.d.ts +23 -0
  750. package/dist/record/relations.d.ts.map +1 -0
  751. package/dist/record/relations.js +164 -0
  752. package/dist/record/relations.js.map +1 -0
  753. package/dist/record/revision.d.ts +5 -0
  754. package/dist/record/revision.d.ts.map +1 -0
  755. package/dist/record/revision.js +11 -0
  756. package/dist/record/revision.js.map +1 -0
  757. package/dist/record/schema-coordination.client.d.ts +16 -0
  758. package/dist/record/schema-coordination.client.d.ts.map +1 -0
  759. package/dist/record/schema-coordination.client.js +59 -0
  760. package/dist/record/schema-coordination.client.js.map +1 -0
  761. package/dist/record/storage.record-delivery.reconcile.descriptor.d.ts +74 -0
  762. package/dist/record/storage.record-delivery.reconcile.descriptor.d.ts.map +1 -0
  763. package/dist/record/storage.record-delivery.reconcile.descriptor.js +54 -0
  764. package/dist/record/storage.record-delivery.reconcile.descriptor.js.map +1 -0
  765. package/dist/record/storage.record-delivery.reconcile.impl.d.ts +22 -0
  766. package/dist/record/storage.record-delivery.reconcile.impl.d.ts.map +1 -0
  767. package/dist/record/storage.record-delivery.reconcile.impl.js +52 -0
  768. package/dist/record/storage.record-delivery.reconcile.impl.js.map +1 -0
  769. package/dist/resolver/storage-backed-resolver.d.ts +12 -5
  770. package/dist/resolver/storage-backed-resolver.d.ts.map +1 -1
  771. package/dist/resolver/storage-backed-resolver.js +129 -48
  772. package/dist/resolver/storage-backed-resolver.js.map +1 -1
  773. package/dist/retention/capacity.d.ts +37 -0
  774. package/dist/retention/capacity.d.ts.map +1 -0
  775. package/dist/retention/capacity.js +71 -0
  776. package/dist/retention/capacity.js.map +1 -0
  777. package/dist/retention/catalog-chunks.d.ts +11 -0
  778. package/dist/retention/catalog-chunks.d.ts.map +1 -0
  779. package/dist/retention/catalog-chunks.js +62 -0
  780. package/dist/retention/catalog-chunks.js.map +1 -0
  781. package/dist/retention/reclaim.d.ts +59 -0
  782. package/dist/retention/reclaim.d.ts.map +1 -0
  783. package/dist/retention/reclaim.js +259 -0
  784. package/dist/retention/reclaim.js.map +1 -0
  785. package/dist/retention/roots.d.ts +141 -0
  786. package/dist/retention/roots.d.ts.map +1 -0
  787. package/dist/retention/roots.js +223 -0
  788. package/dist/retention/roots.js.map +1 -0
  789. package/dist/retention/scratch-custody.d.ts +40 -0
  790. package/dist/retention/scratch-custody.d.ts.map +1 -0
  791. package/dist/retention/scratch-custody.js +15 -0
  792. package/dist/retention/scratch-custody.js.map +1 -0
  793. package/dist/retention/startup-sweep.d.ts +57 -0
  794. package/dist/retention/startup-sweep.d.ts.map +1 -0
  795. package/dist/retention/startup-sweep.js +137 -0
  796. package/dist/retention/startup-sweep.js.map +1 -0
  797. package/dist/retention/storage.retention-sweep.descriptor.d.ts +82 -0
  798. package/dist/retention/storage.retention-sweep.descriptor.d.ts.map +1 -0
  799. package/dist/retention/storage.retention-sweep.descriptor.js +42 -0
  800. package/dist/retention/storage.retention-sweep.descriptor.js.map +1 -0
  801. package/dist/retention/storage.retention-sweep.impl.d.ts +22 -0
  802. package/dist/retention/storage.retention-sweep.impl.d.ts.map +1 -0
  803. package/dist/retention/storage.retention-sweep.impl.js +78 -0
  804. package/dist/retention/storage.retention-sweep.impl.js.map +1 -0
  805. package/dist/retention/storage.retention-sweep.schema.d.ts +3 -0
  806. package/dist/retention/storage.retention-sweep.schema.d.ts.map +1 -0
  807. package/dist/retention/storage.retention-sweep.schema.js +3 -0
  808. package/dist/retention/storage.retention-sweep.schema.js.map +1 -0
  809. package/dist/retention/sweep.d.ts +31 -0
  810. package/dist/retention/sweep.d.ts.map +1 -0
  811. package/dist/retention/sweep.js +190 -0
  812. package/dist/retention/sweep.js.map +1 -0
  813. package/dist/retention/tmp-scratch.d.ts +35 -0
  814. package/dist/retention/tmp-scratch.d.ts.map +1 -0
  815. package/dist/retention/tmp-scratch.js +149 -0
  816. package/dist/retention/tmp-scratch.js.map +1 -0
  817. package/dist/schemas/adapter-config.d.ts +42 -0
  818. package/dist/schemas/adapter-config.d.ts.map +1 -0
  819. package/dist/schemas/adapter-config.js +21 -0
  820. package/dist/schemas/adapter-config.js.map +1 -0
  821. package/dist/schemas/adapter-configuration-diagnostic.d.ts +35 -0
  822. package/dist/schemas/adapter-configuration-diagnostic.d.ts.map +1 -0
  823. package/dist/schemas/adapter-configuration-diagnostic.js +30 -0
  824. package/dist/schemas/adapter-configuration-diagnostic.js.map +1 -0
  825. package/dist/schemas/adapter-descriptor.d.ts +215 -5
  826. package/dist/schemas/adapter-descriptor.d.ts.map +1 -1
  827. package/dist/schemas/adapter-descriptor.js +158 -4
  828. package/dist/schemas/adapter-descriptor.js.map +1 -1
  829. package/dist/schemas/cloud-api.d.ts +99 -0
  830. package/dist/schemas/cloud-api.d.ts.map +1 -0
  831. package/dist/schemas/cloud-api.js +55 -0
  832. package/dist/schemas/cloud-api.js.map +1 -0
  833. package/dist/schemas/cloud-endpoints.d.ts +25 -0
  834. package/dist/schemas/cloud-endpoints.d.ts.map +1 -0
  835. package/dist/schemas/cloud-endpoints.js +38 -0
  836. package/dist/schemas/cloud-endpoints.js.map +1 -0
  837. package/dist/schemas/document-identity.d.ts +40 -0
  838. package/dist/schemas/document-identity.d.ts.map +1 -0
  839. package/dist/schemas/document-identity.js +21 -0
  840. package/dist/schemas/document-identity.js.map +1 -0
  841. package/dist/schemas/document-revision.d.ts +37 -0
  842. package/dist/schemas/document-revision.d.ts.map +1 -0
  843. package/dist/schemas/document-revision.js +14 -0
  844. package/dist/schemas/document-revision.js.map +1 -0
  845. package/dist/schemas/drizzle/config.d.ts +83 -0
  846. package/dist/schemas/drizzle/config.d.ts.map +1 -0
  847. package/dist/schemas/drizzle/config.js +55 -0
  848. package/dist/schemas/drizzle/config.js.map +1 -0
  849. package/dist/schemas/drizzle/connection.d.ts +41 -0
  850. package/dist/schemas/drizzle/connection.d.ts.map +1 -0
  851. package/dist/schemas/drizzle/connection.js +23 -0
  852. package/dist/schemas/drizzle/connection.js.map +1 -0
  853. package/dist/schemas/drizzle/journal-read.d.ts +11 -0
  854. package/dist/schemas/drizzle/journal-read.d.ts.map +1 -0
  855. package/dist/schemas/drizzle/journal-read.js +2 -0
  856. package/dist/schemas/drizzle/journal-read.js.map +1 -0
  857. package/dist/schemas/drizzle/persistence-config.d.ts +39 -0
  858. package/dist/schemas/drizzle/persistence-config.d.ts.map +1 -0
  859. package/dist/schemas/drizzle/persistence-config.js +71 -0
  860. package/dist/schemas/drizzle/persistence-config.js.map +1 -0
  861. package/dist/schemas/drizzle/persistence.d.ts +102 -0
  862. package/dist/schemas/drizzle/persistence.d.ts.map +1 -0
  863. package/dist/schemas/drizzle/persistence.js +28 -0
  864. package/dist/schemas/drizzle/persistence.js.map +1 -0
  865. package/dist/schemas/drizzle/ports.d.ts +39 -0
  866. package/dist/schemas/drizzle/ports.d.ts.map +1 -0
  867. package/dist/schemas/drizzle/ports.js +2 -0
  868. package/dist/schemas/drizzle/ports.js.map +1 -0
  869. package/dist/schemas/drizzle/providers.d.ts +64 -0
  870. package/dist/schemas/drizzle/providers.d.ts.map +1 -0
  871. package/dist/schemas/drizzle/providers.js +19 -0
  872. package/dist/schemas/drizzle/providers.js.map +1 -0
  873. package/dist/schemas/drizzle/raw-sql.d.ts +33 -0
  874. package/dist/schemas/drizzle/raw-sql.d.ts.map +1 -0
  875. package/dist/schemas/drizzle/raw-sql.js +34 -0
  876. package/dist/schemas/drizzle/raw-sql.js.map +1 -0
  877. package/dist/schemas/explorer/capability.d.ts +41 -0
  878. package/dist/schemas/explorer/capability.d.ts.map +1 -0
  879. package/dist/schemas/explorer/capability.js +14 -0
  880. package/dist/schemas/explorer/capability.js.map +1 -0
  881. package/dist/schemas/explorer/overview.d.ts +41 -0
  882. package/dist/schemas/explorer/overview.d.ts.map +1 -0
  883. package/dist/schemas/explorer/overview.js +45 -0
  884. package/dist/schemas/explorer/overview.js.map +1 -0
  885. package/dist/schemas/explorer/refs.d.ts +38 -0
  886. package/dist/schemas/explorer/refs.d.ts.map +1 -0
  887. package/dist/schemas/explorer/refs.js +21 -0
  888. package/dist/schemas/explorer/refs.js.map +1 -0
  889. package/dist/schemas/explorer/rpc.d.ts +211 -0
  890. package/dist/schemas/explorer/rpc.d.ts.map +1 -0
  891. package/dist/schemas/explorer/rpc.js +103 -0
  892. package/dist/schemas/explorer/rpc.js.map +1 -0
  893. package/dist/schemas/explorer/views.d.ts +99 -0
  894. package/dist/schemas/explorer/views.d.ts.map +1 -0
  895. package/dist/schemas/explorer/views.js +84 -0
  896. package/dist/schemas/explorer/views.js.map +1 -0
  897. package/dist/schemas/index.d.ts +16 -8
  898. package/dist/schemas/index.d.ts.map +1 -1
  899. package/dist/schemas/index.js +12 -4
  900. package/dist/schemas/index.js.map +1 -1
  901. package/dist/schemas/localdb/inputs.d.ts +80 -0
  902. package/dist/schemas/localdb/inputs.d.ts.map +1 -0
  903. package/dist/schemas/localdb/inputs.js +99 -0
  904. package/dist/schemas/localdb/inputs.js.map +1 -0
  905. package/dist/schemas/localdb/query.d.ts +28 -0
  906. package/dist/schemas/localdb/query.d.ts.map +1 -0
  907. package/dist/schemas/localdb/query.js +27 -0
  908. package/dist/schemas/localdb/query.js.map +1 -0
  909. package/dist/schemas/manifest-descriptor.d.ts +15 -5
  910. package/dist/schemas/manifest-descriptor.d.ts.map +1 -1
  911. package/dist/schemas/manifest-descriptor.js +2 -2
  912. package/dist/schemas/manifest-descriptor.js.map +1 -1
  913. package/dist/schemas/memory-store.d.ts +8 -0
  914. package/dist/schemas/memory-store.d.ts.map +1 -0
  915. package/dist/schemas/memory-store.js +7 -0
  916. package/dist/schemas/memory-store.js.map +1 -0
  917. package/dist/schemas/migration-format.d.ts +50 -0
  918. package/dist/schemas/migration-format.d.ts.map +1 -0
  919. package/dist/schemas/migration-format.js +17 -0
  920. package/dist/schemas/migration-format.js.map +1 -0
  921. package/dist/schemas/policy/overrides.d.ts +41 -0
  922. package/dist/schemas/policy/overrides.d.ts.map +1 -0
  923. package/dist/schemas/policy/overrides.js +14 -0
  924. package/dist/schemas/policy/overrides.js.map +1 -0
  925. package/dist/schemas/policy/persistence.d.ts +62 -0
  926. package/dist/schemas/policy/persistence.d.ts.map +1 -0
  927. package/dist/schemas/policy/persistence.js +24 -0
  928. package/dist/schemas/policy/persistence.js.map +1 -0
  929. package/dist/schemas/record/atomic.d.ts +41 -0
  930. package/dist/schemas/record/atomic.d.ts.map +1 -0
  931. package/dist/schemas/record/atomic.js +12 -0
  932. package/dist/schemas/record/atomic.js.map +1 -0
  933. package/dist/schemas/record/batch.d.ts +53 -0
  934. package/dist/schemas/record/batch.d.ts.map +1 -0
  935. package/dist/schemas/record/batch.js +36 -0
  936. package/dist/schemas/record/batch.js.map +1 -0
  937. package/dist/schemas/record/columns.d.ts +44 -0
  938. package/dist/schemas/record/columns.d.ts.map +1 -0
  939. package/dist/schemas/record/columns.js +25 -0
  940. package/dist/schemas/record/columns.js.map +1 -0
  941. package/dist/schemas/record/delivery.d.ts +54 -0
  942. package/dist/schemas/record/delivery.d.ts.map +1 -0
  943. package/dist/schemas/record/delivery.js +23 -0
  944. package/dist/schemas/record/delivery.js.map +1 -0
  945. package/dist/schemas/record/descriptor.d.ts +153 -51
  946. package/dist/schemas/record/descriptor.d.ts.map +1 -1
  947. package/dist/schemas/record/descriptor.js +61 -11
  948. package/dist/schemas/record/descriptor.js.map +1 -1
  949. package/dist/schemas/record/index.d.ts +8 -2
  950. package/dist/schemas/record/index.d.ts.map +1 -1
  951. package/dist/schemas/record/index.js +5 -1
  952. package/dist/schemas/record/index.js.map +1 -1
  953. package/dist/schemas/record/query-values.d.ts +62 -0
  954. package/dist/schemas/record/query-values.d.ts.map +1 -0
  955. package/dist/schemas/record/query-values.js +33 -0
  956. package/dist/schemas/record/query-values.js.map +1 -0
  957. package/dist/schemas/record/relation.d.ts +1 -1
  958. package/dist/schemas/record/relation.d.ts.map +1 -1
  959. package/dist/schemas/record/relation.js +8 -4
  960. package/dist/schemas/record/relation.js.map +1 -1
  961. package/dist/schemas/record/revision.d.ts +92 -0
  962. package/dist/schemas/record/revision.d.ts.map +1 -0
  963. package/dist/schemas/record/revision.js +39 -0
  964. package/dist/schemas/record/revision.js.map +1 -0
  965. package/dist/schemas/retention/jobs.d.ts +103 -0
  966. package/dist/schemas/retention/jobs.d.ts.map +1 -0
  967. package/dist/schemas/retention/jobs.js +72 -0
  968. package/dist/schemas/retention/jobs.js.map +1 -0
  969. package/dist/schemas/retention/results.d.ts +153 -0
  970. package/dist/schemas/retention/results.d.ts.map +1 -0
  971. package/dist/schemas/retention/results.js +84 -0
  972. package/dist/schemas/retention/results.js.map +1 -0
  973. package/dist/schemas/schema/descriptor.d.ts +14 -4
  974. package/dist/schemas/schema/descriptor.d.ts.map +1 -1
  975. package/dist/schemas/schema/descriptor.js +3 -3
  976. package/dist/schemas/schema/descriptor.js.map +1 -1
  977. package/dist/schemas/schema/index.d.ts +1 -1
  978. package/dist/schemas/schema/index.d.ts.map +1 -1
  979. package/dist/schemas/schema/index.js +1 -1
  980. package/dist/schemas/schema/index.js.map +1 -1
  981. package/dist/schemas/storage-provider.d.ts +79 -0
  982. package/dist/schemas/storage-provider.d.ts.map +1 -0
  983. package/dist/schemas/storage-provider.js +54 -0
  984. package/dist/schemas/storage-provider.js.map +1 -0
  985. package/dist/schemas/storage-ref.d.ts +39 -0
  986. package/dist/schemas/storage-ref.d.ts.map +1 -0
  987. package/dist/schemas/storage-ref.js +64 -0
  988. package/dist/schemas/storage-ref.js.map +1 -0
  989. package/dist/schemas/sync/command.d.ts +15 -0
  990. package/dist/schemas/sync/command.d.ts.map +1 -0
  991. package/dist/schemas/sync/command.js +10 -0
  992. package/dist/schemas/sync/command.js.map +1 -0
  993. package/dist/schemas/sync/crud.d.ts +26 -0
  994. package/dist/schemas/sync/crud.d.ts.map +1 -0
  995. package/dist/schemas/sync/crud.js +16 -0
  996. package/dist/schemas/sync/crud.js.map +1 -0
  997. package/dist/schemas/sync/document.d.ts +4 -0
  998. package/dist/schemas/sync/document.d.ts.map +1 -0
  999. package/dist/schemas/sync/document.js +4 -0
  1000. package/dist/schemas/sync/document.js.map +1 -0
  1001. package/dist/schemas/sync/local-first.d.ts +26 -0
  1002. package/dist/schemas/sync/local-first.d.ts.map +1 -0
  1003. package/dist/schemas/sync/local-first.js +14 -0
  1004. package/dist/schemas/sync/local-first.js.map +1 -0
  1005. package/dist/schemas/sync/results.d.ts +61 -0
  1006. package/dist/schemas/sync/results.d.ts.map +1 -0
  1007. package/dist/schemas/sync/results.js +47 -0
  1008. package/dist/schemas/sync/results.js.map +1 -0
  1009. package/dist/schemas/sync-bridge-descriptor.d.ts +34 -15
  1010. package/dist/schemas/sync-bridge-descriptor.d.ts.map +1 -1
  1011. package/dist/schemas/sync-bridge-descriptor.js +9 -2
  1012. package/dist/schemas/sync-bridge-descriptor.js.map +1 -1
  1013. package/dist/schemas/sync-memory.d.ts +7 -0
  1014. package/dist/schemas/sync-memory.d.ts.map +1 -0
  1015. package/dist/schemas/sync-memory.js +4 -0
  1016. package/dist/schemas/sync-memory.js.map +1 -0
  1017. package/dist/schemas/tools/views.d.ts +83 -0
  1018. package/dist/schemas/tools/views.d.ts.map +1 -0
  1019. package/dist/schemas/tools/views.js +57 -0
  1020. package/dist/schemas/tools/views.js.map +1 -0
  1021. package/dist/schemas/tools/widgets.d.ts +41 -0
  1022. package/dist/schemas/tools/widgets.d.ts.map +1 -0
  1023. package/dist/schemas/tools/widgets.js +13 -0
  1024. package/dist/schemas/tools/widgets.js.map +1 -0
  1025. package/dist/schemas/transform.d.ts +32 -0
  1026. package/dist/schemas/transform.d.ts.map +1 -0
  1027. package/dist/schemas/transform.js +18 -0
  1028. package/dist/schemas/transform.js.map +1 -0
  1029. package/dist/schemas/zod-schema-value.d.ts +8 -0
  1030. package/dist/schemas/zod-schema-value.d.ts.map +1 -0
  1031. package/dist/schemas/zod-schema-value.js +8 -0
  1032. package/dist/schemas/zod-schema-value.js.map +1 -0
  1033. package/dist/server/manifest-route.d.ts +18 -10
  1034. package/dist/server/manifest-route.d.ts.map +1 -1
  1035. package/dist/server/manifest-route.js +88 -90
  1036. package/dist/server/manifest-route.js.map +1 -1
  1037. package/dist/storage-explorer.consumer.plugin.d.ts +10 -0
  1038. package/dist/storage-explorer.consumer.plugin.d.ts.map +1 -0
  1039. package/dist/storage-explorer.consumer.plugin.js +24 -0
  1040. package/dist/storage-explorer.consumer.plugin.js.map +1 -0
  1041. package/dist/storage-policy.context.descriptor.js +1 -1
  1042. package/dist/storage-policy.context.descriptor.js.map +1 -1
  1043. package/dist/storage-policy.context.server.d.ts +7 -9
  1044. package/dist/storage-policy.context.server.d.ts.map +1 -1
  1045. package/dist/storage-policy.context.server.js +7 -20
  1046. package/dist/storage-policy.context.server.js.map +1 -1
  1047. package/dist/storage.consumer.plugin.d.ts +3 -0
  1048. package/dist/storage.consumer.plugin.d.ts.map +1 -0
  1049. package/dist/storage.consumer.plugin.js +15 -0
  1050. package/dist/storage.consumer.plugin.js.map +1 -0
  1051. package/dist/storage.node.plugin.d.ts +3 -0
  1052. package/dist/storage.node.plugin.d.ts.map +1 -0
  1053. package/dist/storage.node.plugin.js +12 -0
  1054. package/dist/storage.node.plugin.js.map +1 -0
  1055. package/dist/storage.plugin.d.ts +10 -16
  1056. package/dist/storage.plugin.d.ts.map +1 -1
  1057. package/dist/storage.plugin.js +150 -91
  1058. package/dist/storage.plugin.js.map +1 -1
  1059. package/dist/svelte/components/ConnectStorageProviderDialog.svelte +345 -0
  1060. package/dist/svelte/components/ConnectStorageProviderDialog.svelte.d.ts +17 -0
  1061. package/dist/svelte/components/ConnectStorageProviderDialog.svelte.d.ts.map +1 -0
  1062. package/dist/svelte/components/PlatformStorageExplorer.svelte +57 -0
  1063. package/dist/svelte/components/PlatformStorageExplorer.svelte.d.ts +23 -0
  1064. package/dist/svelte/components/PlatformStorageExplorer.svelte.d.ts.map +1 -0
  1065. package/dist/svelte/components/StorageBrowser.svelte +436 -0
  1066. package/dist/svelte/components/StorageBrowser.svelte.d.ts +51 -0
  1067. package/dist/svelte/components/StorageBrowser.svelte.d.ts.map +1 -0
  1068. package/dist/svelte/components/StorageBrowserPage.svelte +71 -0
  1069. package/dist/svelte/components/StorageBrowserPage.svelte.d.ts +23 -0
  1070. package/dist/svelte/components/StorageBrowserPage.svelte.d.ts.map +1 -0
  1071. package/dist/svelte/components/StorageCollectionManager.svelte +193 -0
  1072. package/dist/svelte/components/StorageCollectionManager.svelte.d.ts +14 -0
  1073. package/dist/svelte/components/StorageCollectionManager.svelte.d.ts.map +1 -0
  1074. package/dist/svelte/components/StorageDetailsPane.svelte +160 -0
  1075. package/dist/svelte/components/StorageDetailsPane.svelte.d.ts +11 -0
  1076. package/dist/svelte/components/StorageDetailsPane.svelte.d.ts.map +1 -0
  1077. package/dist/svelte/components/StorageDropzone.svelte +76 -0
  1078. package/dist/svelte/components/StorageDropzone.svelte.d.ts +9 -0
  1079. package/dist/svelte/components/StorageDropzone.svelte.d.ts.map +1 -0
  1080. package/dist/svelte/components/StorageExplorer.svelte +954 -0
  1081. package/dist/svelte/components/StorageExplorer.svelte.d.ts +48 -0
  1082. package/dist/svelte/components/StorageExplorer.svelte.d.ts.map +1 -0
  1083. package/dist/svelte/components/StorageFileBrowser.svelte +201 -0
  1084. package/dist/svelte/components/StorageFileBrowser.svelte.d.ts +18 -0
  1085. package/dist/svelte/components/StorageFileBrowser.svelte.d.ts.map +1 -0
  1086. package/dist/svelte/components/StorageFileCard.svelte +162 -0
  1087. package/dist/svelte/components/StorageFileCard.svelte.d.ts +10 -0
  1088. package/dist/svelte/components/StorageFileCard.svelte.d.ts.map +1 -0
  1089. package/dist/svelte/components/StoragePathBar.svelte +104 -0
  1090. package/dist/svelte/components/StoragePathBar.svelte.d.ts +19 -0
  1091. package/dist/svelte/components/StoragePathBar.svelte.d.ts.map +1 -0
  1092. package/dist/svelte/components/StorageProviderSelect.svelte +163 -0
  1093. package/dist/svelte/components/StorageProviderSelect.svelte.d.ts +20 -0
  1094. package/dist/svelte/components/StorageProviderSelect.svelte.d.ts.map +1 -0
  1095. package/dist/svelte/components/StorageProviderSidebar.svelte +187 -0
  1096. package/dist/svelte/components/StorageProviderSidebar.svelte.d.ts +30 -0
  1097. package/dist/svelte/components/StorageProviderSidebar.svelte.d.ts.map +1 -0
  1098. package/dist/svelte/components/StorageReadinessNotice.svelte +181 -0
  1099. package/dist/svelte/components/StorageReadinessNotice.svelte.d.ts +32 -0
  1100. package/dist/svelte/components/StorageReadinessNotice.svelte.d.ts.map +1 -0
  1101. package/dist/svelte/components/StorageSearchBox.svelte +106 -0
  1102. package/dist/svelte/components/StorageSearchBox.svelte.d.ts +19 -0
  1103. package/dist/svelte/components/StorageSearchBox.svelte.d.ts.map +1 -0
  1104. package/dist/svelte/components/StorageToolbar.svelte +160 -0
  1105. package/dist/svelte/components/StorageToolbar.svelte.d.ts +26 -0
  1106. package/dist/svelte/components/StorageToolbar.svelte.d.ts.map +1 -0
  1107. package/dist/svelte/components/StorageUploadChip.svelte +116 -0
  1108. package/dist/svelte/components/StorageUploadChip.svelte.d.ts +13 -0
  1109. package/dist/svelte/components/StorageUploadChip.svelte.d.ts.map +1 -0
  1110. package/dist/svelte/components/index.d.ts +14 -0
  1111. package/dist/svelte/components/index.d.ts.map +1 -0
  1112. package/dist/svelte/components/index.js +12 -0
  1113. package/dist/svelte/components/storage-media.d.ts +14 -0
  1114. package/dist/svelte/components/storage-media.d.ts.map +1 -0
  1115. package/dist/svelte/components/storage-media.js +13 -0
  1116. package/dist/svelte/index.d.ts +14 -0
  1117. package/dist/svelte/index.d.ts.map +1 -0
  1118. package/dist/svelte/index.js +13 -0
  1119. package/dist/svelte/note-store-failure.d.ts +15 -0
  1120. package/dist/svelte/note-store-failure.d.ts.map +1 -0
  1121. package/dist/svelte/note-store-failure.js +21 -0
  1122. package/dist/svelte/platform-storage-port.d.ts +86 -0
  1123. package/dist/svelte/platform-storage-port.d.ts.map +1 -0
  1124. package/dist/svelte/platform-storage-port.js +71 -0
  1125. package/dist/svelte/storage-browse-runtime.d.ts +65 -0
  1126. package/dist/svelte/storage-browse-runtime.d.ts.map +1 -0
  1127. package/dist/svelte/storage-browse-runtime.js +68 -0
  1128. package/dist/svelte/storage-connection.d.ts +23 -0
  1129. package/dist/svelte/storage-connection.d.ts.map +1 -0
  1130. package/dist/svelte/storage-connection.js +40 -0
  1131. package/dist/svelte/storage-display.d.ts +6 -0
  1132. package/dist/svelte/storage-display.d.ts.map +1 -0
  1133. package/dist/svelte/storage-display.js +58 -0
  1134. package/dist/svelte/storage-explorer-runtime.d.ts +120 -0
  1135. package/dist/svelte/storage-explorer-runtime.d.ts.map +1 -0
  1136. package/dist/svelte/storage-explorer-runtime.js +251 -0
  1137. package/dist/svelte/storage-explorer.load.d.ts +22 -0
  1138. package/dist/svelte/storage-explorer.load.d.ts.map +1 -0
  1139. package/dist/svelte/storage-explorer.load.js +37 -0
  1140. package/dist/svelte/storage-refs-runtime.d.ts +36 -0
  1141. package/dist/svelte/storage-refs-runtime.d.ts.map +1 -0
  1142. package/dist/svelte/storage-refs-runtime.js +47 -0
  1143. package/dist/svelte/storage-runtime.d.ts +30 -0
  1144. package/dist/svelte/storage-runtime.d.ts.map +1 -0
  1145. package/dist/svelte/storage-runtime.js +39 -0
  1146. package/dist/svelte/storage-svelte.plugin.d.ts +40 -0
  1147. package/dist/svelte/storage-svelte.plugin.d.ts.map +1 -0
  1148. package/dist/svelte/storage-svelte.plugin.js +50 -0
  1149. package/dist/svelte/storage-upload-runtime.d.ts +8 -0
  1150. package/dist/svelte/storage-upload-runtime.d.ts.map +1 -0
  1151. package/dist/svelte/storage-upload-runtime.js +12 -0
  1152. package/dist/svelte/stores/index.d.ts +4 -0
  1153. package/dist/svelte/stores/index.d.ts.map +1 -0
  1154. package/dist/svelte/stores/index.js +3 -0
  1155. package/dist/svelte/stores/storage-browse.svelte.d.ts +70 -0
  1156. package/dist/svelte/stores/storage-browse.svelte.d.ts.map +1 -0
  1157. package/dist/svelte/stores/storage-browse.svelte.js +133 -0
  1158. package/dist/svelte/stores/storage-providers.svelte.d.ts +32 -0
  1159. package/dist/svelte/stores/storage-providers.svelte.d.ts.map +1 -0
  1160. package/dist/svelte/stores/storage-providers.svelte.js +73 -0
  1161. package/dist/svelte/stores/storage-refs.svelte.d.ts +57 -0
  1162. package/dist/svelte/stores/storage-refs.svelte.d.ts.map +1 -0
  1163. package/dist/svelte/stores/storage-refs.svelte.js +90 -0
  1164. package/dist/svelte/styles.css +14 -0
  1165. package/dist/svelte/test-assets.d.ts +8 -0
  1166. package/dist/svelte/tool-widgets/StorageBrowseToolCard.svelte +109 -0
  1167. package/dist/svelte/tool-widgets/StorageBrowseToolCard.svelte.d.ts +9 -0
  1168. package/dist/svelte/tool-widgets/StorageBrowseToolCard.svelte.d.ts.map +1 -0
  1169. package/dist/svelte/tool-widgets/StorageCopyToolCard.svelte +87 -0
  1170. package/dist/svelte/tool-widgets/StorageCopyToolCard.svelte.d.ts +9 -0
  1171. package/dist/svelte/tool-widgets/StorageCopyToolCard.svelte.d.ts.map +1 -0
  1172. package/dist/svelte/tool-widgets/StorageSearchToolCard.svelte +94 -0
  1173. package/dist/svelte/tool-widgets/StorageSearchToolCard.svelte.d.ts +9 -0
  1174. package/dist/svelte/tool-widgets/StorageSearchToolCard.svelte.d.ts.map +1 -0
  1175. package/dist/svelte/tool-widgets/format.d.ts +15 -0
  1176. package/dist/svelte/tool-widgets/format.d.ts.map +1 -0
  1177. package/dist/svelte/tool-widgets/format.js +32 -0
  1178. package/dist/svelte/tool-widgets/index.d.ts +2 -0
  1179. package/dist/svelte/tool-widgets/index.d.ts.map +1 -0
  1180. package/dist/svelte/tool-widgets/index.js +12 -0
  1181. package/dist/svelte/tool-widgets/runtime.d.ts +9 -0
  1182. package/dist/svelte/tool-widgets/runtime.d.ts.map +1 -0
  1183. package/dist/svelte/tool-widgets/runtime.js +42 -0
  1184. package/dist/sync/cloud-document.d.ts +24 -0
  1185. package/dist/sync/cloud-document.d.ts.map +1 -0
  1186. package/dist/sync/cloud-document.js +47 -0
  1187. package/dist/sync/cloud-document.js.map +1 -0
  1188. package/dist/sync/cloud-pull.d.ts +9 -3
  1189. package/dist/sync/cloud-pull.d.ts.map +1 -1
  1190. package/dist/sync/cloud-pull.js +85 -86
  1191. package/dist/sync/cloud-pull.js.map +1 -1
  1192. package/dist/sync/cloud-record-crud-config.d.ts +7 -17
  1193. package/dist/sync/cloud-record-crud-config.d.ts.map +1 -1
  1194. package/dist/sync/cloud-record-crud-config.js +17 -9
  1195. package/dist/sync/cloud-record-crud-config.js.map +1 -1
  1196. package/dist/sync/local-first.d.ts +61 -0
  1197. package/dist/sync/local-first.d.ts.map +1 -0
  1198. package/dist/sync/local-first.js +121 -0
  1199. package/dist/sync/local-first.js.map +1 -0
  1200. package/dist/sync/record-sync-bridge.d.ts +35 -3
  1201. package/dist/sync/record-sync-bridge.d.ts.map +1 -1
  1202. package/dist/sync/record-sync-bridge.js +50 -46
  1203. package/dist/sync/record-sync-bridge.js.map +1 -1
  1204. package/dist/sync/resolve-sync-target.d.ts +16 -17
  1205. package/dist/sync/resolve-sync-target.d.ts.map +1 -1
  1206. package/dist/sync/resolve-sync-target.js +18 -43
  1207. package/dist/sync/resolve-sync-target.js.map +1 -1
  1208. package/dist/sync/runtime-sync-state.d.ts +18 -0
  1209. package/dist/sync/runtime-sync-state.d.ts.map +1 -0
  1210. package/dist/sync/runtime-sync-state.js +12 -0
  1211. package/dist/sync/runtime-sync-state.js.map +1 -0
  1212. package/dist/sync/schemas/cloud-pull.d.ts +9 -5
  1213. package/dist/sync/schemas/cloud-pull.d.ts.map +1 -1
  1214. package/dist/sync/schemas/index.d.ts +3 -3
  1215. package/dist/sync/schemas/index.d.ts.map +1 -1
  1216. package/dist/sync/schemas/index.js +3 -3
  1217. package/dist/sync/schemas/index.js.map +1 -1
  1218. package/dist/sync/schemas/sync-helpers.d.ts +4 -2
  1219. package/dist/sync/schemas/sync-helpers.d.ts.map +1 -1
  1220. package/dist/sync/schemas/sync-state.d.ts +7 -5
  1221. package/dist/sync/schemas/sync-state.d.ts.map +1 -1
  1222. package/dist/sync/schemas/sync-state.js +1 -0
  1223. package/dist/sync/schemas/sync-state.js.map +1 -1
  1224. package/dist/sync/sync-bridge.d.ts +39 -31
  1225. package/dist/sync/sync-bridge.d.ts.map +1 -1
  1226. package/dist/sync/sync-bridge.js +427 -196
  1227. package/dist/sync/sync-bridge.js.map +1 -1
  1228. package/dist/sync/sync-manifest.d.ts +7 -19
  1229. package/dist/sync/sync-manifest.d.ts.map +1 -1
  1230. package/dist/sync/sync-manifest.js +125 -84
  1231. package/dist/sync/sync-manifest.js.map +1 -1
  1232. package/dist/sync/sync-state.browser.d.ts +37 -0
  1233. package/dist/sync/sync-state.browser.d.ts.map +1 -0
  1234. package/dist/sync/sync-state.browser.js +136 -0
  1235. package/dist/sync/sync-state.browser.js.map +1 -0
  1236. package/dist/sync/sync-state.client.d.ts +71 -0
  1237. package/dist/sync/sync-state.client.d.ts.map +1 -0
  1238. package/dist/sync/sync-state.client.js +78 -0
  1239. package/dist/sync/sync-state.client.js.map +1 -0
  1240. package/dist/sync/sync-state.consumer.d.ts +44 -17
  1241. package/dist/sync/sync-state.consumer.d.ts.map +1 -1
  1242. package/dist/sync/sync-state.consumer.js +161 -87
  1243. package/dist/sync/sync-state.consumer.js.map +1 -1
  1244. package/dist/sync/sync-state.core.d.ts +40 -0
  1245. package/dist/sync/sync-state.core.d.ts.map +1 -0
  1246. package/dist/sync/sync-state.core.js +130 -0
  1247. package/dist/sync/sync-state.core.js.map +1 -0
  1248. package/dist/sync/sync-state.descriptor.d.ts +39 -0
  1249. package/dist/sync/sync-state.descriptor.d.ts.map +1 -0
  1250. package/dist/sync/sync-state.descriptor.js +23 -0
  1251. package/dist/sync/sync-state.descriptor.js.map +1 -0
  1252. package/dist/testing.d.ts +31 -0
  1253. package/dist/testing.d.ts.map +1 -0
  1254. package/dist/testing.js +82 -0
  1255. package/dist/testing.js.map +1 -0
  1256. package/dist/tools/descriptors.d.ts +312 -0
  1257. package/dist/tools/descriptors.d.ts.map +1 -0
  1258. package/dist/tools/descriptors.js +98 -0
  1259. package/dist/tools/descriptors.js.map +1 -0
  1260. package/dist/tools/impl.d.ts +72 -0
  1261. package/dist/tools/impl.d.ts.map +1 -0
  1262. package/dist/tools/impl.js +572 -0
  1263. package/dist/tools/impl.js.map +1 -0
  1264. package/dist/tools/index.d.ts +3 -0
  1265. package/dist/tools/index.d.ts.map +1 -0
  1266. package/dist/tools/index.js +3 -0
  1267. package/dist/tools/index.js.map +1 -0
  1268. package/dist/tools/schemas.d.ts +136 -0
  1269. package/dist/tools/schemas.d.ts.map +1 -0
  1270. package/dist/tools/schemas.js +113 -0
  1271. package/dist/tools/schemas.js.map +1 -0
  1272. package/dist/tools/widget-views.d.ts +9 -0
  1273. package/dist/tools/widget-views.d.ts.map +1 -0
  1274. package/dist/tools/widget-views.js +119 -0
  1275. package/dist/tools/widget-views.js.map +1 -0
  1276. package/dist/transform/index.d.ts +7 -18
  1277. package/dist/transform/index.d.ts.map +1 -1
  1278. package/dist/transform/index.js +16 -14
  1279. package/dist/transform/index.js.map +1 -1
  1280. package/dist/transform/transform-descriptor.d.ts +1 -21
  1281. package/dist/transform/transform-descriptor.d.ts.map +1 -1
  1282. package/dist/transform/transform-descriptor.js +1 -29
  1283. package/dist/transform/transform-descriptor.js.map +1 -1
  1284. package/dist/tui/plugin.d.ts +26 -0
  1285. package/dist/tui/plugin.d.ts.map +1 -0
  1286. package/dist/tui/plugin.js +107 -0
  1287. package/dist/tui/plugin.js.map +1 -0
  1288. package/dist/tui/storage-explorer.descriptor.d.ts +25 -4
  1289. package/dist/tui/storage-explorer.descriptor.d.ts.map +1 -1
  1290. package/dist/tui/storage-explorer.descriptor.js +7 -3
  1291. package/dist/tui/storage-explorer.descriptor.js.map +1 -1
  1292. package/dist/tui/storage-explorer.impl.consumer.d.ts +23 -6
  1293. package/dist/tui/storage-explorer.impl.consumer.d.ts.map +1 -1
  1294. package/dist/tui/storage-explorer.impl.consumer.js +231 -8
  1295. package/dist/tui/storage-explorer.impl.consumer.js.map +1 -1
  1296. package/dist/tui/storage-open.descriptor.d.ts +16 -3
  1297. package/dist/tui/storage-open.descriptor.d.ts.map +1 -1
  1298. package/dist/tui/storage-open.descriptor.js +5 -1
  1299. package/dist/tui/storage-open.descriptor.js.map +1 -1
  1300. package/dist/tui/storage-open.impl.consumer.d.ts +6 -1
  1301. package/dist/tui/storage-open.impl.consumer.d.ts.map +1 -1
  1302. package/dist/tui/storage-open.impl.consumer.js.map +1 -1
  1303. package/dist/tui/storage-signed-out-ui.d.ts +21 -0
  1304. package/dist/tui/storage-signed-out-ui.d.ts.map +1 -0
  1305. package/dist/tui/storage-signed-out-ui.js +34 -0
  1306. package/dist/tui/storage-signed-out-ui.js.map +1 -0
  1307. package/dist/tui/storage.tui-state.descriptor.d.ts +61 -0
  1308. package/dist/tui/storage.tui-state.descriptor.d.ts.map +1 -0
  1309. package/dist/tui/storage.tui-state.descriptor.js +52 -0
  1310. package/dist/tui/storage.tui-state.descriptor.js.map +1 -0
  1311. package/dist/tui/storage.tui-state.impl.consumer.d.ts +29 -0
  1312. package/dist/tui/storage.tui-state.impl.consumer.d.ts.map +1 -0
  1313. package/dist/tui/storage.tui-state.impl.consumer.js +207 -0
  1314. package/dist/tui/storage.tui-state.impl.consumer.js.map +1 -0
  1315. package/dist/tui/storage.tui-state.key.d.ts +27 -0
  1316. package/dist/tui/storage.tui-state.key.d.ts.map +1 -0
  1317. package/dist/tui/storage.tui-state.key.js +12 -0
  1318. package/dist/tui/storage.tui-state.key.js.map +1 -0
  1319. package/dist/tui/tool-widgets/StorageBrowseToolWidget.impl.consumer.d.ts +14 -0
  1320. package/dist/tui/tool-widgets/StorageBrowseToolWidget.impl.consumer.d.ts.map +1 -0
  1321. package/dist/tui/tool-widgets/StorageBrowseToolWidget.impl.consumer.js +28 -0
  1322. package/dist/tui/tool-widgets/StorageBrowseToolWidget.impl.consumer.js.map +1 -0
  1323. package/dist/tui/tool-widgets/StorageCopyToolWidget.impl.consumer.d.ts +14 -0
  1324. package/dist/tui/tool-widgets/StorageCopyToolWidget.impl.consumer.d.ts.map +1 -0
  1325. package/dist/tui/tool-widgets/StorageCopyToolWidget.impl.consumer.js +21 -0
  1326. package/dist/tui/tool-widgets/StorageCopyToolWidget.impl.consumer.js.map +1 -0
  1327. package/dist/tui/tool-widgets/StorageSearchToolWidget.impl.consumer.d.ts +14 -0
  1328. package/dist/tui/tool-widgets/StorageSearchToolWidget.impl.consumer.d.ts.map +1 -0
  1329. package/dist/tui/tool-widgets/StorageSearchToolWidget.impl.consumer.js +22 -0
  1330. package/dist/tui/tool-widgets/StorageSearchToolWidget.impl.consumer.js.map +1 -0
  1331. package/dist/tui/tool-widgets/format.d.ts +19 -0
  1332. package/dist/tui/tool-widgets/format.d.ts.map +1 -0
  1333. package/dist/tui/tool-widgets/format.js +53 -0
  1334. package/dist/tui/tool-widgets/format.js.map +1 -0
  1335. package/dist/tui/tool-widgets/storage.browse.tool-widget.descriptor.d.ts +14 -0
  1336. package/dist/tui/tool-widgets/storage.browse.tool-widget.descriptor.d.ts.map +1 -0
  1337. package/dist/tui/tool-widgets/storage.browse.tool-widget.descriptor.js +14 -0
  1338. package/dist/tui/tool-widgets/storage.browse.tool-widget.descriptor.js.map +1 -0
  1339. package/dist/tui/tool-widgets/storage.copy.tool-widget.descriptor.d.ts +14 -0
  1340. package/dist/tui/tool-widgets/storage.copy.tool-widget.descriptor.d.ts.map +1 -0
  1341. package/dist/tui/tool-widgets/storage.copy.tool-widget.descriptor.js +14 -0
  1342. package/dist/tui/tool-widgets/storage.copy.tool-widget.descriptor.js.map +1 -0
  1343. package/dist/tui/tool-widgets/storage.search.tool-widget.descriptor.d.ts +14 -0
  1344. package/dist/tui/tool-widgets/storage.search.tool-widget.descriptor.d.ts.map +1 -0
  1345. package/dist/tui/tool-widgets/storage.search.tool-widget.descriptor.js +14 -0
  1346. package/dist/tui/tool-widgets/storage.search.tool-widget.descriptor.js.map +1 -0
  1347. package/dist/utils/caller-bearer.d.ts +13 -0
  1348. package/dist/utils/caller-bearer.d.ts.map +1 -0
  1349. package/dist/utils/caller-bearer.js +17 -0
  1350. package/dist/utils/caller-bearer.js.map +1 -0
  1351. package/dist/utils/error-context.d.ts +9 -1
  1352. package/dist/utils/error-context.d.ts.map +1 -1
  1353. package/dist/utils/error-context.js +7 -14
  1354. package/dist/utils/error-context.js.map +1 -1
  1355. package/dist/utils/failure-of.d.ts +20 -0
  1356. package/dist/utils/failure-of.d.ts.map +1 -0
  1357. package/dist/utils/failure-of.js +35 -0
  1358. package/dist/utils/failure-of.js.map +1 -0
  1359. package/dist/workers-port.d.ts +37 -0
  1360. package/dist/workers-port.d.ts.map +1 -0
  1361. package/dist/workers-port.js +60 -0
  1362. package/dist/workers-port.js.map +1 -0
  1363. package/package.json +644 -148
  1364. package/SPEC.md +0 -60
  1365. package/dist/adapters/index.d.ts +0 -14
  1366. package/dist/adapters/index.d.ts.map +0 -1
  1367. package/dist/adapters/index.js +0 -15
  1368. package/dist/adapters/index.js.map +0 -1
  1369. package/dist/cli/context.consumer.d.ts +0 -26
  1370. package/dist/cli/context.consumer.d.ts.map +0 -1
  1371. package/dist/cli/context.consumer.js +0 -164
  1372. package/dist/cli/context.consumer.js.map +0 -1
  1373. package/dist/docs/adapters.docs.descriptor.d.ts +0 -4
  1374. package/dist/docs/adapters.docs.descriptor.d.ts.map +0 -1
  1375. package/dist/docs/adapters.docs.descriptor.js +0 -223
  1376. package/dist/docs/adapters.docs.descriptor.js.map +0 -1
  1377. package/dist/docs/manifests.docs.descriptor.d.ts +0 -4
  1378. package/dist/docs/manifests.docs.descriptor.d.ts.map +0 -1
  1379. package/dist/docs/manifests.docs.descriptor.js.map +0 -1
  1380. package/src/adapters/index.ts +0 -13
  1381. package/src/bridge/index.ts +0 -2
  1382. package/src/bridge/storage-kind-bridge.ts +0 -131
  1383. package/src/bridge/types.ts +0 -46
  1384. package/src/cli/commands/list/storage.list.cli-command.descriptor.ts +0 -20
  1385. package/src/cli/commands/list/storage.list.cli-command.impl.ts +0 -72
  1386. package/src/cli/commands/sync/pull/storage.sync.pull.cli-command.descriptor.ts +0 -28
  1387. package/src/cli/commands/sync/pull/storage.sync.pull.cli-command.impl.ts +0 -171
  1388. package/src/cli/commands/sync/push/storage.sync.push.cli-command.descriptor.ts +0 -28
  1389. package/src/cli/commands/sync/push/storage.sync.push.cli-command.impl.ts +0 -213
  1390. package/src/cli/commands/sync/resolve/storage.sync.resolve.cli-command.descriptor.ts +0 -22
  1391. package/src/cli/commands/sync/resolve/storage.sync.resolve.cli-command.impl.ts +0 -129
  1392. package/src/cli/commands/sync/status/storage.sync.status.cli-command.descriptor.ts +0 -17
  1393. package/src/cli/commands/sync/status/storage.sync.status.cli-command.impl.ts +0 -192
  1394. package/src/cli/context.consumer.ts +0 -195
  1395. package/src/cli/storage.cli-group.descriptor.ts +0 -13
  1396. package/src/cli/storage.sync.cli-group.descriptor.ts +0 -14
  1397. package/src/cli/types.ts +0 -25
  1398. package/src/client/index.ts +0 -10
  1399. package/src/client/list-browsable-adapters.ts +0 -42
  1400. package/src/daemon/commands/sync.ts +0 -225
  1401. package/src/docs/adapters.docs.descriptor.ts +0 -225
  1402. package/src/docs/manifests.docs.descriptor.ts +0 -318
  1403. package/src/docs/records.docs.descriptor.ts +0 -271
  1404. package/src/docs/sync.docs.descriptor.ts +0 -281
  1405. package/src/index.ts +0 -109
  1406. package/src/interfaces/adapter.ts +0 -451
  1407. package/src/interfaces/document-store.ts +0 -74
  1408. package/src/interfaces/index.ts +0 -117
  1409. package/src/interfaces/key-value.ts +0 -112
  1410. package/src/interfaces/query-builder.ts +0 -31
  1411. package/src/interfaces/record/index.ts +0 -58
  1412. package/src/interfaces/record/interface.ts +0 -723
  1413. package/src/interfaces/repository.ts +0 -300
  1414. package/src/interfaces/schema/index.ts +0 -37
  1415. package/src/interfaces/schema/schema-interface.ts +0 -586
  1416. package/src/interfaces/schema/table-interface.ts +0 -314
  1417. package/src/interfaces/storage-consumer-fs.ts +0 -66
  1418. package/src/manifest/base.ts +0 -594
  1419. package/src/manifest/cloud-sync.consumer.ts +0 -120
  1420. package/src/manifest/index.ts +0 -7
  1421. package/src/manifest/source-policy.ts +0 -74
  1422. package/src/paths.ts +0 -171
  1423. package/src/policy/context.ts +0 -30
  1424. package/src/policy/index.ts +0 -20
  1425. package/src/policy/overrides.ts +0 -46
  1426. package/src/policy/persistence.ts +0 -117
  1427. package/src/policy/types.ts +0 -28
  1428. package/src/record/base.ts +0 -1872
  1429. package/src/record/events.ts +0 -56
  1430. package/src/record/extensions.ts +0 -308
  1431. package/src/record/index.ts +0 -7
  1432. package/src/resolver/storage-backed-resolver.ts +0 -255
  1433. package/src/schemas/adapter-descriptor.ts +0 -128
  1434. package/src/schemas/index.ts +0 -104
  1435. package/src/schemas/manifest-descriptor.ts +0 -143
  1436. package/src/schemas/record/descriptor.ts +0 -621
  1437. package/src/schemas/record/index.ts +0 -60
  1438. package/src/schemas/record/relation.ts +0 -49
  1439. package/src/schemas/schema/descriptor.ts +0 -278
  1440. package/src/schemas/schema/index.ts +0 -14
  1441. package/src/schemas/sync-bridge-descriptor.ts +0 -143
  1442. package/src/server/manifest-route.ts +0 -319
  1443. package/src/storage-policy.context.descriptor.ts +0 -17
  1444. package/src/storage-policy.context.server.ts +0 -34
  1445. package/src/storage.plugin.ts +0 -264
  1446. package/src/sync/cloud-pull.ts +0 -202
  1447. package/src/sync/cloud-record-crud-config.ts +0 -41
  1448. package/src/sync/record-sync-bridge.ts +0 -183
  1449. package/src/sync/resolve-sync-target.ts +0 -57
  1450. package/src/sync/schemas/cloud-pull.ts +0 -26
  1451. package/src/sync/schemas/index.ts +0 -18
  1452. package/src/sync/schemas/sync-helpers.ts +0 -18
  1453. package/src/sync/schemas/sync-state.ts +0 -41
  1454. package/src/sync/sync-bridge.ts +0 -763
  1455. package/src/sync/sync-manifest.ts +0 -212
  1456. package/src/sync/sync-state.consumer.ts +0 -144
  1457. package/src/transform/index.ts +0 -130
  1458. package/src/transform/transform-descriptor.ts +0 -53
  1459. package/src/tui/storage-explorer.descriptor.ts +0 -32
  1460. package/src/tui/storage-explorer.impl.consumer.ts +0 -14
  1461. package/src/tui/storage-open.descriptor.ts +0 -31
  1462. package/src/tui/storage-open.impl.consumer.ts +0 -14
  1463. package/src/utils/error-context.ts +0 -19
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/record/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/record/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { type RecordColumn } from '../schemas/record/columns.ts';
2
+ export { RecordColumnKindSchema, RecordColumnSchema, ZodNodeSchema, type RecordColumnKind, type RecordColumn } from '../schemas/record/columns.ts';
3
+ import type { StorageRecordDescriptor } from '../schemas/record/index.ts';
4
+ export type { TimestampField } from '../schemas/record/columns.ts';
5
+ import type { TimestampField } from '../schemas/record/columns.ts';
6
+ /** The field a written timestamp lands in: its declared name, else the default name. */
7
+ export declare function resolveTimestampField(timestamps: StorageRecordDescriptor['timestamps'], field: TimestampField): string;
8
+ /** The column a fresh table declares for a timestamp, or null when that timestamp is turned off. */
9
+ export declare function timestampColumn(timestamps: StorageRecordDescriptor['timestamps'], field: TimestampField): string | null;
10
+ /** The field soft deletion stamps, or null when the record does not soft-delete. */
11
+ export declare function softDeleteColumn(softDelete: StorageRecordDescriptor['softDelete']): string | null;
12
+ /** An index's declared name, else `idx_<table>_<fields>`. */
13
+ export declare function recordIndexName(tableName: string, index: {
14
+ name?: string;
15
+ fields: string[];
16
+ }): string;
17
+ /**
18
+ * The record table's columns in order: the primary key, the schema's fields,
19
+ * then any timestamp or soft-delete column the schema does not declare.
20
+ */
21
+ export declare function assertRecordRevisionSchema(descriptor: StorageRecordDescriptor): void;
22
+ export declare function recordColumns(descriptor: StorageRecordDescriptor): RecordColumn[];
23
+ //# sourceMappingURL=columns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columns.d.ts","sourceRoot":"","sources":["../../src/record/columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwC,KAAK,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAEvG,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,aAAa,EAAE,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAUnJ,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAG1E,YAAY,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAUnE,wFAAwF;AACxF,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,uBAAuB,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,cAAc,GAAG,MAAM,CAGtH;AAED,oGAAoG;AACpG,wBAAgB,eAAe,CAAC,UAAU,EAAE,uBAAuB,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAIvH;AAED,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,uBAAuB,CAAC,YAAY,CAAC,GAAG,MAAM,GAAG,IAAI,CAGjG;AAED,6DAA6D;AAC7D,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,MAAM,CAErG;AA2ED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,uBAAuB,GAAG,IAAI,CASpF;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,uBAAuB,GAAG,YAAY,EAAE,CAiCjF"}
@@ -0,0 +1,161 @@
1
+ import { ZodNodeSchema } from "../schemas/record/columns.js";
2
+ import { RECORD_REVISION_COLUMN } from "../schemas/record/revision.js";
3
+ export { RecordColumnKindSchema, RecordColumnSchema, ZodNodeSchema } from "../schemas/record/columns.js";
4
+ /**
5
+ * The columns a `storage/record` descriptor declares, read from the descriptor
6
+ * alone: its zod object shape, primary key, timestamps, soft-delete field and
7
+ * field config. Pure: no database, no adapter. The LocalDB record base reads
8
+ * the auto-managed column names here; the Drizzle adapter builds its table
9
+ * (and the table's DDL) from `recordColumns`.
10
+ */
11
+ import * as z from 'zod/v4';
12
+ import { CapabilityError } from '@vibesdotdev/kernel';
13
+ import { ZodSchemaValueSchema } from "../schemas/zod-schema-value.js";
14
+ /** A timestamp's declared setting: its custom field name, on or off, or absent (the default name). */
15
+ function timestampSetting(timestamps, field) {
16
+ return timestamps === true || timestamps === false ? timestamps : timestamps?.[field];
17
+ }
18
+ /** The field a written timestamp lands in: its declared name, else the default name. */
19
+ export function resolveTimestampField(timestamps, field) {
20
+ const setting = timestampSetting(timestamps, field);
21
+ return setting === undefined || setting === true || setting === false ? field : setting;
22
+ }
23
+ /** The column a fresh table declares for a timestamp, or null when that timestamp is turned off. */
24
+ export function timestampColumn(timestamps, field) {
25
+ const setting = timestampSetting(timestamps, field);
26
+ if (!setting)
27
+ return null;
28
+ return setting === true ? field : setting;
29
+ }
30
+ /** The field soft deletion stamps, or null when the record does not soft-delete. */
31
+ export function softDeleteColumn(softDelete) {
32
+ if (!softDelete)
33
+ return null;
34
+ return softDelete === true ? 'deletedAt' : softDelete;
35
+ }
36
+ /** An index's declared name, else `idx_<table>_<fields>`. */
37
+ export function recordIndexName(tableName, index) {
38
+ return index.name || `idx_${tableName}_${index.fields.join('_')}`;
39
+ }
40
+ /**
41
+ * How a field is stored. `timestamp` is ISO-8601 text that accepts a Date or a
42
+ * string; `json` is text holding JSON; `bigint` is a blob.
43
+ */
44
+ /** The parts of a zod schema's `_zod` the mapping reads. */
45
+ const UNWRAPPED_NULLABLE = ['optional', 'nullable', 'default', 'prefault'];
46
+ const UNWRAPPED = ['readonly', 'catch', 'nonoptional'];
47
+ function fieldKind(schema) {
48
+ const { def } = ZodNodeSchema.parse(schema._zod);
49
+ if (def.innerType && UNWRAPPED_NULLABLE.includes(def.type))
50
+ return { ...fieldKind(def.innerType), nullable: true };
51
+ if (def.innerType && UNWRAPPED.includes(def.type))
52
+ return fieldKind(def.innerType);
53
+ if (def.type === 'pipe' && def.in && def.out) {
54
+ // A transform's output has no declared type; the stored value is the pipe's input then.
55
+ return fieldKind(ZodNodeSchema.parse(def.out._zod).def.type === 'transform' ? def.in : def.out);
56
+ }
57
+ switch (def.type) {
58
+ case 'string':
59
+ case 'enum':
60
+ case 'template_literal':
61
+ return { kind: 'text', nullable: false };
62
+ case 'literal':
63
+ return { kind: z.array(z.string()).safeParse(def.values).success ? 'text' : 'json', nullable: false };
64
+ case 'number': {
65
+ const schemaFormat = 'format' in schema ? z.string().safeParse(schema.format) : undefined;
66
+ const isInteger = ('isInt' in schema && schema.isInt === true) || (schemaFormat?.success === true && schemaFormat.data.includes('int'));
67
+ return { kind: isInteger ? 'integer' : 'real', nullable: false };
68
+ }
69
+ case 'boolean':
70
+ return { kind: 'boolean', nullable: false };
71
+ case 'date':
72
+ return { kind: 'timestamp', nullable: false };
73
+ case 'bigint':
74
+ return { kind: 'bigint', nullable: false };
75
+ default:
76
+ return { kind: 'json', nullable: false };
77
+ }
78
+ }
79
+ /** A `fieldConfig.type` override read by SQLite's type-affinity rules. */
80
+ function affinityKind(sqlType, field, recordKind) {
81
+ const type = sqlType.toUpperCase();
82
+ if (type.includes('INT'))
83
+ return 'integer';
84
+ if (type.includes('CHAR') || type.includes('CLOB') || type.includes('TEXT'))
85
+ return 'text';
86
+ if (type.includes('REAL') || type.includes('FLOA') || type.includes('DOUB'))
87
+ return 'real';
88
+ throw new CapabilityError('The record field config declares a column type the record table cannot hold.', 'INVALID_INPUT', {
89
+ reason: 'record-field-type-unsupported',
90
+ retryable: false,
91
+ details: { recordKind, field, type: sqlType }
92
+ });
93
+ }
94
+ /** The record schema's object shape; any other schema has no columns to declare. */
95
+ function recordFields(descriptor) {
96
+ const refusal = (schemaType) => new CapabilityError('A record table is built from an object schema.', 'INVALID_INPUT', {
97
+ reason: 'record-schema-not-object',
98
+ retryable: false,
99
+ details: { recordKind: descriptor.id, schemaType }
100
+ });
101
+ const schema = ZodSchemaValueSchema.safeParse(descriptor.schema);
102
+ if (!schema.success)
103
+ throw refusal(null);
104
+ const { def } = ZodNodeSchema.parse(schema.data._zod);
105
+ if (def.type !== 'object' || !def.shape)
106
+ throw refusal(def.type);
107
+ return def.shape;
108
+ }
109
+ /**
110
+ * The record table's columns in order: the primary key, the schema's fields,
111
+ * then any timestamp or soft-delete column the schema does not declare.
112
+ */
113
+ export function assertRecordRevisionSchema(descriptor) {
114
+ if (!descriptor.versioning)
115
+ return;
116
+ const schema = ZodSchemaValueSchema.parse(descriptor.schema);
117
+ const node = ZodNodeSchema.parse(schema._zod);
118
+ if (node.def.shape && Object.hasOwn(node.def.shape, RECORD_REVISION_COLUMN)) {
119
+ throw new CapabilityError('The record schema uses a reserved Storage revision field.', 'INVALID_INPUT', {
120
+ reason: 'record-revision-field-reserved', retryable: false, details: { recordKind: descriptor.id }
121
+ });
122
+ }
123
+ }
124
+ export function recordColumns(descriptor) {
125
+ assertRecordRevisionSchema(descriptor);
126
+ const fieldsByName = recordFields(descriptor);
127
+ const createdAt = timestampColumn(descriptor.timestamps, 'createdAt');
128
+ const updatedAt = timestampColumn(descriptor.timestamps, 'updatedAt');
129
+ const deletedAt = softDeleteColumn(descriptor.softDelete);
130
+ const managed = [createdAt, updatedAt, deletedAt].filter((field) => field !== null);
131
+ const fields = [descriptor.primaryKey, ...Object.keys(fieldsByName).filter((field) => field !== descriptor.primaryKey)];
132
+ for (const field of managed)
133
+ if (!fields.includes(field))
134
+ fields.push(field);
135
+ const columns = fields.map((field) => {
136
+ const declared = fieldsByName[field];
137
+ const primaryKey = field === descriptor.primaryKey;
138
+ // An undeclared primary key is text (the LocalDB default); an undeclared managed field is a nullable timestamp.
139
+ const undeclared = { kind: primaryKey ? 'text' : 'timestamp', nullable: !primaryKey };
140
+ const read = declared ? fieldKind(declared) : undeclared;
141
+ const config = descriptor.fieldConfig?.[field];
142
+ // A managed field the schema declares as a number is epoch milliseconds (an integer column); otherwise a timestamp.
143
+ const epoch = declared !== undefined && (read.kind === 'integer' || read.kind === 'real');
144
+ const kind = config?.type ? affinityKind(config.type, field, descriptor.id) : managed.includes(field) ? (epoch ? 'integer' : 'timestamp') : read.kind;
145
+ return {
146
+ field,
147
+ kind,
148
+ nullable: !primaryKey && (read.nullable || field === deletedAt),
149
+ primaryKey,
150
+ autoIncrement: primaryKey && kind === 'integer' && config?.autoIncrement === true,
151
+ valueIsDate: read.kind === 'timestamp'
152
+ };
153
+ });
154
+ if (descriptor.versioning)
155
+ columns.push({
156
+ field: RECORD_REVISION_COLUMN, kind: 'text', nullable: false,
157
+ primaryKey: false, autoIncrement: false, valueIsDate: false
158
+ });
159
+ return columns;
160
+ }
161
+ //# sourceMappingURL=columns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columns.js","sourceRoot":"","sources":["../../src/record/columns.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { type StorageRecordDeliveryJobInput, type RecordDeliveryClaim } from '../schemas/record/delivery.ts';
2
+ export { StorageRecordDeliveryJobInputSchema, RecordDeliveryClaimSchema, type StorageRecordDeliveryJobInput, type RecordDeliveryClaim } from '../schemas/record/delivery.ts';
3
+ import type { RuntimeRef } from '@vibesdotdev/kernel';
4
+ import type { StorageDeliveryEligibility, StorageRecordDelivery } from '../schemas/record/descriptor.ts';
5
+ /** Input every delivery job receives. */
6
+ /** Records fetched per page while re-enqueueing pending deliveries. */
7
+ export declare const PENDING_DELIVERY_PAGE_SIZE = 200;
8
+ /** The runtime delivery runs on: the one the record was handed. Its kinds are queried and its Logging carries the reports. */
9
+ export type RecordDeliveryRuntime = RuntimeRef;
10
+ /** Queue identity of one record's delivery job; the same record always maps to the same job. */
11
+ export declare function deliveryJobKey(recordKind: string, recordId: string): string;
12
+ /** Job metadata key stamped on a claim the kind's delivery gate admitted. */
13
+ export declare const DELIVERY_GATE_METADATA_KEY = "deliveryGate";
14
+ /** The failed keyed job Workers asks a claim's `restartFailed` about: only its metadata is read. */
15
+ export type { RecordDeliveryFailedJob } from '../schemas/record/delivery.ts';
16
+ import type { RecordDeliveryFailedJob } from '../schemas/record/delivery.ts';
17
+ /** Options of one keyed delivery claim (Workers' `startJobOnce` options, as delivery uses them). */
18
+ export interface RecordDeliveryClaimOptions {
19
+ /** The record's queue identity ({@link deliveryJobKey}). */
20
+ jobId: string;
21
+ metadata?: Record<string, string>;
22
+ restartFailed?: (existing: RecordDeliveryFailedJob) => boolean;
23
+ }
24
+ /** Outcome of one keyed claim, as Workers answers it; parsed before it is read. */
25
+ /** The slice of the Workers runtime client (`runtime/client#workers`) delivery claims through. */
26
+ export interface RecordDeliveryWorkersClient {
27
+ startJobOnce(job: string, data: StorageRecordDeliveryJobInput, options: RecordDeliveryClaimOptions): Promise<RecordDeliveryClaim>;
28
+ }
29
+ /**
30
+ * Claim the declared delivery job for one record. Throws when the Workers
31
+ * client is not composed on `runtime` (`UNAVAILABLE`
32
+ * `storage-workers-client-absent`), when it answers a claim in an unexpected
33
+ * shape (`INTERNAL` `storage-delivery-claim-invalid`), or when the enqueue
34
+ * fails; the caller decides how to report it (the record itself is already
35
+ * persisted).
36
+ *
37
+ * `admittedByGate` is the gate id that admitted this claim: it stamps the job
38
+ * and lets a failed job claimed before that decision start a new attempt.
39
+ */
40
+ export declare function enqueueRecordDelivery(runtime: RecordDeliveryRuntime, recordKind: string, delivery: StorageRecordDelivery, recordId: string, admittedByGate?: string): Promise<RecordDeliveryClaim>;
41
+ /**
42
+ * Ask a record kind's declared delivery gate whether its records may be
43
+ * delivered now. A kind without a gate is always eligible. A declared gate
44
+ * that is not registered is a composition error (`UNAVAILABLE`
45
+ * `storage-delivery-gate-missing`); a gate that cannot decide throws its own
46
+ * typed error. Neither is ever read as a decision.
47
+ */
48
+ export declare function evaluateDeliveryGate(runtime: RecordDeliveryRuntime, recordKind: string, delivery: StorageRecordDelivery): Promise<StorageDeliveryEligibility>;
49
+ export type { PendingDeliveryReport } from '../schemas/record/delivery.ts';
50
+ import type { PendingDeliveryReport } from '../schemas/record/delivery.ts';
51
+ /**
52
+ * Enqueue again, idempotently, every record still awaiting delivery on every
53
+ * record kind that declares `delivery`. The Workers consumer calls this when it
54
+ * starts. A kind that fails to read is reported and does not stop the others.
55
+ */
56
+ export declare function requeuePendingDeliveries(runtime: RecordDeliveryRuntime): Promise<PendingDeliveryReport[]>;
57
+ //# sourceMappingURL=delivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/record/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,6BAA6B,EAAE,KAAK,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACxI,OAAO,EAAE,mCAAmC,EAAE,yBAAyB,EAAE,KAAK,6BAA6B,EAAE,KAAK,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AA0C7K,OAAO,KAAK,EAAqB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAIzE,OAAO,KAAK,EACX,0BAA0B,EAG1B,qBAAqB,EACrB,MAAM,iCAAiC,CAAC;AAKzC,yCAAyC;AAEzC,uEAAuE;AACvE,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C,8HAA8H;AAC9H,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAE/C,gGAAgG;AAChG,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE3E;AAED,6EAA6E;AAC7E,eAAO,MAAM,0BAA0B,iBAAiB,CAAC;AAEzD,oGAAoG;AACpG,YAAY,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAE7E,oGAAoG;AACpG,MAAM,WAAW,0BAA0B;IAC1C,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,uBAAuB,KAAK,OAAO,CAAC;CAC/D;AAED,mFAAmF;AAEnF,kGAAkG;AAClG,MAAM,WAAW,2BAA2B;IAC3C,YAAY,CACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,6BAA6B,EACnC,OAAO,EAAE,0BAA0B,GACjC,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAChC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,qBAAqB,EAC9B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,qBAAqB,EAC/B,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,mBAAmB,CAAC,CAiB9B;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACzC,OAAO,EAAE,qBAAqB,EAC9B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,qBAAqB,GAC7B,OAAO,CAAC,0BAA0B,CAAC,CAcrC;AAED,YAAY,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAkJ3E;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAsC/G"}