mindoodb 0.0.85 → 0.0.86

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 (235) hide show
  1. package/README-server.md +1 -0
  2. package/README.md +6 -4
  3. package/dist/cloudflare/DurableObjectSql.d.ts +56 -0
  4. package/dist/cloudflare/DurableObjectSql.d.ts.map +1 -0
  5. package/dist/cloudflare/DurableObjectSql.js +180 -0
  6. package/dist/cloudflare/DurableObjectSql.js.map +1 -0
  7. package/dist/cloudflare/MindooDatabaseObject.d.ts +86 -0
  8. package/dist/cloudflare/MindooDatabaseObject.d.ts.map +1 -0
  9. package/dist/cloudflare/MindooDatabaseObject.js +614 -0
  10. package/dist/cloudflare/MindooDatabaseObject.js.map +1 -0
  11. package/dist/cloudflare/MindooServerObject.d.ts +63 -0
  12. package/dist/cloudflare/MindooServerObject.d.ts.map +1 -0
  13. package/dist/cloudflare/MindooServerObject.js +521 -0
  14. package/dist/cloudflare/MindooServerObject.js.map +1 -0
  15. package/dist/cloudflare/WorkersCryptoAdapter.d.ts +7 -0
  16. package/dist/cloudflare/WorkersCryptoAdapter.d.ts.map +1 -0
  17. package/dist/cloudflare/WorkersCryptoAdapter.js +14 -0
  18. package/dist/cloudflare/WorkersCryptoAdapter.js.map +1 -0
  19. package/dist/cloudflare/host.d.ts +49 -0
  20. package/dist/cloudflare/host.d.ts.map +1 -0
  21. package/dist/cloudflare/host.js +104 -0
  22. package/dist/cloudflare/host.js.map +1 -0
  23. package/dist/cloudflare/http.d.ts +91 -0
  24. package/dist/cloudflare/http.d.ts.map +1 -0
  25. package/dist/cloudflare/http.js +266 -0
  26. package/dist/cloudflare/http.js.map +1 -0
  27. package/dist/cloudflare/index.d.ts +12 -0
  28. package/dist/cloudflare/index.d.ts.map +1 -0
  29. package/dist/cloudflare/index.js +20 -0
  30. package/dist/cloudflare/index.js.map +1 -0
  31. package/dist/cloudflare/storeRpc.d.ts +22 -0
  32. package/dist/cloudflare/storeRpc.d.ts.map +1 -0
  33. package/dist/cloudflare/storeRpc.js +85 -0
  34. package/dist/cloudflare/storeRpc.js.map +1 -0
  35. package/dist/cloudflare/types.d.ts +101 -0
  36. package/dist/cloudflare/types.d.ts.map +1 -0
  37. package/dist/cloudflare/types.js +10 -0
  38. package/dist/cloudflare/types.js.map +1 -0
  39. package/dist/cloudflare/worker.d.ts +25 -0
  40. package/dist/cloudflare/worker.d.ts.map +1 -0
  41. package/dist/cloudflare/worker.js +170 -0
  42. package/dist/cloudflare/worker.js.map +1 -0
  43. package/dist/core/BaseMindooDB.d.ts +28 -1
  44. package/dist/core/BaseMindooDB.d.ts.map +1 -1
  45. package/dist/core/BaseMindooDB.js +180 -86
  46. package/dist/core/BaseMindooDB.js.map +1 -1
  47. package/dist/core/BaseMindooTenant.d.ts +14 -0
  48. package/dist/core/BaseMindooTenant.d.ts.map +1 -1
  49. package/dist/core/BaseMindooTenant.js +46 -0
  50. package/dist/core/BaseMindooTenant.js.map +1 -1
  51. package/dist/core/BaseMindooTenantDirectory.d.ts +10 -0
  52. package/dist/core/BaseMindooTenantDirectory.d.ts.map +1 -1
  53. package/dist/core/BaseMindooTenantDirectory.js +79 -8
  54. package/dist/core/BaseMindooTenantDirectory.js.map +1 -1
  55. package/dist/core/ChangeDocDraft.d.ts +133 -0
  56. package/dist/core/ChangeDocDraft.d.ts.map +1 -0
  57. package/dist/core/ChangeDocDraft.js +492 -0
  58. package/dist/core/ChangeDocDraft.js.map +1 -0
  59. package/dist/core/appendonlystores/network/AuthenticationService.d.ts +8 -0
  60. package/dist/core/appendonlystores/network/AuthenticationService.d.ts.map +1 -1
  61. package/dist/core/appendonlystores/network/AuthenticationService.js +19 -0
  62. package/dist/core/appendonlystores/network/AuthenticationService.js.map +1 -1
  63. package/dist/core/appendonlystores/network/IrohStreamIO.d.ts.map +1 -1
  64. package/dist/core/appendonlystores/network/IrohStreamIO.js +3 -23
  65. package/dist/core/appendonlystores/network/IrohStreamIO.js.map +1 -1
  66. package/dist/core/appendonlystores/rpc/storeRpcCodec.d.ts.map +1 -1
  67. package/dist/core/appendonlystores/rpc/storeRpcCodec.js +3 -23
  68. package/dist/core/appendonlystores/rpc/storeRpcCodec.js.map +1 -1
  69. package/dist/core/appendonlystores/sqlite/SqliteContentAddressedStore.d.ts.map +1 -1
  70. package/dist/core/appendonlystores/sqlite/SqliteContentAddressedStore.js +21 -30
  71. package/dist/core/appendonlystores/sqlite/SqliteContentAddressedStore.js.map +1 -1
  72. package/dist/core/appendonlystores/sqlite/SqliteDriver.d.ts +37 -1
  73. package/dist/core/appendonlystores/sqlite/SqliteDriver.d.ts.map +1 -1
  74. package/dist/core/appendonlystores/sqlite/SqliteDriver.js +99 -40
  75. package/dist/core/appendonlystores/sqlite/SqliteDriver.js.map +1 -1
  76. package/dist/core/expressions/evaluateExpression.d.ts +8 -0
  77. package/dist/core/expressions/evaluateExpression.d.ts.map +1 -1
  78. package/dist/core/expressions/evaluateExpression.js +29 -4
  79. package/dist/core/expressions/evaluateExpression.js.map +1 -1
  80. package/dist/core/expressions/metadata.js +4 -4
  81. package/dist/core/expressions/metadata.js.map +1 -1
  82. package/dist/core/types.d.ts +61 -2
  83. package/dist/core/types.d.ts.map +1 -1
  84. package/dist/core/types.js.map +1 -1
  85. package/dist/core/uri/MindooURI.d.ts.map +1 -1
  86. package/dist/core/uri/MindooURI.js +3 -24
  87. package/dist/core/uri/MindooURI.js.map +1 -1
  88. package/dist/core/utils/base64.d.ts +17 -0
  89. package/dist/core/utils/base64.d.ts.map +1 -0
  90. package/dist/core/utils/base64.js +54 -0
  91. package/dist/core/utils/base64.js.map +1 -0
  92. package/dist/core/utils/idGeneration.d.ts.map +1 -1
  93. package/dist/core/utils/idGeneration.js +14 -3
  94. package/dist/core/utils/idGeneration.js.map +1 -1
  95. package/dist/node/server/FsServerDataStore.d.ts +23 -0
  96. package/dist/node/server/FsServerDataStore.d.ts.map +1 -0
  97. package/dist/node/server/FsServerDataStore.js +59 -0
  98. package/dist/node/server/FsServerDataStore.js.map +1 -0
  99. package/dist/node/server/IrohServerEndpoint.d.ts +1 -1
  100. package/dist/node/server/IrohServerEndpoint.d.ts.map +1 -1
  101. package/dist/node/server/IrohServerRpc.d.ts +5 -5
  102. package/dist/node/server/IrohServerRpc.d.ts.map +1 -1
  103. package/dist/node/server/IrohServerRpc.js +1 -1
  104. package/dist/node/server/IrohServerRpc.js.map +1 -1
  105. package/dist/node/server/MindooDBServer.d.ts +29 -150
  106. package/dist/node/server/MindooDBServer.d.ts.map +1 -1
  107. package/dist/node/server/MindooDBServer.js +160 -1573
  108. package/dist/node/server/MindooDBServer.js.map +1 -1
  109. package/dist/node/server/PurgedDocRegistry.d.ts +4 -27
  110. package/dist/node/server/PurgedDocRegistry.d.ts.map +1 -1
  111. package/dist/node/server/PurgedDocRegistry.js +6 -83
  112. package/dist/node/server/PurgedDocRegistry.js.map +1 -1
  113. package/dist/node/server/StoreFactory.d.ts +1 -1
  114. package/dist/node/server/StoreFactory.d.ts.map +1 -1
  115. package/dist/node/server/TenantManager.d.ts +16 -284
  116. package/dist/node/server/TenantManager.d.ts.map +1 -1
  117. package/dist/node/server/TenantManager.js +35 -1168
  118. package/dist/node/server/TenantManager.js.map +1 -1
  119. package/dist/node/server/add-to-network.js +1 -1
  120. package/dist/node/server/add-to-network.js.map +1 -1
  121. package/dist/node/server/config.d.ts +11 -15
  122. package/dist/node/server/config.d.ts.map +1 -1
  123. package/dist/node/server/config.js +30 -245
  124. package/dist/node/server/config.js.map +1 -1
  125. package/dist/node/server/expressAdapter.d.ts +23 -0
  126. package/dist/node/server/expressAdapter.d.ts.map +1 -0
  127. package/dist/node/server/expressAdapter.js +108 -0
  128. package/dist/node/server/expressAdapter.js.map +1 -0
  129. package/dist/node/server/nativeIrohStreamIO.d.ts +1 -1
  130. package/dist/node/server/nativeIrohStreamIO.d.ts.map +1 -1
  131. package/dist/node/server/peer/FileClusterAuditStorage.d.ts +16 -0
  132. package/dist/node/server/peer/FileClusterAuditStorage.d.ts.map +1 -0
  133. package/dist/node/server/peer/FileClusterAuditStorage.js +39 -0
  134. package/dist/node/server/peer/FileClusterAuditStorage.js.map +1 -0
  135. package/dist/node/server/peer/IrohPeerLink.d.ts +1 -1
  136. package/dist/node/server/peer/IrohPeerLink.d.ts.map +1 -1
  137. package/dist/node/server/peer/routes.d.ts +10 -44
  138. package/dist/node/server/peer/routes.d.ts.map +1 -1
  139. package/dist/node/server/peer/routes.js +33 -275
  140. package/dist/node/server/peer/routes.js.map +1 -1
  141. package/dist/node/server/resolveServerPassword.js +1 -1
  142. package/dist/node/server/resolveServerPassword.js.map +1 -1
  143. package/dist/node/server/server.js +1 -1
  144. package/dist/node/server/server.js.map +1 -1
  145. package/dist/node/server/serverinit.js +1 -1
  146. package/dist/node/server/serverinit.js.map +1 -1
  147. package/dist/server/CapabilityMatcher.d.ts +60 -0
  148. package/dist/server/CapabilityMatcher.d.ts.map +1 -0
  149. package/dist/server/CapabilityMatcher.js +138 -0
  150. package/dist/server/CapabilityMatcher.js.map +1 -0
  151. package/dist/server/DeviceDiscoveryService.d.ts +36 -0
  152. package/dist/server/DeviceDiscoveryService.d.ts.map +1 -0
  153. package/dist/server/DeviceDiscoveryService.js +165 -0
  154. package/dist/server/DeviceDiscoveryService.js.map +1 -0
  155. package/dist/server/PurgedDocRegistry.d.ts +35 -0
  156. package/dist/server/PurgedDocRegistry.d.ts.map +1 -0
  157. package/dist/server/PurgedDocRegistry.js +90 -0
  158. package/dist/server/PurgedDocRegistry.js.map +1 -0
  159. package/dist/server/ServerDataStore.d.ts +67 -0
  160. package/dist/server/ServerDataStore.d.ts.map +1 -0
  161. package/dist/server/ServerDataStore.js +88 -0
  162. package/dist/server/ServerDataStore.js.map +1 -0
  163. package/dist/server/SyncEventBus.d.ts +39 -0
  164. package/dist/server/SyncEventBus.d.ts.map +1 -0
  165. package/dist/server/SyncEventBus.js +41 -0
  166. package/dist/server/SyncEventBus.js.map +1 -0
  167. package/dist/server/SystemAdminAuth.d.ts +82 -0
  168. package/dist/server/SystemAdminAuth.d.ts.map +1 -0
  169. package/dist/server/SystemAdminAuth.js +228 -0
  170. package/dist/server/SystemAdminAuth.js.map +1 -0
  171. package/dist/server/TenantManager.d.ts +330 -0
  172. package/dist/server/TenantManager.d.ts.map +1 -0
  173. package/dist/server/TenantManager.js +1186 -0
  174. package/dist/server/TenantManager.js.map +1 -0
  175. package/dist/server/http/MindooDBServerCore.d.ts +313 -0
  176. package/dist/server/http/MindooDBServerCore.d.ts.map +1 -0
  177. package/dist/server/http/MindooDBServerCore.js +1403 -0
  178. package/dist/server/http/MindooDBServerCore.js.map +1 -0
  179. package/dist/server/http/types.d.ts +89 -0
  180. package/dist/server/http/types.d.ts.map +1 -0
  181. package/dist/server/http/types.js +29 -0
  182. package/dist/server/http/types.js.map +1 -0
  183. package/dist/server/index.d.ts +32 -0
  184. package/dist/server/index.d.ts.map +1 -0
  185. package/dist/server/index.js +76 -0
  186. package/dist/server/index.js.map +1 -0
  187. package/dist/server/peer/ClusterAuditLog.d.ts +71 -0
  188. package/dist/server/peer/ClusterAuditLog.d.ts.map +1 -0
  189. package/dist/server/peer/ClusterAuditLog.js +81 -0
  190. package/dist/server/peer/ClusterAuditLog.js.map +1 -0
  191. package/dist/server/peer/ClusterJobRunner.d.ts +43 -0
  192. package/dist/server/peer/ClusterJobRunner.d.ts.map +1 -0
  193. package/dist/server/peer/ClusterJobRunner.js +119 -0
  194. package/dist/server/peer/ClusterJobRunner.js.map +1 -0
  195. package/dist/server/peer/ClusterManager.d.ts +149 -0
  196. package/dist/server/peer/ClusterManager.d.ts.map +1 -0
  197. package/dist/server/peer/ClusterManager.js +292 -0
  198. package/dist/server/peer/ClusterManager.js.map +1 -0
  199. package/dist/server/peer/PeerAuthService.d.ts +69 -0
  200. package/dist/server/peer/PeerAuthService.d.ts.map +1 -0
  201. package/dist/server/peer/PeerAuthService.js +208 -0
  202. package/dist/server/peer/PeerAuthService.js.map +1 -0
  203. package/dist/server/peer/PeerReplicator.d.ts +303 -0
  204. package/dist/server/peer/PeerReplicator.d.ts.map +1 -0
  205. package/dist/server/peer/PeerReplicator.js +1071 -0
  206. package/dist/server/peer/PeerReplicator.js.map +1 -0
  207. package/dist/server/peer/clusterHttp.d.ts +113 -0
  208. package/dist/server/peer/clusterHttp.d.ts.map +1 -0
  209. package/dist/server/peer/clusterHttp.js +290 -0
  210. package/dist/server/peer/clusterHttp.js.map +1 -0
  211. package/dist/server/peer/types.d.ts +244 -0
  212. package/dist/server/peer/types.d.ts.map +1 -0
  213. package/dist/server/peer/types.js +189 -0
  214. package/dist/server/peer/types.js.map +1 -0
  215. package/dist/server/rateLimits.d.ts +119 -0
  216. package/dist/server/rateLimits.d.ts.map +1 -0
  217. package/dist/server/rateLimits.js +159 -0
  218. package/dist/server/rateLimits.js.map +1 -0
  219. package/dist/server/serverConfig.d.ts +37 -0
  220. package/dist/server/serverConfig.d.ts.map +1 -0
  221. package/dist/server/serverConfig.js +251 -0
  222. package/dist/server/serverConfig.js.map +1 -0
  223. package/dist/server/timestampProxy.d.ts +129 -0
  224. package/dist/server/timestampProxy.d.ts.map +1 -0
  225. package/dist/server/timestampProxy.js +361 -0
  226. package/dist/server/timestampProxy.js.map +1 -0
  227. package/dist/server/types.d.ts +267 -0
  228. package/dist/server/types.d.ts.map +1 -0
  229. package/dist/server/types.js +56 -0
  230. package/dist/server/types.js.map +1 -0
  231. package/dist/server/validation.d.ts +43 -0
  232. package/dist/server/validation.d.ts.map +1 -0
  233. package/dist/server/validation.js +104 -0
  234. package/dist/server/validation.js.map +1 -0
  235. package/package.json +9 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TenantManager.js","sourceRoot":"","sources":["../../src/server/TenantManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,313 @@
1
+ /**
2
+ * Platform-neutral route handlers of the MindooDB server.
3
+ *
4
+ * Every endpoint of the HTTP API that does not depend on the host runtime —
5
+ * discovery, device discovery, system administration, tenant auth, the sync
6
+ * protocol and the RFC 3161 proxy — is implemented here against
7
+ * {@link ServerRequest}/{@link ServerResponse}. Hosts own the transport: the
8
+ * Node server mounts these handlers on Express with its middleware stack, a
9
+ * serverless host calls them from its `fetch` handler.
10
+ *
11
+ * This module must stay free of Node built-ins; a test bundles it for a
12
+ * neutral platform to keep it that way.
13
+ */
14
+ import { StoreKind } from "../../core/appendonlystores/types";
15
+ import type { TenantManager } from "../TenantManager";
16
+ import { CapabilityMatcher } from "../CapabilityMatcher";
17
+ import type { SystemAdminAuthService } from "../SystemAdminAuth";
18
+ import { type DeviceDiscoveryService } from "../DeviceDiscoveryService";
19
+ import { type ServerConfigRepository } from "../serverConfig";
20
+ import type { SyncChangeEvent } from "../SyncEventBus";
21
+ import type { ServerConfig } from "../types";
22
+ import { type TsaProviderConfig } from "../timestampProxy";
23
+ import { type BackgroundTaskScheduler, type ServerRequest, type ServerResponse, type SyncEventPublisher } from "./types";
24
+ /** Parse a human-readable size string ("5mb", "1024", "100kb") into bytes. */
25
+ export declare function parseBodySizeLimitToBytes(limit: string): number | null;
26
+ /**
27
+ * The parts of peer replication the tenant routes touch. Optional: a host
28
+ * without clustering serves the same API minus mirrors and loop labels.
29
+ */
30
+ export interface ServerClusterHooks {
31
+ /** Mirrors of one tenant, for `/.well-known/mindoodb-cluster`. */
32
+ mirrorsForTenant(tenantId: string): unknown[];
33
+ /** Re-read trusted servers and start/stop replicators accordingly. */
34
+ syncReplicators(): void;
35
+ /**
36
+ * Name of the trusted peer a sync token belongs to, or undefined for a
37
+ * client token. Labels change events so a write that came from a peer is not
38
+ * pushed straight back to it.
39
+ */
40
+ resolvePeerName(token: string): Promise<string | undefined>;
41
+ }
42
+ export interface MindooDBServerCoreOptions {
43
+ tenantManager: TenantManager;
44
+ systemAdminAuth: SystemAdminAuthService;
45
+ capabilityMatcher: CapabilityMatcher;
46
+ deviceDiscovery: DeviceDiscoveryService;
47
+ syncEvents: SyncEventPublisher;
48
+ configRepository: ServerConfigRepository;
49
+ /** Current `config.json`; read on every request so hot reloads take effect. */
50
+ getServerConfig(): ServerConfig;
51
+ /** Hot-swap the config after `PUT /system/config` persisted it. */
52
+ reloadConfig(config: ServerConfig): void;
53
+ /** Upstream TSAs; empty when the timestamp proxy is disabled. */
54
+ tsaProviders: TsaProviderConfig[];
55
+ /** JSON body limit as configured (e.g. "5mb"), advertised to clients. */
56
+ jsonBodyLimit: string;
57
+ /** Allow plain-http and private trusted-server URLs (development). */
58
+ allowInsecureSyncUrls: boolean;
59
+ cluster?: ServerClusterHooks;
60
+ /** Where post-response work goes; defaults to fire-and-forget. */
61
+ runInBackground?: BackgroundTaskScheduler;
62
+ /**
63
+ * Runs after a write to a tenant's `directory` database was accepted.
64
+ * Defaults to executing the purge requests it may carry. A host that keeps
65
+ * other databases elsewhere passes the change on to them instead.
66
+ */
67
+ onDirectoryWrite?: (tenantId: string) => Promise<void>;
68
+ }
69
+ /** Map domain errors to HTTP responses; unknown errors become 500. */
70
+ export declare function errorResponse(error: unknown): ServerResponse;
71
+ /** `event: hello` frame that opens every sync event stream. */
72
+ export declare function formatSyncHelloEvent(): string;
73
+ /**
74
+ * `event: change` frame for a subscriber of `tenantId`/`storeKind`, or null
75
+ * when the event belongs to someone else. Events carry only metadata.
76
+ */
77
+ export declare function formatSyncChangeEvent(subscription: {
78
+ tenantId: string;
79
+ storeKind: string;
80
+ }, event: SyncChangeEvent): string | null;
81
+ /** Comment frame that keeps proxies from closing an idle stream. */
82
+ export declare function formatSyncHeartbeat(now: number): string;
83
+ /** Interval of {@link formatSyncHeartbeat} frames. */
84
+ export declare const SYNC_EVENT_HEARTBEAT_MS = 30000;
85
+ /** Sync endpoints mounted under `/:tenantId/sync/{docs,attachments}/`. */
86
+ export declare const SYNC_ROUTES: readonly [{
87
+ readonly method: "POST";
88
+ readonly name: "findNewEntries";
89
+ }, {
90
+ readonly method: "POST";
91
+ readonly name: "findNewEntriesForDoc";
92
+ }, {
93
+ readonly method: "POST";
94
+ readonly name: "findEntries";
95
+ }, {
96
+ readonly method: "POST";
97
+ readonly name: "scanEntriesSince";
98
+ }, {
99
+ readonly method: "POST";
100
+ readonly name: "getStoreHead";
101
+ }, {
102
+ readonly method: "POST";
103
+ readonly name: "getIdBloomSummary";
104
+ }, {
105
+ readonly method: "POST";
106
+ readonly name: "getCompactionStatus";
107
+ }, {
108
+ readonly method: "GET";
109
+ readonly name: "capabilities";
110
+ }, {
111
+ readonly method: "GET";
112
+ readonly name: "events";
113
+ }, {
114
+ readonly method: "POST";
115
+ readonly name: "getEntries";
116
+ }, {
117
+ readonly method: "POST";
118
+ readonly name: "getEntriesBinary";
119
+ }, {
120
+ readonly method: "POST";
121
+ readonly name: "putEntriesBinary";
122
+ readonly rawBodyType: "application/octet-stream";
123
+ }, {
124
+ readonly method: "POST";
125
+ readonly name: "getEntryMetadata";
126
+ }, {
127
+ readonly method: "POST";
128
+ readonly name: "putEntries";
129
+ }, {
130
+ readonly method: "POST";
131
+ readonly name: "hasEntries";
132
+ }, {
133
+ readonly method: "GET";
134
+ readonly name: "getAllIds";
135
+ }, {
136
+ readonly method: "POST";
137
+ readonly name: "resolveDependencies";
138
+ }, {
139
+ readonly method: "POST";
140
+ readonly name: "planDocumentMaterialization";
141
+ }, {
142
+ readonly method: "POST";
143
+ readonly name: "planDocumentMaterializationBatch";
144
+ }, {
145
+ readonly method: "POST";
146
+ readonly name: "planAttachmentReadByWalkingMetadata";
147
+ }];
148
+ export type SyncRouteName = (typeof SYNC_ROUTES)[number]["name"];
149
+ export declare const SYNC_STORE_KINDS: readonly [StoreKind.docs, StoreKind.attachments];
150
+ export declare class MindooDBServerCore {
151
+ private readonly options;
152
+ private readonly jsonBodyLimitBytes;
153
+ constructor(options: MindooDBServerCoreOptions);
154
+ private get tenantManager();
155
+ private runInBackground;
156
+ getJsonBodyLimit(): {
157
+ limit: string;
158
+ bytes: number | null;
159
+ };
160
+ health(): ServerResponse;
161
+ serverInfo(): ServerResponse;
162
+ /**
163
+ * Mirrors of one tenant, for client failover.
164
+ *
165
+ * Scoped to the tenant in the query on purpose: a client asking about
166
+ * tenant A must not learn which other tenants this server replicates, or
167
+ * to whom. Unauthenticated like the other discovery endpoints — a client
168
+ * needs it precisely when it cannot reach a server to authenticate with.
169
+ */
170
+ clusterMirrors(req: ServerRequest): ServerResponse;
171
+ publicInfosFingerprints(req: ServerRequest): Promise<ServerResponse>;
172
+ deviceChallenge(req: ServerRequest): Promise<ServerResponse>;
173
+ deviceDiscover(req: ServerRequest): Promise<ServerResponse>;
174
+ /**
175
+ * JWT check for /system/* routes (excluding /system/auth/*). Validates the
176
+ * bearer token, then checks capabilities for (method, fullPath, username,
177
+ * publicsignkey). Returns the rejection, or null and sets `req.systemAdmin`.
178
+ *
179
+ * `DELETE /system/tenants/:tenantId` is also allowed when the JWT signing
180
+ * key is that tenant's registered `adminSigningPublicKey` (own-tenant
181
+ * delete). Sub-resources and other tenants stay capability-gated.
182
+ */
183
+ systemAdminGuard(req: ServerRequest, fullPath: string): Promise<ServerResponse | null>;
184
+ /**
185
+ * Owner bypass for deleting the caller's own tenant. Matches only
186
+ * `DELETE /system/tenants/:tenantId` (no sub-resource) and requires the
187
+ * JWT public key to equal that tenant's stored admin signing key.
188
+ */
189
+ private isOwnTenantDeleteAuthorized;
190
+ systemChallenge(req: ServerRequest): Promise<ServerResponse>;
191
+ systemAuthenticate(req: ServerRequest): Promise<ServerResponse>;
192
+ listTenants(): ServerResponse;
193
+ /**
194
+ * Tenant registration is idempotent: re-POSTing with the same tenantId
195
+ * and matching $publicinfos key returns 200 instead of 409.
196
+ */
197
+ registerTenant(req: ServerRequest): Promise<ServerResponse>;
198
+ updateTenant(req: ServerRequest): ServerResponse;
199
+ deleteTenant(req: ServerRequest): Promise<ServerResponse>;
200
+ listTrustedServers(): ServerResponse;
201
+ addTrustedServer(req: ServerRequest): ServerResponse;
202
+ removeTrustedServer(req: ServerRequest): ServerResponse;
203
+ listConfigBackups(): ServerResponse;
204
+ /**
205
+ * `req.params.backupFile` as the host's router decoded it; it is decoded
206
+ * once more here, as the Express server always did.
207
+ */
208
+ getConfigBackup(req: ServerRequest): ServerResponse;
209
+ getConfig(): ServerResponse;
210
+ updateConfig(req: ServerRequest): Promise<ServerResponse>;
211
+ /** Validate the `:tenantId` parameter and reject unknown tenants; sets `req.tenantId`. */
212
+ tenantGuard(req: ServerRequest): ServerResponse | null;
213
+ private formatTenantNotFoundOnServerError;
214
+ /**
215
+ * Resolve the caller of a sync request so the sync limiter can bucket per
216
+ * identity instead of per address.
217
+ *
218
+ * Unlike {@link timestampAuthGuard} this never rejects: the route handlers
219
+ * do their own token validation and own the 401, and this pass only needs
220
+ * to know whose budget to spend. An unverifiable token simply falls back to
221
+ * address-only bucketing — a forged one must not be able to conjure a fresh
222
+ * budget, which is why the token is verified rather than decoded.
223
+ */
224
+ resolveSyncPrincipal(req: ServerRequest): Promise<void>;
225
+ /**
226
+ * Authenticate a timestamp request with the tenant's existing bearer token
227
+ * and record the principal for rate-limit bucketing.
228
+ *
229
+ * The proxy makes outbound requests on the caller's behalf, so it must never
230
+ * be open: unauthenticated it would be a free relay to third-party services.
231
+ */
232
+ timestampAuthGuard(req: ServerRequest): Promise<ServerResponse | null>;
233
+ /**
234
+ * Forward a DER TimeStampReq to a configured TSA and return the DER
235
+ * TimeStampResp verbatim.
236
+ *
237
+ * The server neither parses nor validates the ASN.1: the client checks that
238
+ * the returned token's `messageImprint` matches the digest it sent and that
239
+ * the token chains to a trusted root. That is what reduces a hostile proxy —
240
+ * ours or anyone's — from a forgery risk to a denial-of-service risk.
241
+ */
242
+ timestampRequest(req: ServerRequest): Promise<ServerResponse>;
243
+ challenge(req: ServerRequest): Promise<ServerResponse>;
244
+ authenticate(req: ServerRequest): Promise<ServerResponse>;
245
+ /** Dispatch one of {@link SYNC_ROUTES} for a store kind. */
246
+ sync(name: SyncRouteName, req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
247
+ private serverStore;
248
+ findNewEntries(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
249
+ findNewEntriesForDoc(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
250
+ findEntries(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
251
+ scanEntriesSince(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
252
+ getStoreHead(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
253
+ getIdBloomSummary(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
254
+ getCapabilities(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
255
+ /**
256
+ * SSE live change feed (sync-v5, phase 5).
257
+ *
258
+ * `GET /:tenantId/sync/:storeKind/events` — Bearer-authenticated like every
259
+ * other sync route (fetch-streaming clients can set headers; native
260
+ * EventSource cannot, which is why the SDK uses a fetch reader).
261
+ *
262
+ * The subscribe-time read gate runs via `handleGetCapabilities` against the
263
+ * database given in `?dbId=` (default `directory`, which every tenant member
264
+ * can read): it validates the token and runs the database-open gate. Events
265
+ * carry only `{dbId, storeKind, epoch, maxReceiptOrder}` — metadata, never
266
+ * content. The host keeps the stream open with a heartbeat every 30 s. Token
267
+ * expiry does not tear down an open stream; the events are non-sensitive
268
+ * change hints and a reconnect re-authenticates.
269
+ */
270
+ syncEvents(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
271
+ /**
272
+ * Publish a change event after an accepted putEntries write (sync-v5,
273
+ * phase 5). Fire-and-forget: head lookup failures must never affect the
274
+ * write path.
275
+ */
276
+ private publishSyncChangeEvent;
277
+ /**
278
+ * Work that follows an accepted write: the change event, and for a
279
+ * directory push the purge requests it may carry (docs/accesscontrol.md
280
+ * §13), which physically remove purged history from this server's stores
281
+ * and arm the re-push denylist. Both are fire-and-forget; purge failures
282
+ * are logged and retried on the next directory push.
283
+ */
284
+ private afterAcceptedWrite;
285
+ getCompactionStatus(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
286
+ getEntries(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
287
+ /**
288
+ * Binary variant of getEntries (sync-v5, phase 3): always session-key
289
+ * encrypted, response framed as `application/octet-stream` (see
290
+ * binaryEntryFraming.ts). The request stays JSON (small).
291
+ */
292
+ getEntriesBinary(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
293
+ getEntryMetadata(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
294
+ /**
295
+ * Ingest encrypted entries from a client. The `stage` variable tracks
296
+ * progress through the pipeline so that error logs pinpoint the failing
297
+ * step (token extraction → body parsing → deserialization → storage).
298
+ */
299
+ putEntries(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
300
+ /**
301
+ * Binary variant of putEntries (sync-v5, phase 3). The request body is
302
+ * octet-stream framing; `dbId` travels in the message header JSON because
303
+ * there is no JSON body. Receipts are returned as JSON like putEntries.
304
+ */
305
+ putEntriesBinary(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
306
+ hasEntries(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
307
+ getAllIds(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
308
+ resolveDependencies(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
309
+ planDocumentMaterialization(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
310
+ planDocumentMaterializationBatch(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
311
+ planAttachmentReadByWalkingMetadata(req: ServerRequest, storeKind: StoreKind): Promise<ServerResponse>;
312
+ }
313
+ //# sourceMappingURL=MindooDBServerCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MindooDBServerCore.d.ts","sourceRoot":"","sources":["../../../src/server/http/MindooDBServerCore.ts"],"names":[],"mappings":"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"}