mindoodb 0.0.85 → 0.0.88

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 (319) hide show
  1. package/README-server.md +6 -2
  2. package/README.md +6 -4
  3. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts.map +1 -1
  4. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js +2 -1
  5. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js.map +1 -1
  6. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts +151 -12
  7. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts.map +1 -1
  8. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js +340 -24
  9. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js.map +1 -1
  10. package/dist/browser/index.mjs +14 -0
  11. package/dist/cloudflare/DurableObjectSql.d.ts +56 -0
  12. package/dist/cloudflare/DurableObjectSql.d.ts.map +1 -0
  13. package/dist/cloudflare/DurableObjectSql.js +180 -0
  14. package/dist/cloudflare/DurableObjectSql.js.map +1 -0
  15. package/dist/cloudflare/MindooDatabaseObject.d.ts +86 -0
  16. package/dist/cloudflare/MindooDatabaseObject.d.ts.map +1 -0
  17. package/dist/cloudflare/MindooDatabaseObject.js +614 -0
  18. package/dist/cloudflare/MindooDatabaseObject.js.map +1 -0
  19. package/dist/cloudflare/MindooServerObject.d.ts +63 -0
  20. package/dist/cloudflare/MindooServerObject.d.ts.map +1 -0
  21. package/dist/cloudflare/MindooServerObject.js +521 -0
  22. package/dist/cloudflare/MindooServerObject.js.map +1 -0
  23. package/dist/cloudflare/WorkersCryptoAdapter.d.ts +7 -0
  24. package/dist/cloudflare/WorkersCryptoAdapter.d.ts.map +1 -0
  25. package/dist/cloudflare/WorkersCryptoAdapter.js +14 -0
  26. package/dist/cloudflare/WorkersCryptoAdapter.js.map +1 -0
  27. package/dist/cloudflare/host.d.ts +49 -0
  28. package/dist/cloudflare/host.d.ts.map +1 -0
  29. package/dist/cloudflare/host.js +104 -0
  30. package/dist/cloudflare/host.js.map +1 -0
  31. package/dist/cloudflare/http.d.ts +91 -0
  32. package/dist/cloudflare/http.d.ts.map +1 -0
  33. package/dist/cloudflare/http.js +266 -0
  34. package/dist/cloudflare/http.js.map +1 -0
  35. package/dist/cloudflare/index.d.ts +12 -0
  36. package/dist/cloudflare/index.d.ts.map +1 -0
  37. package/dist/cloudflare/index.js +20 -0
  38. package/dist/cloudflare/index.js.map +1 -0
  39. package/dist/cloudflare/storeRpc.d.ts +22 -0
  40. package/dist/cloudflare/storeRpc.d.ts.map +1 -0
  41. package/dist/cloudflare/storeRpc.js +85 -0
  42. package/dist/cloudflare/storeRpc.js.map +1 -0
  43. package/dist/cloudflare/types.d.ts +101 -0
  44. package/dist/cloudflare/types.d.ts.map +1 -0
  45. package/dist/cloudflare/types.js +10 -0
  46. package/dist/cloudflare/types.js.map +1 -0
  47. package/dist/cloudflare/worker.d.ts +25 -0
  48. package/dist/cloudflare/worker.d.ts.map +1 -0
  49. package/dist/cloudflare/worker.js +170 -0
  50. package/dist/cloudflare/worker.js.map +1 -0
  51. package/dist/core/BaseMindooDB.d.ts +95 -10
  52. package/dist/core/BaseMindooDB.d.ts.map +1 -1
  53. package/dist/core/BaseMindooDB.js +441 -98
  54. package/dist/core/BaseMindooDB.js.map +1 -1
  55. package/dist/core/BaseMindooTenant.d.ts +43 -0
  56. package/dist/core/BaseMindooTenant.d.ts.map +1 -1
  57. package/dist/core/BaseMindooTenant.js +157 -6
  58. package/dist/core/BaseMindooTenant.js.map +1 -1
  59. package/dist/core/BaseMindooTenantDirectory.d.ts +103 -0
  60. package/dist/core/BaseMindooTenantDirectory.d.ts.map +1 -1
  61. package/dist/core/BaseMindooTenantDirectory.js +371 -8
  62. package/dist/core/BaseMindooTenantDirectory.js.map +1 -1
  63. package/dist/core/BaseMindooTenantFactory.d.ts.map +1 -1
  64. package/dist/core/BaseMindooTenantFactory.js +2 -1
  65. package/dist/core/BaseMindooTenantFactory.js.map +1 -1
  66. package/dist/core/ChangeDocDraft.d.ts +133 -0
  67. package/dist/core/ChangeDocDraft.d.ts.map +1 -0
  68. package/dist/core/ChangeDocDraft.js +492 -0
  69. package/dist/core/ChangeDocDraft.js.map +1 -0
  70. package/dist/core/MindooDBServerAdmin.d.ts.map +1 -1
  71. package/dist/core/MindooDBServerAdmin.js +2 -1
  72. package/dist/core/MindooDBServerAdmin.js.map +1 -1
  73. package/dist/core/accesscontrol/directoryProjection.d.ts.map +1 -1
  74. package/dist/core/accesscontrol/directoryProjection.js +19 -0
  75. package/dist/core/accesscontrol/directoryProjection.js.map +1 -1
  76. package/dist/core/accesscontrol/evaluate.d.ts +14 -0
  77. package/dist/core/accesscontrol/evaluate.d.ts.map +1 -1
  78. package/dist/core/accesscontrol/evaluate.js +42 -1
  79. package/dist/core/accesscontrol/evaluate.js.map +1 -1
  80. package/dist/core/accesscontrol/types.d.ts +88 -4
  81. package/dist/core/accesscontrol/types.d.ts.map +1 -1
  82. package/dist/core/accesscontrol/types.js +114 -1
  83. package/dist/core/accesscontrol/types.js.map +1 -1
  84. package/dist/core/appendonlystores/network/AuthenticationService.d.ts +14 -0
  85. package/dist/core/appendonlystores/network/AuthenticationService.d.ts.map +1 -1
  86. package/dist/core/appendonlystores/network/AuthenticationService.js +27 -7
  87. package/dist/core/appendonlystores/network/AuthenticationService.js.map +1 -1
  88. package/dist/core/appendonlystores/network/IrohNetworkTransport.d.ts.map +1 -1
  89. package/dist/core/appendonlystores/network/IrohNetworkTransport.js +12 -0
  90. package/dist/core/appendonlystores/network/IrohNetworkTransport.js.map +1 -1
  91. package/dist/core/appendonlystores/network/IrohStreamIO.d.ts.map +1 -1
  92. package/dist/core/appendonlystores/network/IrohStreamIO.js +3 -23
  93. package/dist/core/appendonlystores/network/IrohStreamIO.js.map +1 -1
  94. package/dist/core/appendonlystores/rpc/RpcContentAddressedStore.d.ts +6 -0
  95. package/dist/core/appendonlystores/rpc/RpcContentAddressedStore.d.ts.map +1 -1
  96. package/dist/core/appendonlystores/rpc/RpcContentAddressedStore.js +20 -1
  97. package/dist/core/appendonlystores/rpc/RpcContentAddressedStore.js.map +1 -1
  98. package/dist/core/appendonlystores/rpc/storeRpcCodec.d.ts.map +1 -1
  99. package/dist/core/appendonlystores/rpc/storeRpcCodec.js +3 -23
  100. package/dist/core/appendonlystores/rpc/storeRpcCodec.js.map +1 -1
  101. package/dist/core/appendonlystores/sqlite/SqliteContentAddressedStore.d.ts +7 -0
  102. package/dist/core/appendonlystores/sqlite/SqliteContentAddressedStore.d.ts.map +1 -1
  103. package/dist/core/appendonlystores/sqlite/SqliteContentAddressedStore.js +39 -30
  104. package/dist/core/appendonlystores/sqlite/SqliteContentAddressedStore.js.map +1 -1
  105. package/dist/core/appendonlystores/sqlite/SqliteDriver.d.ts +37 -1
  106. package/dist/core/appendonlystores/sqlite/SqliteDriver.d.ts.map +1 -1
  107. package/dist/core/appendonlystores/sqlite/SqliteDriver.js +99 -40
  108. package/dist/core/appendonlystores/sqlite/SqliteDriver.js.map +1 -1
  109. package/dist/core/appendonlystores/syncStores.d.ts.map +1 -1
  110. package/dist/core/appendonlystores/syncStores.js +25 -5
  111. package/dist/core/appendonlystores/syncStores.js.map +1 -1
  112. package/dist/core/appendonlystores/types.d.ts +7 -1
  113. package/dist/core/appendonlystores/types.d.ts.map +1 -1
  114. package/dist/core/appendonlystores/types.js +1 -0
  115. package/dist/core/appendonlystores/types.js.map +1 -1
  116. package/dist/core/builtinDbInvariants.d.ts +49 -0
  117. package/dist/core/builtinDbInvariants.d.ts.map +1 -1
  118. package/dist/core/builtinDbInvariants.js +86 -1
  119. package/dist/core/builtinDbInvariants.js.map +1 -1
  120. package/dist/core/crypto/AuthChallenge.d.ts +68 -0
  121. package/dist/core/crypto/AuthChallenge.d.ts.map +1 -0
  122. package/dist/core/crypto/AuthChallenge.js +118 -0
  123. package/dist/core/crypto/AuthChallenge.js.map +1 -0
  124. package/dist/core/crypto/DomainStatement.d.ts +5 -3
  125. package/dist/core/crypto/DomainStatement.d.ts.map +1 -1
  126. package/dist/core/crypto/DomainStatement.js +5 -3
  127. package/dist/core/crypto/DomainStatement.js.map +1 -1
  128. package/dist/core/crypto/encryptedFields.d.ts +11 -0
  129. package/dist/core/crypto/encryptedFields.d.ts.map +1 -1
  130. package/dist/core/crypto/encryptedFields.js +18 -0
  131. package/dist/core/crypto/encryptedFields.js.map +1 -1
  132. package/dist/core/expressions/evaluateExpression.d.ts +8 -0
  133. package/dist/core/expressions/evaluateExpression.d.ts.map +1 -1
  134. package/dist/core/expressions/evaluateExpression.js +29 -4
  135. package/dist/core/expressions/evaluateExpression.js.map +1 -1
  136. package/dist/core/expressions/metadata.js +4 -4
  137. package/dist/core/expressions/metadata.js.map +1 -1
  138. package/dist/core/index.d.ts +3 -3
  139. package/dist/core/index.d.ts.map +1 -1
  140. package/dist/core/index.js +17 -6
  141. package/dist/core/index.js.map +1 -1
  142. package/dist/core/query/executeQuery.d.ts.map +1 -1
  143. package/dist/core/query/executeQuery.js +5 -1
  144. package/dist/core/query/executeQuery.js.map +1 -1
  145. package/dist/core/query/executeQueryInclude.d.ts.map +1 -1
  146. package/dist/core/query/executeQueryInclude.js +2 -0
  147. package/dist/core/query/executeQueryInclude.js.map +1 -1
  148. package/dist/core/query/queryView.d.ts.map +1 -1
  149. package/dist/core/query/queryView.js +5 -1
  150. package/dist/core/query/queryView.js.map +1 -1
  151. package/dist/core/types.d.ts +204 -10
  152. package/dist/core/types.d.ts.map +1 -1
  153. package/dist/core/types.js.map +1 -1
  154. package/dist/core/uri/MindooURI.d.ts.map +1 -1
  155. package/dist/core/uri/MindooURI.js +3 -24
  156. package/dist/core/uri/MindooURI.js.map +1 -1
  157. package/dist/core/userkeys/index.d.ts +1 -0
  158. package/dist/core/userkeys/index.d.ts.map +1 -1
  159. package/dist/core/userkeys/index.js +5 -1
  160. package/dist/core/userkeys/index.js.map +1 -1
  161. package/dist/core/userkeys/sealedValues.d.ts +54 -0
  162. package/dist/core/userkeys/sealedValues.d.ts.map +1 -0
  163. package/dist/core/userkeys/sealedValues.js +67 -0
  164. package/dist/core/userkeys/sealedValues.js.map +1 -0
  165. package/dist/core/utils/base64.d.ts +17 -0
  166. package/dist/core/utils/base64.d.ts.map +1 -0
  167. package/dist/core/utils/base64.js +54 -0
  168. package/dist/core/utils/base64.js.map +1 -0
  169. package/dist/core/utils/dynamicImportInterop.d.ts +10 -0
  170. package/dist/core/utils/dynamicImportInterop.d.ts.map +1 -0
  171. package/dist/core/utils/dynamicImportInterop.js +22 -0
  172. package/dist/core/utils/dynamicImportInterop.js.map +1 -0
  173. package/dist/core/utils/idGeneration.d.ts.map +1 -1
  174. package/dist/core/utils/idGeneration.js +14 -3
  175. package/dist/core/utils/idGeneration.js.map +1 -1
  176. package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.d.ts.map +1 -1
  177. package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.js +7 -0
  178. package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.js.map +1 -1
  179. package/dist/node/server/FsServerDataStore.d.ts +23 -0
  180. package/dist/node/server/FsServerDataStore.d.ts.map +1 -0
  181. package/dist/node/server/FsServerDataStore.js +59 -0
  182. package/dist/node/server/FsServerDataStore.js.map +1 -0
  183. package/dist/node/server/IrohServerEndpoint.d.ts +1 -1
  184. package/dist/node/server/IrohServerEndpoint.d.ts.map +1 -1
  185. package/dist/node/server/IrohServerRpc.d.ts +5 -5
  186. package/dist/node/server/IrohServerRpc.d.ts.map +1 -1
  187. package/dist/node/server/IrohServerRpc.js +1 -1
  188. package/dist/node/server/IrohServerRpc.js.map +1 -1
  189. package/dist/node/server/MindooDBServer.d.ts +29 -150
  190. package/dist/node/server/MindooDBServer.d.ts.map +1 -1
  191. package/dist/node/server/MindooDBServer.js +160 -1573
  192. package/dist/node/server/MindooDBServer.js.map +1 -1
  193. package/dist/node/server/PurgedDocRegistry.d.ts +4 -27
  194. package/dist/node/server/PurgedDocRegistry.d.ts.map +1 -1
  195. package/dist/node/server/PurgedDocRegistry.js +6 -83
  196. package/dist/node/server/PurgedDocRegistry.js.map +1 -1
  197. package/dist/node/server/StoreFactory.d.ts +1 -1
  198. package/dist/node/server/StoreFactory.d.ts.map +1 -1
  199. package/dist/node/server/TenantManager.d.ts +16 -284
  200. package/dist/node/server/TenantManager.d.ts.map +1 -1
  201. package/dist/node/server/TenantManager.js +35 -1168
  202. package/dist/node/server/TenantManager.js.map +1 -1
  203. package/dist/node/server/add-to-network.js +1 -1
  204. package/dist/node/server/add-to-network.js.map +1 -1
  205. package/dist/node/server/config.d.ts +11 -15
  206. package/dist/node/server/config.d.ts.map +1 -1
  207. package/dist/node/server/config.js +30 -245
  208. package/dist/node/server/config.js.map +1 -1
  209. package/dist/node/server/expressAdapter.d.ts +23 -0
  210. package/dist/node/server/expressAdapter.d.ts.map +1 -0
  211. package/dist/node/server/expressAdapter.js +108 -0
  212. package/dist/node/server/expressAdapter.js.map +1 -0
  213. package/dist/node/server/nativeIrohStreamIO.d.ts +1 -1
  214. package/dist/node/server/nativeIrohStreamIO.d.ts.map +1 -1
  215. package/dist/node/server/peer/FileClusterAuditStorage.d.ts +16 -0
  216. package/dist/node/server/peer/FileClusterAuditStorage.d.ts.map +1 -0
  217. package/dist/node/server/peer/FileClusterAuditStorage.js +39 -0
  218. package/dist/node/server/peer/FileClusterAuditStorage.js.map +1 -0
  219. package/dist/node/server/peer/IrohPeerLink.d.ts +1 -1
  220. package/dist/node/server/peer/IrohPeerLink.d.ts.map +1 -1
  221. package/dist/node/server/peer/routes.d.ts +10 -44
  222. package/dist/node/server/peer/routes.d.ts.map +1 -1
  223. package/dist/node/server/peer/routes.js +33 -275
  224. package/dist/node/server/peer/routes.js.map +1 -1
  225. package/dist/node/server/resolveServerPassword.js +1 -1
  226. package/dist/node/server/resolveServerPassword.js.map +1 -1
  227. package/dist/node/server/server.js +1 -1
  228. package/dist/node/server/server.js.map +1 -1
  229. package/dist/node/server/serverinit.js +1 -1
  230. package/dist/node/server/serverinit.js.map +1 -1
  231. package/dist/server/CapabilityMatcher.d.ts +60 -0
  232. package/dist/server/CapabilityMatcher.d.ts.map +1 -0
  233. package/dist/server/CapabilityMatcher.js +138 -0
  234. package/dist/server/CapabilityMatcher.js.map +1 -0
  235. package/dist/server/DeviceDiscoveryService.d.ts +36 -0
  236. package/dist/server/DeviceDiscoveryService.d.ts.map +1 -0
  237. package/dist/server/DeviceDiscoveryService.js +164 -0
  238. package/dist/server/DeviceDiscoveryService.js.map +1 -0
  239. package/dist/server/PurgedDocRegistry.d.ts +35 -0
  240. package/dist/server/PurgedDocRegistry.d.ts.map +1 -0
  241. package/dist/server/PurgedDocRegistry.js +90 -0
  242. package/dist/server/PurgedDocRegistry.js.map +1 -0
  243. package/dist/server/ServerDataStore.d.ts +67 -0
  244. package/dist/server/ServerDataStore.d.ts.map +1 -0
  245. package/dist/server/ServerDataStore.js +88 -0
  246. package/dist/server/ServerDataStore.js.map +1 -0
  247. package/dist/server/SyncEventBus.d.ts +39 -0
  248. package/dist/server/SyncEventBus.d.ts.map +1 -0
  249. package/dist/server/SyncEventBus.js +41 -0
  250. package/dist/server/SyncEventBus.js.map +1 -0
  251. package/dist/server/SystemAdminAuth.d.ts +82 -0
  252. package/dist/server/SystemAdminAuth.d.ts.map +1 -0
  253. package/dist/server/SystemAdminAuth.js +227 -0
  254. package/dist/server/SystemAdminAuth.js.map +1 -0
  255. package/dist/server/TenantManager.d.ts +366 -0
  256. package/dist/server/TenantManager.d.ts.map +1 -0
  257. package/dist/server/TenantManager.js +1416 -0
  258. package/dist/server/TenantManager.js.map +1 -0
  259. package/dist/server/http/MindooDBServerCore.d.ts +313 -0
  260. package/dist/server/http/MindooDBServerCore.d.ts.map +1 -0
  261. package/dist/server/http/MindooDBServerCore.js +1410 -0
  262. package/dist/server/http/MindooDBServerCore.js.map +1 -0
  263. package/dist/server/http/types.d.ts +89 -0
  264. package/dist/server/http/types.d.ts.map +1 -0
  265. package/dist/server/http/types.js +29 -0
  266. package/dist/server/http/types.js.map +1 -0
  267. package/dist/server/index.d.ts +32 -0
  268. package/dist/server/index.d.ts.map +1 -0
  269. package/dist/server/index.js +76 -0
  270. package/dist/server/index.js.map +1 -0
  271. package/dist/server/peer/ClusterAuditLog.d.ts +71 -0
  272. package/dist/server/peer/ClusterAuditLog.d.ts.map +1 -0
  273. package/dist/server/peer/ClusterAuditLog.js +81 -0
  274. package/dist/server/peer/ClusterAuditLog.js.map +1 -0
  275. package/dist/server/peer/ClusterJobRunner.d.ts +43 -0
  276. package/dist/server/peer/ClusterJobRunner.d.ts.map +1 -0
  277. package/dist/server/peer/ClusterJobRunner.js +119 -0
  278. package/dist/server/peer/ClusterJobRunner.js.map +1 -0
  279. package/dist/server/peer/ClusterManager.d.ts +149 -0
  280. package/dist/server/peer/ClusterManager.d.ts.map +1 -0
  281. package/dist/server/peer/ClusterManager.js +292 -0
  282. package/dist/server/peer/ClusterManager.js.map +1 -0
  283. package/dist/server/peer/PeerAuthService.d.ts +69 -0
  284. package/dist/server/peer/PeerAuthService.d.ts.map +1 -0
  285. package/dist/server/peer/PeerAuthService.js +207 -0
  286. package/dist/server/peer/PeerAuthService.js.map +1 -0
  287. package/dist/server/peer/PeerReplicator.d.ts +303 -0
  288. package/dist/server/peer/PeerReplicator.d.ts.map +1 -0
  289. package/dist/server/peer/PeerReplicator.js +1072 -0
  290. package/dist/server/peer/PeerReplicator.js.map +1 -0
  291. package/dist/server/peer/clusterHttp.d.ts +113 -0
  292. package/dist/server/peer/clusterHttp.d.ts.map +1 -0
  293. package/dist/server/peer/clusterHttp.js +290 -0
  294. package/dist/server/peer/clusterHttp.js.map +1 -0
  295. package/dist/server/peer/types.d.ts +244 -0
  296. package/dist/server/peer/types.d.ts.map +1 -0
  297. package/dist/server/peer/types.js +189 -0
  298. package/dist/server/peer/types.js.map +1 -0
  299. package/dist/server/rateLimits.d.ts +119 -0
  300. package/dist/server/rateLimits.d.ts.map +1 -0
  301. package/dist/server/rateLimits.js +159 -0
  302. package/dist/server/rateLimits.js.map +1 -0
  303. package/dist/server/serverConfig.d.ts +37 -0
  304. package/dist/server/serverConfig.d.ts.map +1 -0
  305. package/dist/server/serverConfig.js +251 -0
  306. package/dist/server/serverConfig.js.map +1 -0
  307. package/dist/server/timestampProxy.d.ts +129 -0
  308. package/dist/server/timestampProxy.d.ts.map +1 -0
  309. package/dist/server/timestampProxy.js +361 -0
  310. package/dist/server/timestampProxy.js.map +1 -0
  311. package/dist/server/types.d.ts +267 -0
  312. package/dist/server/types.d.ts.map +1 -0
  313. package/dist/server/types.js +56 -0
  314. package/dist/server/types.js.map +1 -0
  315. package/dist/server/validation.d.ts +43 -0
  316. package/dist/server/validation.d.ts.map +1 -0
  317. package/dist/server/validation.js +104 -0
  318. package/dist/server/validation.js.map +1 -0
  319. package/package.json +9 -1
@@ -248,6 +248,8 @@ function validateViewDefinition(sources, definition) {
248
248
  * and run its initial update. See {@link EphemeralSummaryView}.
249
249
  */
250
250
  async function createEphemeralSummaryView(db, summary, definition, options) {
251
+ // Coverage is checked against the settled configuration (see executeQuery).
252
+ await summary.ensureConfigLoaded?.();
251
253
  const view = new EphemeralSummaryView([{ db, summary, origin: defaultEphemeralOrigin(db) }], definition);
252
254
  await view.update(options);
253
255
  return view;
@@ -278,7 +280,9 @@ async function createEphemeralSummaryView(db, summary, definition, options) {
278
280
  * source. `bindTo()` subscribes to the change feeds of all sources.
279
281
  */
280
282
  async function queryViewAcross(sources, definition, options) {
281
- const view = new EphemeralSummaryView(resolveSources(sources), definition);
283
+ const resolved = resolveSources(sources);
284
+ await Promise.all(resolved.map((source) => source.summary.ensureConfigLoaded?.()));
285
+ const view = new EphemeralSummaryView(resolved, definition);
282
286
  await view.update(options);
283
287
  return view;
284
288
  }
@@ -1 +1 @@
1
- {"version":3,"file":"queryView.js","sourceRoot":"","sources":["../../../src/core/query/queryView.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queryView.js","sourceRoot":"","sources":["../../../src/core/query/queryView.ts"],"names":[],"mappings":";;;AAiXA,gEAcC;AA2BD,0CAUC;AAjaD,gDAIwB;AAExB,uGAAoG;AACpG,sEAAmE;AACnE,kFAA8G;AAG9G,mCAAuE;AAwEvE,SAAS,sBAAsB,CAAC,EAAY;IAC1C,OAAO,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;AACxE,CAAC;AAED,SAAS,cAAc,CAAC,OAA8B;IACpD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,wBAAgB,CAAC,uDAAuD,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC;YAC/B,MAAM,IAAI,wBAAgB,CAAC,oDAAoD,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,wBAAgB,CACxB,iCAAiC,MAAM,2EAA2E,CACnH,CAAC;QACJ,CAAC;QACD,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxB,QAAQ,CAAC,IAAI,CAAC;YACZ,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE;YACpC,MAAM;YACN,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAa,oBAAoB;IAO/B,YACmB,OAA6B,EACtC,UAAqC;QAD5B,YAAO,GAAP,OAAO,CAAsB;QACtC,eAAU,GAAV,UAAU,CAA2B;QAPvC,cAAS,GAAqC,EAAE,CAAC;QACjD,aAAQ,GAAG,KAAK,CAAC;QACzB,mEAAmE;QAC3D,cAAS,GAAG,KAAK,CAAC;QAMxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAEO,SAAS,CAAC,UAAqC;QACrD,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAChD,MAAM,YAAY,qCAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,qCAAiB,CAAC,MAAM,CAAC,CAC7E,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,yBAAW,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,UAAU,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACjD,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC;YAClD,IAAI,IAAiF,CAAC;YACtF,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC;oBAChC,MAAM,IAAI,wBAAgB,CACxB,gBAAgB,MAAM,CAAC,MAAM,sCAAsC,EACnE,sBAAsB,CACvB,CAAC;gBACJ,CAAC;gBACD,IAAI,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;YACrE,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,+DAA8B,CAAC;gBAClD,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM;gBAC1C,IAAI;aACL,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yEAAyE;IACzE,OAAO;QACL,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,uEAAuE;IACvE,KAAK,CAAC,MAAM,CAAC,OAAkC;QAC7C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,UAA2F,EAC3F,OAAkC;QAElC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG;YAChB,GAAG,IAAI,CAAC,UAAU;YAClB,GAAG,UAAU;SACd,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,MAAM;QACJ,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;IAEO,WAAW;QACjB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,MAAM;QACJ,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEO,iBAAiB;QACvB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;CACF;AA1ID,oDA0IC;AAED;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;AAEnE;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAAC,UAAiC,EAAE,IAAY;IAC5E,MAAM,OAAO,GAAG,IAAA,uCAAyB,EAAC,UAAU,CAAC,CAAC;IACtD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,wBAAgB,CACxB,QAAQ,IAAI,aAAa,OAAO,kDAAkD;YAClF,kEAAkE;YAClE,2CAA2C,CAC5C,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,OAA6B,EAAE,UAAqC;IAClG,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IAEtC,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,YAAY,qCAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAC/F,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,SAAS;QACX,CAAC;QACD,qBAAqB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,IAAA,2CAA6B,EAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC;YACjC,MAAM,IAAI,wBAAgB,CACxB,qGAAqG,CACtG,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,IAAA,iCAAmB,EAAC,UAAU,CAAC,EAAE,CAAC;YACnD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS,WAAW,CAAC,CAAC;QAErD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC;QAClD,IAAI,MAAM,EAAE,CAAC;YACX,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACxC,MAAM,YAAY,GAAG,IAAA,2CAA6B,EAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,YAAY,CAAC,gBAAgB,EAAE,CAAC;gBAClC,MAAM,IAAI,wBAAgB,CACxB,iDAAiD,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACnG,CAAC;YACJ,CAAC;YACD,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC;gBACjC,MAAM,IAAI,wBAAgB,CACxB,qGAAqG,CACtG,CAAC;YACJ,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,IAAA,iCAAmB,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC/C,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;QACrE,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACnC,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,IAAI,wBAAgB,CACxB,0BAA0B,IAAI,kBAAkB,MAAM,CAAC,MAAM,2BAA2B;wBACxF,0DAA0D,CAC3D,CAAC;gBACJ,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,wBAAgB,CACxB,UAAU,IAAI,4DAA4D,MAAM,CAAC,MAAM,IAAI;oBAC3F,2CAA2C,CAC5C,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,0BAA0B,CAC9C,EAAY,EACZ,OAA6B,EAC7B,UAAqC,EACrC,OAAkC;IAElC,4EAA4E;IAC5E,MAAM,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,oBAAoB,CACnC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,sBAAsB,CAAC,EAAE,CAAC,EAAE,CAAC,EACrD,UAAU,CACX,CAAC;IACF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACI,KAAK,UAAU,eAAe,CACnC,OAA8B,EAC9B,UAAqC,EACrC,OAAkC;IAElC,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,CAAC;IACnF,MAAM,IAAI,GAAG,IAAI,oBAAoB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC5D,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -370,6 +370,20 @@ export interface ApproveJoinRequestOptions {
370
370
  * that wrap so a directory-only member cannot later import the tenant key.
371
371
  */
372
372
  sharedDocKeyIds?: string[];
373
+ /**
374
+ * Personal-database prefixes the joining identity may deposit into
375
+ * (docs/accesscontrol.md §6.11), e.g. `["mmail_"]` for a mail gateway that
376
+ * delivers into every person's `mmail_<grantDocId>`. Stored on its grant
377
+ * (`depositPrefixes`), admin-signed. Omit for ordinary members.
378
+ */
379
+ depositPrefixes?: string[];
380
+ /**
381
+ * Personal-database prefixes the joining identity may read and sync in
382
+ * everyone's databases (docs/accesscontrol.md §6.11), e.g. `["mmailout_"]`
383
+ * for a mail gateway that sends what people put in their outbox. Stored on
384
+ * its grant (`accessPrefixes`), admin-signed. Omit for ordinary members.
385
+ */
386
+ accessPrefixes?: string[];
373
387
  /**
374
388
  * Human-readable label for the joining device's key pair. When set,
375
389
  * it overrides any label the joining user suggested in the join request and
@@ -605,6 +619,18 @@ export interface PublishToServerOptions {
605
619
  * locator. Browsers cannot CORS-fetch `iroh:` URLs.
606
620
  */
607
621
  irohStreamIO?: import("./appendonlystores/network/IrohStreamIO").IrohStreamIO;
622
+ /**
623
+ * The tenant's administration private key. With it (and {@link adminPassword})
624
+ * the publish flow adds the server as a trusted witness (docs/accesscontrol.md
625
+ * §6.4), so the receipts it stamps on pushed entries are accepted once access
626
+ * control is enabled. Not needed when `systemAdminUser` is the tenant admin
627
+ * (demo servers with open tenant creation).
628
+ */
629
+ adminSigningKey?: EncryptedPrivateKey;
630
+ /** Password for {@link adminSigningKey}. */
631
+ adminPassword?: string;
632
+ /** Do not add the server as a trusted witness (e.g. a pure relay the admin does not trust). */
633
+ skipTrustedWitness?: boolean;
608
634
  }
609
635
  /**
610
636
  * Extra options for {@link MindooTenant.connectToServer} when the remote is
@@ -980,6 +1006,15 @@ export interface MindooTenant {
980
1006
  rememberSealedGenerations?(keyId: string, generations: Uint8Array[]): void;
981
1007
  getSealedGenerations?(keyId: string): Uint8Array[];
982
1008
  ingestSealedRecipients?(keyId: string, recipients: import("./userkeys/sealedTypes").EntryRecipients): Promise<void>;
1009
+ /**
1010
+ * Seal `value` to people (published User-Keys) or devices, to store it as a
1011
+ * field of a document encrypted with another key, e.g. `$publicinfos`
1012
+ * (see `SealedValue`). Includes the current user unless
1013
+ * `options.includeSelf` is false.
1014
+ */
1015
+ sealValue?(value: Uint8Array, recipients: import("./userkeys/sealedTypes").RecipientSpec[], options?: import("./userkeys/sealedTypes").RecipientOptions): Promise<import("./userkeys/sealedValues").SealedValue>;
1016
+ /** Open a `SealedValue` with this identity's keys; null when not a recipient. */
1017
+ openSealedValue?(sealed: import("./userkeys/sealedValues").SealedValue): Promise<Uint8Array | null>;
983
1018
  ingestSealedFromEntries?(keyId: string, entries: Array<{
984
1019
  recipients?: import("./userkeys/sealedTypes").EntryRecipients;
985
1020
  createdAt: number;
@@ -1712,6 +1747,19 @@ export interface CreateOptions {
1712
1747
  */
1713
1748
  recipients?: import("./userkeys/sealedTypes").RecipientSpec[];
1714
1749
  recipientOptions?: import("./userkeys/sealedTypes").RecipientOptions;
1750
+ /**
1751
+ * Files to attach in the document's very first entry. They are encrypted
1752
+ * with the document's key and referenced from the `doc_create` entry, so a
1753
+ * writer that cannot change the document afterwards (a sealed create with
1754
+ * `includeSelf: false`, a `doc_deposit` principal, docs/accesscontrol.md
1755
+ * §6.10) can still deliver them. Not supported on the convergent custom-id
1756
+ * path (an `id` without `assumeUniqueId`) or by `createDocuments()`.
1757
+ */
1758
+ attachments?: Array<{
1759
+ data: Uint8Array;
1760
+ fileName: string;
1761
+ mimeType: string;
1762
+ }>;
1715
1763
  /**
1716
1764
  * Optional signing key pair to sign the initial document entry with. When
1717
1765
  * provided, `signingKeyPassword` must be provided as well. Replaces
@@ -2125,8 +2173,10 @@ export interface MindooDoc {
2125
2173
  * of overwriting each other, which is what makes counters safe for shared
2126
2174
  * tallies (votes, views, stock levels). Create counters with
2127
2175
  * `MindooValue.counter()`; a missing field is initialized as a counter
2128
- * holding `delta`. Repeated calls within one changeDoc() add up and are
2129
- * applied after the callback's field assignments.
2176
+ * holding `delta`. Increments are applied in call order together with the
2177
+ * callback's other edits: repeated calls add up, an assignment after an
2178
+ * increment replaces the counter, and reads later in the callback see the
2179
+ * incremented value.
2130
2180
  *
2131
2181
  * @param path Field name or path segments (e.g. `["stats", "views"]`)
2132
2182
  * @param delta Amount to add, a safe integer
@@ -2134,6 +2184,36 @@ export interface MindooDoc {
2134
2184
  * change is applied) if the value at `path` exists but is not a counter
2135
2185
  */
2136
2186
  incrementCounter(path: string | Array<string | number>, delta: number): void;
2187
+ /**
2188
+ * Set the text at `path` to `value`, stored as a splice of the part that
2189
+ * changed. Concurrent edits elsewhere in the text then merge character by
2190
+ * character, as with `applyJsonPatch()` `textSplice`; a plain assignment of a
2191
+ * string replaces the whole value instead. Only works within the changeDoc()
2192
+ * callback. A missing field is created.
2193
+ *
2194
+ * @param path Field name or path segments (e.g. `["meta", "title"]`)
2195
+ * @param value The new text
2196
+ * Rich text (a text with marks or block markers) is refused: use
2197
+ * `MindooDB.applyRichTextPatch()` or `applyRichTextStepsPatch()` for it.
2198
+ *
2199
+ * @throws Error if called outside of changeDoc() callback, if the value
2200
+ * at `path` exists and is not text, or if it is rich text
2201
+ */
2202
+ updateText(path: string | Array<string | number>, value: string): void;
2203
+ /**
2204
+ * The type of the value at `path`, or `undefined` when nothing is there.
2205
+ *
2206
+ * `getData()` reads collaborative text and atomic strings both as strings,
2207
+ * counters as numbers and timestamps as `Date`; this tells them apart, so a
2208
+ * caller can pick the matching write: plain assignment, {@link updateText}
2209
+ * (`"text"`), {@link incrementCounter} (`"counter"`), or
2210
+ * `MindooDB.applyRichTextPatch()` (`"richText"`, a text with marks or block
2211
+ * markers). Inside changeDoc() the answer includes the callback's own edits
2212
+ * so far (a `MindooValue` just assigned reports its kind).
2213
+ *
2214
+ * @param path Field name or path segments (e.g. `["meta", "status"]`)
2215
+ */
2216
+ getFieldType(path: string | Array<string | number>): MindooFieldType | undefined;
2137
2217
  /**
2138
2218
  * Get all attachment references for this document.
2139
2219
  *
@@ -2471,6 +2551,13 @@ export interface MindooJsonCounterIncrementPatch {
2471
2551
  path: Array<string | number>;
2472
2552
  delta: number;
2473
2553
  }
2554
+ /**
2555
+ * What a document field holds, as reported by `MindooDoc.getFieldType()`.
2556
+ * `text` is collaborative plain text, `richText` a text with marks or block
2557
+ * markers, `atomic` a string that is replaced as a whole, `counter` a CRDT
2558
+ * counter, `timestamp` a date; `list` and `map` are arrays and objects.
2559
+ */
2560
+ export type MindooFieldType = "text" | "richText" | "atomic" | "counter" | "timestamp" | "number" | "boolean" | "null" | "bytes" | "list" | "map";
2474
2561
  /**
2475
2562
  * Granular JSON mutation batch for a MindooDoc payload.
2476
2563
  *
@@ -2662,6 +2749,21 @@ export interface MindooTenantDirectory {
2662
2749
  registerUser(userId: PublicUserId, administrationPrivateKey: EncryptedPrivateKey, administrationPrivateKeyPassword: string, userDetails?: DirectoryUserDetails, label?: string, options?: {
2663
2750
  distributeKeyIds?: string[];
2664
2751
  }): Promise<void>;
2752
+ /**
2753
+ * Registers several users like {@link registerUser}, one after another,
2754
+ * decrypting the administration key only once for the whole batch instead
2755
+ * of several times per user. Each registration is checked and signed
2756
+ * exactly as a single call would; a failure stops the batch, users before
2757
+ * it stay registered.
2758
+ */
2759
+ registerUsers?(users: Array<{
2760
+ userId: PublicUserId;
2761
+ userDetails?: DirectoryUserDetails;
2762
+ label?: string;
2763
+ options?: {
2764
+ distributeKeyIds?: string[];
2765
+ };
2766
+ }>, administrationPrivateKey: EncryptedPrivateKey, administrationPrivateKeyPassword: string): Promise<void>;
2665
2767
  /**
2666
2768
  * Revokes a user's access by removing their keys from the grant document
2667
2769
  * (docs/accesscontrol.md §6.5). Revocation is an in-place edit of the grant
@@ -2715,6 +2817,22 @@ export interface MindooTenantDirectory {
2715
2817
  * @returns A promise that resolves when the policy has been written.
2716
2818
  */
2717
2819
  setDefaultAccessPolicy?(policy: Partial<Omit<DefaultAccessPolicyDoc, "form" | "type">>, administrationPrivateKey: EncryptedPrivateKey, administrationPrivateKeyPassword: string): Promise<void>;
2820
+ /**
2821
+ * Require the v2 metadata-binding entry signature from now on, for a tenant
2822
+ * created before that became the default (`requireMetadataSignatureSince`).
2823
+ *
2824
+ * New entries then must carry `metadataSignature`; history from before the
2825
+ * cutoff keeps verifying with the legacy signature. Safe to call on any
2826
+ * tenant: one that already has a cutoff is left alone, and a tenant without
2827
+ * a default policy document gets one with access checks still switched off,
2828
+ * because creating that document is otherwise what turns access control on.
2829
+ *
2830
+ * @returns The cutoff now in force, and whether this call set it.
2831
+ */
2832
+ requireV2EntrySignatures?(administrationPrivateKey: EncryptedPrivateKey, administrationPrivateKeyPassword: string): Promise<{
2833
+ since: number;
2834
+ changed: boolean;
2835
+ }>;
2718
2836
  /**
2719
2837
  * Create or update a per-database access policy override (§6.2). Fields set
2720
2838
  * here override the tenant default for `dbid`; unset fields inherit it.
@@ -2755,6 +2873,10 @@ export interface MindooTenantDirectory {
2755
2873
  groups?: string[];
2756
2874
  withfields?: WithFieldClause[];
2757
2875
  description?: string;
2876
+ /** `doc_deposit` only (docs/accesscontrol.md §6.10). */
2877
+ maxRecipients?: number;
2878
+ /** `doc_deposit` only (§6.10): allowed prefixes of deposited document ids. */
2879
+ docIdPrefixes?: string[];
2758
2880
  }, administrationPrivateKey: EncryptedPrivateKey, administrationPrivateKeyPassword: string): Promise<void>;
2759
2881
  /**
2760
2882
  * List access-control rules in effect (§9), optionally filtered. Each rule
@@ -3259,6 +3381,21 @@ export interface MindooTenantDirectory {
3259
3381
  * @returns The grant document id carrying the wipe directive, or `null` when the key is not wipe-targeted.
3260
3382
  */
3261
3383
  getWipeGrantDocId?(signingKey: string): Promise<string | null>;
3384
+ /**
3385
+ * Let `username` deposit into personal databases with these prefixes
3386
+ * (docs/accesscontrol.md §6.11). Admin-signed change of the person's grant;
3387
+ * an empty list removes the right.
3388
+ */
3389
+ setGrantDepositPrefixes?(username: string, prefixes: string[], administrationPrivateKey: EncryptedPrivateKey, administrationPrivateKeyPassword: string): Promise<void>;
3390
+ /**
3391
+ * Deposit and access rights in other people's personal databases (§6.11);
3392
+ * fields left out stay as they are.
3393
+ */
3394
+ setGrantPersonalDatabaseRights?(username: string, rights: {
3395
+ depositPrefixes?: string[];
3396
+ accessPrefixes?: string[];
3397
+ depositDocIdPrefixes?: Record<string, string[]>;
3398
+ }, administrationPrivateKey: EncryptedPrivateKey, administrationPrivateKeyPassword: string): Promise<void>;
3262
3399
  /**
3263
3400
  * Check if a user has been revoked.
3264
3401
  *
@@ -3426,6 +3563,28 @@ export interface MindooTenantDirectory {
3426
3563
  * @returns True when the current user may open/sync the database.
3427
3564
  */
3428
3565
  canReadDatabase?(dbId: string): Promise<boolean>;
3566
+ /**
3567
+ * Whether the current user may deposit sealed documents into `dbId` without
3568
+ * read access (`doc_deposit`, docs/accesscontrol.md §6.10).
3569
+ */
3570
+ canDepositDatabase?(dbId: string): Promise<boolean>;
3571
+ /**
3572
+ * The current user's read scope in `dbId` (docs/accesscontrol.md §6.12):
3573
+ * `"own"` when the database's `docReadScope` is `"own"` and the user is
3574
+ * neither the tenant admin nor a `doc_read_all` reader; the server then
3575
+ * serves only documents the user created. Otherwise `"all"`.
3576
+ *
3577
+ * Optional capability.
3578
+ */
3579
+ getReadScope?(dbId: string): Promise<"all" | "own">;
3580
+ /**
3581
+ * Server-side variant of {@link getReadScope} for a request principal's
3582
+ * signing key. Optional capability.
3583
+ */
3584
+ evaluateReadScopeForSigningKey?(input: {
3585
+ dbid: string;
3586
+ signingKey: string;
3587
+ }): Promise<"all" | "own">;
3429
3588
  /**
3430
3589
  * Create or update database-specific settings.
3431
3590
  * Automatically uses the cached settings document for the given dbId if it exists, or creates a new one.
@@ -4324,6 +4483,25 @@ export interface MindooDB {
4324
4483
  * @return Counts of removed and retained entries
4325
4484
  */
4326
4485
  purgeDocumentHistory(docId: string): Promise<DocumentHistoryPurgeOutcome>;
4486
+ /**
4487
+ * Request the hard delete of deleted documents in a personal database
4488
+ * (`mmail_…`, `mmailout_…`; docs/accesscontrol.md §6.11, "Purge"): writes a
4489
+ * `purgereq_…` document; push it like any change. Throws for other databases
4490
+ * and for documents that are not deleted. Returns the request's id.
4491
+ */
4492
+ requestPurgeOfDeletedDocuments(docIds: string[]): Promise<string>;
4493
+ /**
4494
+ * The document ids this personal database's purge requests name; with
4495
+ * `onlyAccepted`, only requests the server has accepted. Empty elsewhere.
4496
+ */
4497
+ getPurgeRequestedDocIds(options?: {
4498
+ onlyAccepted?: boolean;
4499
+ }): Promise<Set<string>>;
4500
+ /**
4501
+ * Remove locally the documents of accepted purge requests (runs after every
4502
+ * docs pull of a personal database). Returns how many were removed.
4503
+ */
4504
+ applyPurgeRequests(): Promise<number>;
4327
4505
  /**
4328
4506
  * Entries this device refused to materialize, grouped per document and
4329
4507
  * persisted in the metadata checkpoint (docs/accesscontrol.md §10).
@@ -4844,6 +5022,11 @@ export interface MindooDB {
4844
5022
  * back into `MindooRichTextPatch.baseHeads` when authoring the next edit.
4845
5023
  */
4846
5024
  getRichTextSnapshot(doc: MindooDoc, path: Array<string | number>): Promise<MindooRichTextSnapshot>;
5025
+ /**
5026
+ * The type of the value at `path` of `doc`, or `undefined` when nothing is
5027
+ * there; same as {@link MindooDoc.getFieldType}.
5028
+ */
5029
+ getFieldType(doc: MindooDoc, path: string | Array<string | number>): Promise<MindooFieldType | undefined>;
4847
5030
  /**
4848
5031
  * Create stable cursors for character positions in the text at `path`.
4849
5032
  *
@@ -5121,15 +5304,13 @@ export interface MindooDB {
5121
5304
  * — a peer sync — and therefore have to apply the admin/owner rules
5122
5305
  * themselves before storing anything.
5123
5306
  *
5124
- * Deliberately the same check the load path uses, so an entry admitted on
5125
- * this answer is one that will also materialize. Returns false for databases
5126
- * without a builtin invariant, so it can be asked unconditionally.
5307
+ * Applies the server's write rule, not the lenient load-path filter: an
5308
+ * owner that cannot be resolved is a refusal. `batch` is the rest of the
5309
+ * delivery, so a new document's `doc_create` in the same batch names its
5310
+ * owner. Everything admitted also passes the load path. Returns false for
5311
+ * databases without a builtin invariant, so it can be asked unconditionally.
5127
5312
  */
5128
- violatesBuiltinWriteInvariant(entry: {
5129
- entryType?: string;
5130
- createdByPublicKey: string;
5131
- docId?: string;
5132
- }): Promise<boolean>;
5313
+ violatesBuiltinWriteInvariant(entry: BuiltinIngestEntry, batch?: readonly BuiltinIngestEntry[]): Promise<boolean>;
5133
5314
  /**
5134
5315
  * Reconcile local document visibility with the current tenant KeyBag.
5135
5316
  *
@@ -5269,4 +5450,17 @@ export interface MindooDB {
5269
5450
  */
5270
5451
  pushChangesTo(remote: ContentAddressedStore | MindooDB, options?: SyncOptions): Promise<SyncResult>;
5271
5452
  }
5453
+ /**
5454
+ * The parts of an incoming entry the builtin `directory` / `userdirectory`
5455
+ * ingest check reads. A full {@link StoreEntry} fits; `encryptedData` and
5456
+ * `decryptionKeyId` are only needed to read the owner out of a userkey
5457
+ * document's `doc_create`.
5458
+ */
5459
+ export interface BuiltinIngestEntry {
5460
+ entryType?: string;
5461
+ createdByPublicKey: string;
5462
+ docId?: string;
5463
+ encryptedData?: Uint8Array;
5464
+ decryptionKeyId?: string;
5465
+ }
5272
5466
  //# sourceMappingURL=types.d.ts.map