@econ-v1/domain 6.6.0 → 6.10.0

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 (286) hide show
  1. package/dist/errors/index.d.ts +96 -25
  2. package/dist/errors/index.d.ts.map +1 -1
  3. package/dist/events/index.d.ts +127 -20
  4. package/dist/events/index.d.ts.map +1 -1
  5. package/dist/index.d.ts +250 -47
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/models/agent.d.ts +25 -4
  8. package/dist/models/agent.d.ts.map +1 -1
  9. package/dist/models/app-data.d.ts +84 -0
  10. package/dist/models/app-data.d.ts.map +1 -0
  11. package/dist/models/conversation.d.ts +12 -2
  12. package/dist/models/conversation.d.ts.map +1 -1
  13. package/dist/models/delegation.d.ts +12 -3
  14. package/dist/models/delegation.d.ts.map +1 -1
  15. package/dist/models/device-boot-state.d.ts +12 -0
  16. package/dist/models/device-boot-state.d.ts.map +1 -0
  17. package/dist/models/device-identity.d.ts +11 -3
  18. package/dist/models/device-identity.d.ts.map +1 -1
  19. package/dist/models/graph.d.ts +26 -3
  20. package/dist/models/graph.d.ts.map +1 -1
  21. package/dist/models/index.d.ts +82 -14
  22. package/dist/models/index.d.ts.map +1 -1
  23. package/dist/models/json.d.ts +5 -5
  24. package/dist/models/json.d.ts.map +1 -1
  25. package/dist/models/l402.d.ts +4 -5
  26. package/dist/models/l402.d.ts.map +1 -1
  27. package/dist/models/live-query-definition.d.ts +15 -16
  28. package/dist/models/live-query-definition.d.ts.map +1 -1
  29. package/dist/models/node-app-memory.d.ts +107 -0
  30. package/dist/models/node-app-memory.d.ts.map +1 -0
  31. package/dist/models/outbox-intent.d.ts +3 -3
  32. package/dist/models/outbox-intent.d.ts.map +1 -1
  33. package/dist/models/outbox.d.ts +67 -15
  34. package/dist/models/outbox.d.ts.map +1 -1
  35. package/dist/models/owner-views.d.ts +28 -28
  36. package/dist/models/owner-views.d.ts.map +1 -1
  37. package/dist/models/payment.d.ts +28 -9
  38. package/dist/models/payment.d.ts.map +1 -1
  39. package/dist/models/query-diff.d.ts +2 -2
  40. package/dist/models/query-diff.d.ts.map +1 -1
  41. package/dist/models/release-manifest.d.ts +32 -47
  42. package/dist/models/release-manifest.d.ts.map +1 -1
  43. package/dist/models/repository-write.d.ts +3 -3
  44. package/dist/models/repository-write.d.ts.map +1 -1
  45. package/dist/models/revisioned-commands.d.ts +66 -13
  46. package/dist/models/revisioned-commands.d.ts.map +1 -1
  47. package/dist/models/revisioned.d.ts +50 -10
  48. package/dist/models/revisioned.d.ts.map +1 -1
  49. package/dist/models/settings.d.ts +2 -2
  50. package/dist/models/settings.d.ts.map +1 -1
  51. package/dist/models/sync.d.ts +18 -18
  52. package/dist/models/sync.d.ts.map +1 -1
  53. package/dist/models/wallet.d.ts +16 -16
  54. package/dist/models/wallet.d.ts.map +1 -1
  55. package/dist/queries/certificate-trust.d.ts +13 -0
  56. package/dist/queries/certificate-trust.d.ts.map +1 -0
  57. package/dist/queries/conversations.d.ts +38 -7
  58. package/dist/queries/conversations.d.ts.map +1 -1
  59. package/dist/queries/discovery.d.ts +10 -10
  60. package/dist/queries/discovery.d.ts.map +1 -1
  61. package/dist/queries/notifications.d.ts +24 -4
  62. package/dist/queries/notifications.d.ts.map +1 -1
  63. package/dist/queries/onboarding-flow.d.ts +25 -0
  64. package/dist/queries/onboarding-flow.d.ts.map +1 -0
  65. package/dist/queries/onboarding-lcd-screen.d.ts +56 -0
  66. package/dist/queries/onboarding-lcd-screen.d.ts.map +1 -0
  67. package/dist/queries/onboarding-status.d.ts +10 -10
  68. package/dist/queries/onboarding-status.d.ts.map +1 -1
  69. package/dist/queries/revisioned.d.ts +47 -13
  70. package/dist/queries/revisioned.d.ts.map +1 -1
  71. package/dist/queries/wallet.d.ts +40 -10
  72. package/dist/queries/wallet.d.ts.map +1 -1
  73. package/dist/services/abort-signal.d.ts +54 -0
  74. package/dist/services/abort-signal.d.ts.map +1 -0
  75. package/dist/services/certificate-trust-service.d.ts +42 -0
  76. package/dist/services/certificate-trust-service.d.ts.map +1 -0
  77. package/dist/services/conversation-service.d.ts +103 -15
  78. package/dist/services/conversation-service.d.ts.map +1 -1
  79. package/dist/services/conversation-sync.d.ts +9 -5
  80. package/dist/services/conversation-sync.d.ts.map +1 -1
  81. package/dist/services/device-boot-state-service.d.ts +17 -0
  82. package/dist/services/device-boot-state-service.d.ts.map +1 -0
  83. package/dist/services/device-cleanup-service.d.ts +47 -0
  84. package/dist/services/device-cleanup-service.d.ts.map +1 -0
  85. package/dist/services/discovery-probe-service.d.ts +37 -46
  86. package/dist/services/discovery-probe-service.d.ts.map +1 -1
  87. package/dist/services/gossip-service.d.ts +28 -13
  88. package/dist/services/gossip-service.d.ts.map +1 -1
  89. package/dist/services/invite-redemption-service.d.ts +43 -0
  90. package/dist/services/invite-redemption-service.d.ts.map +1 -0
  91. package/dist/services/lan-candidate-refresh-service.d.ts +22 -7
  92. package/dist/services/lan-candidate-refresh-service.d.ts.map +1 -1
  93. package/dist/services/lcd-decision-service.d.ts +58 -0
  94. package/dist/services/lcd-decision-service.d.ts.map +1 -0
  95. package/dist/services/onboarding-checkpoint-store.d.ts +54 -0
  96. package/dist/services/onboarding-checkpoint-store.d.ts.map +1 -0
  97. package/dist/services/onboarding-flow-service.d.ts +180 -0
  98. package/dist/services/onboarding-flow-service.d.ts.map +1 -0
  99. package/dist/services/onboarding-status-service.d.ts +21 -38
  100. package/dist/services/onboarding-status-service.d.ts.map +1 -1
  101. package/dist/services/outbox-service.d.ts +105 -29
  102. package/dist/services/outbox-service.d.ts.map +1 -1
  103. package/dist/services/owner-claim-service.d.ts +187 -0
  104. package/dist/services/owner-claim-service.d.ts.map +1 -0
  105. package/dist/services/owner-view-refresh-service.d.ts +40 -0
  106. package/dist/services/owner-view-refresh-service.d.ts.map +1 -0
  107. package/dist/services/owner-view-service.d.ts +49 -4
  108. package/dist/services/owner-view-service.d.ts.map +1 -1
  109. package/dist/services/peer-directory-service.d.ts +53 -17
  110. package/dist/services/peer-directory-service.d.ts.map +1 -1
  111. package/dist/services/release-manifest-verifier.d.ts +18 -20
  112. package/dist/services/release-manifest-verifier.d.ts.map +1 -1
  113. package/dist/services/revisioned-domain-service.d.ts +50 -17
  114. package/dist/services/revisioned-domain-service.d.ts.map +1 -1
  115. package/dist/services/runtime-globals.d.ts +39 -0
  116. package/dist/services/runtime-globals.d.ts.map +1 -0
  117. package/dist/services/session-service.d.ts +23 -3
  118. package/dist/services/session-service.d.ts.map +1 -1
  119. package/dist/services/sync/authoritative-mirror.d.ts +88 -15
  120. package/dist/services/sync/authoritative-mirror.d.ts.map +1 -1
  121. package/dist/services/sync/index.d.ts +17 -5
  122. package/dist/services/sync/index.d.ts.map +1 -1
  123. package/dist/services/sync/log-sync.d.ts +42 -8
  124. package/dist/services/sync/log-sync.d.ts.map +1 -1
  125. package/dist/services/sync/revision-merge.d.ts +80 -13
  126. package/dist/services/sync/revision-merge.d.ts.map +1 -1
  127. package/dist/services/sync/strategy.d.ts +11 -1
  128. package/dist/services/sync/strategy.d.ts.map +1 -1
  129. package/dist/services/transport-manager.d.ts +84 -29
  130. package/dist/services/transport-manager.d.ts.map +1 -1
  131. package/dist/services/wallet-mirror-service.d.ts +81 -18
  132. package/dist/services/wallet-mirror-service.d.ts.map +1 -1
  133. package/dist/services/wifi-provisioning-service.d.ts +146 -0
  134. package/dist/services/wifi-provisioning-service.d.ts.map +1 -0
  135. package/package.json +18 -12
  136. package/src/errors/index.js +126 -0
  137. package/src/events/index.js +124 -0
  138. package/src/index.js +566 -0
  139. package/src/models/agent.js +43 -0
  140. package/src/models/app-data.js +122 -0
  141. package/src/models/conversation.js +36 -0
  142. package/{dist → src}/models/delegation.js +18 -1
  143. package/src/models/device-boot-state.js +3 -0
  144. package/{dist → src}/models/device-identity.js +18 -2
  145. package/{dist → src}/models/graph.js +30 -3
  146. package/src/models/index.js +175 -0
  147. package/src/models/json.js +18 -0
  148. package/src/models/l402.js +9 -0
  149. package/src/models/live-query-definition.js +30 -0
  150. package/src/models/node-app-memory.js +130 -0
  151. package/src/models/outbox-intent.js +12 -0
  152. package/{dist → src}/models/outbox.js +102 -3
  153. package/src/models/owner-views.js +59 -0
  154. package/src/models/payment.js +24 -0
  155. package/src/models/query-diff.js +7 -0
  156. package/src/models/release-manifest.js +160 -0
  157. package/src/models/repository-write.js +10 -0
  158. package/src/models/revisioned-commands.js +92 -0
  159. package/src/models/revisioned.js +41 -0
  160. package/src/models/settings.js +16 -0
  161. package/src/models/sync.js +44 -0
  162. package/src/models/wallet.js +40 -0
  163. package/src/queries/certificate-trust.js +31 -0
  164. package/{dist → src}/queries/conversations.js +54 -3
  165. package/src/queries/discovery.js +34 -0
  166. package/{dist → src}/queries/notifications.js +25 -2
  167. package/src/queries/onboarding-flow.js +48 -0
  168. package/src/queries/onboarding-lcd-screen.js +100 -0
  169. package/src/queries/onboarding-status.js +34 -0
  170. package/src/queries/revisioned.js +128 -0
  171. package/{dist → src}/queries/wallet.js +35 -1
  172. package/src/services/abort-signal.js +69 -0
  173. package/src/services/certificate-trust-service.js +119 -0
  174. package/{dist → src}/services/conversation-service.js +108 -1
  175. package/src/services/conversation-sync.js +28 -0
  176. package/src/services/device-boot-state-service.js +45 -0
  177. package/src/services/device-cleanup-service.js +112 -0
  178. package/src/services/discovery-probe-service.js +196 -0
  179. package/{dist → src}/services/gossip-service.js +54 -4
  180. package/src/services/invite-redemption-service.js +64 -0
  181. package/src/services/lan-candidate-refresh-service.js +164 -0
  182. package/src/services/lcd-decision-service.js +93 -0
  183. package/src/services/onboarding-checkpoint-store.js +155 -0
  184. package/src/services/onboarding-flow-service.js +1096 -0
  185. package/src/services/onboarding-status-service.js +64 -0
  186. package/{dist → src}/services/outbox-service.js +132 -1
  187. package/src/services/owner-claim-service.js +347 -0
  188. package/src/services/owner-view-refresh-service.js +208 -0
  189. package/src/services/owner-view-service.js +87 -0
  190. package/{dist → src}/services/peer-directory-service.js +72 -3
  191. package/src/services/release-manifest-verifier.js +108 -0
  192. package/{dist → src}/services/revisioned-domain-service.js +189 -9
  193. package/src/services/runtime-globals.js +174 -0
  194. package/src/services/session-service.js +50 -0
  195. package/{dist → src}/services/sync/authoritative-mirror.js +90 -1
  196. package/src/services/sync/index.js +67 -0
  197. package/src/services/sync/log-sync.js +60 -0
  198. package/src/services/sync/revision-merge.js +119 -0
  199. package/src/services/sync/strategy.js +44 -0
  200. package/src/services/transport-manager.js +478 -0
  201. package/{dist → src}/services/wallet-mirror-service.js +226 -6
  202. package/src/services/wifi-provisioning-service.js +278 -0
  203. package/dist/errors/index.js +0 -45
  204. package/dist/errors/index.js.map +0 -1
  205. package/dist/events/index.js +0 -17
  206. package/dist/events/index.js.map +0 -1
  207. package/dist/index.js +0 -31
  208. package/dist/index.js.map +0 -1
  209. package/dist/models/agent.js +0 -17
  210. package/dist/models/agent.js.map +0 -1
  211. package/dist/models/conversation.js +0 -2
  212. package/dist/models/conversation.js.map +0 -1
  213. package/dist/models/delegation.js.map +0 -1
  214. package/dist/models/device-identity.js.map +0 -1
  215. package/dist/models/graph.js.map +0 -1
  216. package/dist/models/index.js +0 -8
  217. package/dist/models/index.js.map +0 -1
  218. package/dist/models/json.js +0 -2
  219. package/dist/models/json.js.map +0 -1
  220. package/dist/models/l402.js +0 -2
  221. package/dist/models/l402.js.map +0 -1
  222. package/dist/models/live-query-definition.js +0 -2
  223. package/dist/models/live-query-definition.js.map +0 -1
  224. package/dist/models/outbox-intent.js +0 -2
  225. package/dist/models/outbox-intent.js.map +0 -1
  226. package/dist/models/outbox.js.map +0 -1
  227. package/dist/models/owner-views.js +0 -7
  228. package/dist/models/owner-views.js.map +0 -1
  229. package/dist/models/payment.js +0 -3
  230. package/dist/models/payment.js.map +0 -1
  231. package/dist/models/query-diff.js +0 -2
  232. package/dist/models/query-diff.js.map +0 -1
  233. package/dist/models/release-manifest.js +0 -147
  234. package/dist/models/release-manifest.js.map +0 -1
  235. package/dist/models/repository-write.js +0 -2
  236. package/dist/models/repository-write.js.map +0 -1
  237. package/dist/models/revisioned-commands.js +0 -35
  238. package/dist/models/revisioned-commands.js.map +0 -1
  239. package/dist/models/revisioned.js +0 -2
  240. package/dist/models/revisioned.js.map +0 -1
  241. package/dist/models/settings.js +0 -2
  242. package/dist/models/settings.js.map +0 -1
  243. package/dist/models/sync.js +0 -2
  244. package/dist/models/sync.js.map +0 -1
  245. package/dist/models/wallet.js +0 -2
  246. package/dist/models/wallet.js.map +0 -1
  247. package/dist/queries/conversations.js.map +0 -1
  248. package/dist/queries/discovery.js +0 -27
  249. package/dist/queries/discovery.js.map +0 -1
  250. package/dist/queries/notifications.js.map +0 -1
  251. package/dist/queries/onboarding-status.js +0 -27
  252. package/dist/queries/onboarding-status.js.map +0 -1
  253. package/dist/queries/revisioned.js +0 -58
  254. package/dist/queries/revisioned.js.map +0 -1
  255. package/dist/queries/wallet.js.map +0 -1
  256. package/dist/services/conversation-service.js.map +0 -1
  257. package/dist/services/conversation-sync.js +0 -9
  258. package/dist/services/conversation-sync.js.map +0 -1
  259. package/dist/services/discovery-probe-service.js +0 -129
  260. package/dist/services/discovery-probe-service.js.map +0 -1
  261. package/dist/services/gossip-service.js.map +0 -1
  262. package/dist/services/lan-candidate-refresh-service.js +0 -79
  263. package/dist/services/lan-candidate-refresh-service.js.map +0 -1
  264. package/dist/services/onboarding-status-service.js +0 -32
  265. package/dist/services/onboarding-status-service.js.map +0 -1
  266. package/dist/services/outbox-service.js.map +0 -1
  267. package/dist/services/owner-view-service.js +0 -21
  268. package/dist/services/owner-view-service.js.map +0 -1
  269. package/dist/services/peer-directory-service.js.map +0 -1
  270. package/dist/services/release-manifest-verifier.js +0 -84
  271. package/dist/services/release-manifest-verifier.js.map +0 -1
  272. package/dist/services/revisioned-domain-service.js.map +0 -1
  273. package/dist/services/session-service.js +0 -20
  274. package/dist/services/session-service.js.map +0 -1
  275. package/dist/services/sync/authoritative-mirror.js.map +0 -1
  276. package/dist/services/sync/index.js +0 -4
  277. package/dist/services/sync/index.js.map +0 -1
  278. package/dist/services/sync/log-sync.js +0 -20
  279. package/dist/services/sync/log-sync.js.map +0 -1
  280. package/dist/services/sync/revision-merge.js +0 -46
  281. package/dist/services/sync/revision-merge.js.map +0 -1
  282. package/dist/services/sync/strategy.js +0 -2
  283. package/dist/services/sync/strategy.js.map +0 -1
  284. package/dist/services/transport-manager.js +0 -234
  285. package/dist/services/transport-manager.js.map +0 -1
  286. package/dist/services/wallet-mirror-service.js.map +0 -1
@@ -1,67 +1,67 @@
1
- export declare const OWNER_VIEW_SYNC_STRATEGIES: {
2
- readonly feeds: "log";
3
- readonly home: "authoritative";
4
- readonly operations: "authoritative";
5
- readonly peers: "log";
6
- };
1
+ export namespace OWNER_VIEW_SYNC_STRATEGIES {
2
+ let feeds: string;
3
+ let home: string;
4
+ let operations: string;
5
+ let peers: string;
6
+ }
7
7
  export type OwnerViewSyncStrategy = (typeof OWNER_VIEW_SYNC_STRATEGIES)[keyof typeof OWNER_VIEW_SYNC_STRATEGIES];
8
8
  export type HomeStatus = "offline" | "online" | "unknown";
9
- export interface HomeSummary {
9
+ export type HomeSummary = {
10
+ readonly cachedAt?: string;
10
11
  readonly displayName: string;
11
12
  readonly homeNodeId: string;
12
13
  readonly lastSyncedAt?: string;
13
14
  readonly status: HomeStatus;
14
- }
15
+ };
15
16
  export type PeerStatus = "offline" | "online" | "unknown";
16
- export interface PeerDirectoryEntry {
17
+ export type PeerDirectoryEntry = {
17
18
  readonly displayName: string;
18
19
  readonly id: string;
19
20
  readonly lastSeenAt?: string;
20
21
  readonly status: PeerStatus;
21
- }
22
- export interface PeerDirectoryQuery {
22
+ };
23
+ export type PeerDirectoryQuery = {
23
24
  readonly limit?: number;
24
25
  readonly status?: PeerStatus;
25
- }
26
+ };
26
27
  export type FeedItemKind = "activity" | "message" | "system";
27
- export interface FeedItem {
28
+ export type FeedItem = {
28
29
  readonly body: string;
29
30
  readonly createdAt: string;
30
31
  readonly id: string;
31
32
  readonly kind: FeedItemKind;
32
33
  readonly read: boolean;
33
34
  readonly title: string;
34
- }
35
- export interface FeedQuery {
35
+ };
36
+ export type FeedQuery = {
36
37
  readonly before?: string;
37
38
  readonly limit?: number;
38
39
  readonly unreadOnly?: boolean;
39
- }
40
+ };
40
41
  export type StorageStatus = "blocked" | "ready" | "recovering";
41
42
  export type SyncStatus = "current" | "stale" | "syncing";
42
43
  export type OperationalTransport = "iroh-relay" | "lan-direct" | "lan-webtransport" | "offline" | "wan-direct" | "webrtc-direct";
43
- export interface OperationalSummary {
44
+ export type OperationalSummary = {
45
+ readonly cachedAt?: string;
44
46
  readonly outboxDepth: number;
45
47
  readonly storage: StorageStatus;
46
48
  readonly sync: SyncStatus;
47
49
  readonly transport: OperationalTransport;
48
- }
50
+ };
49
51
  /**
50
52
  * Owner-facing read views projected from the home node.
51
53
  *
52
- * Contract: implementations MUST NOT depend on the durable, OPFS-backed local SQLite
53
- * cache. This port models "what the home node currently reports", not "what this device
54
- * has persisted", so every method is expected to resolve from in-memory state or a home-
55
- * node round trip. The kernel relies on this to keep the owner-view live queries
56
- * (`home.summary.v1`, `peers.directory.v1`, `feeds.timeline.v1`, `operations.summary.v1`)
57
- * serving in the degraded mode a browser without OPFS forces — see #1661 and
58
- * `LiveQueryDefinition.requiresDurableStorage`. A storage-backed projection belongs
59
- * behind its own repository port, not here.
54
+ * Implementations MUST NOT depend on the durable, OPFS-backed local SQLite
55
+ * cache. This port models what the home node currently reports, so every
56
+ * method resolves from in-memory state or a home-node round trip. The kernel
57
+ * relies on that prohibition to keep owner-view live queries available in
58
+ * degraded mode when a browser cannot provide OPFS. A storage-backed
59
+ * projection belongs behind its own repository port instead.
60
60
  */
61
- export interface OwnerViewRepository {
61
+ export type OwnerViewRepository = {
62
62
  listFeed(params: FeedQuery): Promise<readonly FeedItem[]>;
63
63
  listPeers(params: PeerDirectoryQuery): Promise<readonly PeerDirectoryEntry[]>;
64
64
  readHomeSummary(): Promise<HomeSummary | undefined>;
65
65
  readOperationalSummary(): Promise<OperationalSummary | undefined>;
66
- }
66
+ };
67
67
  //# sourceMappingURL=owner-views.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"owner-views.d.ts","sourceRoot":"","sources":["../../src/models/owner-views.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B;;;;;CAK7B,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,OAAO,0BAA0B,CAAC,CAAC;AAEjH,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE1D,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B;AAED,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;CAC9B;AAED,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE7D,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,YAAY,CAAC;AAC/D,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AACzD,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,YAAY,GAAG,kBAAkB,GAAG,SAAS,GAAG,YAAY,GAAG,eAAe,CAAC;AAEjI,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;CAC1C;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC;IAC1D,SAAS,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC;IAC9E,eAAe,IAAI,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IACpD,sBAAsB,IAAI,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;CACnE"}
1
+ {"version":3,"file":"owner-views.d.ts","sourceRoot":"","sources":["../../src/models/owner-views.js"],"names":[],"mappings":";;;;;;oCAGa,CAAC,OAAO,0BAA0B,EAAE,MAAM,OAAO,0BAA0B,CAAC;yBAG5E,SAAS,GAAG,QAAQ,GAAG,SAAS;0BAGhC;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAAE;yBAGvJ,SAAS,GAAG,QAAQ,GAAG,SAAS;iCAGhC;IAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAAE;iCAGjH;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;CAAE;2BAG1D,UAAU,GAAG,SAAS,GAAG,QAAQ;uBAGjC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAE;wBAGxJ;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAAE;4BAGrF,SAAS,GAAG,OAAO,GAAG,YAAY;yBAGlC,SAAS,GAAG,OAAO,GAAG,SAAS;mCAG/B,YAAY,GAAG,YAAY,GAAG,kBAAkB,GAAG,SAAS,GAAG,YAAY,GAAG,eAAe;iCAG7F;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;CAAE;;;;;;;;;;;kCAYnK;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC;IAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC;IAAC,eAAe,IAAI,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAAC,sBAAsB,IAAI,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;CAAE"}
@@ -1,9 +1,28 @@
1
- export declare const PAYMENT_DIRECTIONS: readonly ["incoming", "outgoing"];
1
+ /**
2
+ * @typedef {(typeof PAYMENT_DIRECTIONS)[number]} PaymentDirection
3
+ */
4
+ /**
5
+ * @typedef {(typeof PAYMENT_STATUSES)[number]} PaymentStatus
6
+ */
7
+ /**
8
+ * @typedef {{ readonly amountMsat: number; readonly createdAt: string; readonly direction: PaymentDirection; readonly failureCode?: string; readonly id: string; readonly paymentHash?: string; readonly status: PaymentStatus; readonly updatedAt: string; }} PaymentRecord
9
+ */
10
+ /**
11
+ * @typedef {{ readonly amountMsat: number; readonly invoiceId: string; readonly kind: "invoice-created"; readonly paymentHash?: string; readonly paymentRequest: string; readonly status: "created"; }} InvoiceCreatedResult
12
+ */
13
+ /**
14
+ * @typedef {{ readonly amountMsat: number; readonly kind: "payment-submitted"; readonly paymentHash?: string; readonly paymentId: string; readonly status: Exclude<PaymentStatus, "expired">; }} PaymentSubmittedResult
15
+ */
16
+ /**
17
+ * @typedef {InvoiceCreatedResult | PaymentSubmittedResult} WalletCommandResult
18
+ */
19
+ /** @type {readonly ["incoming", "outgoing"]} */
20
+ export const PAYMENT_DIRECTIONS: readonly ["incoming", "outgoing"];
21
+ /** @type {readonly ["pending", "succeeded", "failed", "expired"]} */
22
+ export const PAYMENT_STATUSES: readonly ["pending", "succeeded", "failed", "expired"];
2
23
  export type PaymentDirection = (typeof PAYMENT_DIRECTIONS)[number];
3
- export declare const PAYMENT_STATUSES: readonly ["pending", "succeeded", "failed", "expired"];
4
24
  export type PaymentStatus = (typeof PAYMENT_STATUSES)[number];
5
- /** Safe payment metadata. Invoice requests, preimages, and macaroons are not mirrored here. */
6
- export interface PaymentRecord {
25
+ export type PaymentRecord = {
7
26
  readonly amountMsat: number;
8
27
  readonly createdAt: string;
9
28
  readonly direction: PaymentDirection;
@@ -12,21 +31,21 @@ export interface PaymentRecord {
12
31
  readonly paymentHash?: string;
13
32
  readonly status: PaymentStatus;
14
33
  readonly updatedAt: string;
15
- }
16
- export interface InvoiceCreatedResult {
34
+ };
35
+ export type InvoiceCreatedResult = {
17
36
  readonly amountMsat: number;
18
37
  readonly invoiceId: string;
19
38
  readonly kind: "invoice-created";
20
39
  readonly paymentHash?: string;
21
40
  readonly paymentRequest: string;
22
41
  readonly status: "created";
23
- }
24
- export interface PaymentSubmittedResult {
42
+ };
43
+ export type PaymentSubmittedResult = {
25
44
  readonly amountMsat: number;
26
45
  readonly kind: "payment-submitted";
27
46
  readonly paymentHash?: string;
28
47
  readonly paymentId: string;
29
48
  readonly status: Exclude<PaymentStatus, "expired">;
30
- }
49
+ };
31
50
  export type WalletCommandResult = InvoiceCreatedResult | PaymentSubmittedResult;
32
51
  //# sourceMappingURL=payment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../src/models/payment.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,mCAAoC,CAAC;AACpE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,eAAO,MAAM,gBAAgB,wDAAyD,CAAC;AACvF,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,+FAA+F;AAC/F,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;CACpD;AAED,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,GAAG,sBAAsB,CAAC"}
1
+ {"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../src/models/payment.js"],"names":[],"mappings":"AAEA;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH,gDAAgD;AAChD,iCADW,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,CACe;AAC3D,qEAAqE;AACrE,+BADW,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CACa;+BApBjE,CAAC,OAAO,kBAAkB,EAAE,MAAM,CAAC;4BAGnC,CAAC,OAAO,gBAAgB,EAAE,MAAM,CAAC;4BAGjC;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAAE;mCAGjP;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;CAAE;qCAG1L;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;CAAE;kCAGnL,oBAAoB,GAAG,sBAAsB"}
@@ -1,7 +1,7 @@
1
- export interface QueryDiff<TRow> {
1
+ export type QueryDiff<TRow> = {
2
2
  readonly added: readonly TRow[];
3
3
  readonly deleted: readonly TRow[];
4
4
  readonly revision: number;
5
5
  readonly updated: readonly TRow[];
6
- }
6
+ };
7
7
  //# sourceMappingURL=query-diff.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-diff.d.ts","sourceRoot":"","sources":["../../src/models/query-diff.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS,CAAC,IAAI;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;CACnC"}
1
+ {"version":3,"file":"query-diff.d.ts","sourceRoot":"","sources":["../../src/models/query-diff.js"],"names":[],"mappings":"sBAGa,IAAI,IACJ;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;CAAE"}
@@ -1,40 +1,37 @@
1
- import type { JsonObject } from "./json.js";
1
+ /** @typedef {{ readonly sha256: string, readonly url: string }} ReleaseManifestAsset */
2
+ /** @typedef {{ readonly max: number, readonly min: number }} ReleaseManifestVersionRange */
3
+ /** @typedef {{ readonly buildId: string, readonly channel: string, readonly issuedAtMs: number, readonly manifestVersion: 1, readonly protocolCompatibility: ReleaseManifestVersionRange, readonly shellAssets: readonly ReleaseManifestAsset[], readonly shellVersion: string, readonly signingKeyId: string, readonly storageSchemaCompatibility: ReleaseManifestVersionRange }} UnsignedReleaseManifest */
4
+ /** @typedef {UnsignedReleaseManifest & { readonly signature: string }} SignedReleaseManifest */
2
5
  /**
3
- * The #1815 Phase 1 trusted signed release-manifest contract (gap-audit §3 "Phase 1";
4
- * lifecycle spec §9 "PWA Release and Rollback Contract"). This is the wire shape a build
5
- * signs (`system/pwa/scripts/build-service-worker.mjs`) and a client verifies
6
- * (`release-manifest-verifier.ts`) before the existing staged-cache pipeline
7
- * (`client/adapters-web/src/cache/service-worker-runtime.ts`) is allowed to promote a new
8
- * shell. Every bound below exists so a malformed/oversized candidate is rejected before any
9
- * expensive work (signature check, asset download) runs on it.
6
+ * @param {UnsignedReleaseManifest} manifest
7
+ * @returns {JsonObject}
10
8
  */
11
- export declare const RELEASE_MANIFEST_VERSION = 1;
12
- /** Bounds enforced by `parseSignedReleaseManifest` — kept alongside the shape they guard. */
13
- export declare const RELEASE_MANIFEST_LIMITS: {
14
- readonly maxBuildIdLength: 128;
15
- readonly maxChannelLength: 64;
16
- readonly maxShellAssetUrlLength: 2048;
17
- readonly maxShellAssets: 4096;
18
- readonly maxShellVersionLength: 64;
19
- readonly maxSigningKeyIdLength: 128;
20
- readonly maxVersionValue: 1000000;
21
- };
22
- export interface ReleaseManifestAsset {
9
+ export function unsignedReleaseManifestToJson(manifest: UnsignedReleaseManifest): JsonObject;
10
+ /**
11
+ * @param {unknown} candidate
12
+ * @returns {SignedReleaseManifest | undefined}
13
+ */
14
+ export function parseSignedReleaseManifest(candidate: unknown): SignedReleaseManifest | undefined;
15
+ /** @typedef {import("./json.js").JsonObject} JsonObject */
16
+ export const RELEASE_MANIFEST_VERSION: 1;
17
+ export namespace RELEASE_MANIFEST_LIMITS {
18
+ let maxBuildIdLength: number;
19
+ let maxChannelLength: number;
20
+ let maxShellAssetUrlLength: number;
21
+ let maxShellAssets: number;
22
+ let maxShellVersionLength: number;
23
+ let maxSigningKeyIdLength: number;
24
+ let maxVersionValue: number;
25
+ }
26
+ export type ReleaseManifestAsset = {
23
27
  readonly sha256: string;
24
28
  readonly url: string;
25
- }
26
- /** An inclusive `[min, max]` compatibility range for an integer version counter (protocol
27
- * version or storage schema version — both are plain incrementing integers elsewhere in the
28
- * client, see `client/adapters-web/src/storage/migrator.ts`'s `SqliteMigration.version`). */
29
- export interface ReleaseManifestVersionRange {
29
+ };
30
+ export type ReleaseManifestVersionRange = {
30
31
  readonly max: number;
31
32
  readonly min: number;
32
- }
33
- /** Every field EXCEPT `signature` — exactly what gets canonicalized and signed. Keeping this
34
- * as its own type (rather than `Omit<SignedReleaseManifest, "signature">` inline everywhere)
35
- * makes it impossible to accidentally feed the signature itself into the canonicalized
36
- * payload it is supposed to attest to. */
37
- export interface UnsignedReleaseManifest {
33
+ };
34
+ export type UnsignedReleaseManifest = {
38
35
  readonly buildId: string;
39
36
  readonly channel: string;
40
37
  readonly issuedAtMs: number;
@@ -44,21 +41,9 @@ export interface UnsignedReleaseManifest {
44
41
  readonly shellVersion: string;
45
42
  readonly signingKeyId: string;
46
43
  readonly storageSchemaCompatibility: ReleaseManifestVersionRange;
47
- }
48
- export interface SignedReleaseManifest extends UnsignedReleaseManifest {
49
- /** Lowercase-hex-encoded 64-byte Ed25519 signature over
50
- * `canonicalOutboxPayload(unsignedReleaseManifestToJson(this))`. */
44
+ };
45
+ export type SignedReleaseManifest = UnsignedReleaseManifest & {
51
46
  readonly signature: string;
52
- }
53
- /** Converts to the `JsonValue`-typed shape `canonicalOutboxPayload` (reused from
54
- * `outbox.ts` — the client's one canonical-JSON implementation) can walk. Field order here
55
- * is irrelevant: `canonicalOutboxPayload` sorts object keys itself. */
56
- export declare function unsignedReleaseManifestToJson(manifest: UnsignedReleaseManifest): JsonObject;
57
- /**
58
- * Bounded, fail-closed structural validation of an `unknown` candidate (JSON-parsed from
59
- * the network or handed in directly). Returns `undefined` for anything that doesn't match
60
- * the exact shape/bounds — callers surface that as the `"malformed"` verification reason.
61
- * Never throws.
62
- */
63
- export declare function parseSignedReleaseManifest(candidate: unknown): SignedReleaseManifest | undefined;
47
+ };
48
+ export type JsonObject = import("./json.js").JsonObject;
64
49
  //# sourceMappingURL=release-manifest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"release-manifest.d.ts","sourceRoot":"","sources":["../../src/models/release-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C;;;;;;;;GAQG;AAEH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,6FAA6F;AAC7F,eAAO,MAAM,uBAAuB;;;;;;;;CAQ1B,CAAC;AAEX,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;6FAE6F;AAC7F,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;0CAG0C;AAC1C,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;IAC5B,QAAQ,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;IAC5D,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACtD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;CAClE;AAED,MAAM,WAAW,qBAAsB,SAAQ,uBAAuB;IACpE;wEACoE;IACpE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED;;uEAEuE;AACvE,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,uBAAuB,GAAG,UAAU,CAkB3F;AAMD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,OAAO,GAAG,qBAAqB,GAAG,SAAS,CAgDhG"}
1
+ {"version":3,"file":"release-manifest.d.ts","sourceRoot":"","sources":["../../src/models/release-manifest.js"],"names":[],"mappings":"AAgBA,wFAAwF;AACxF,4FAA4F;AAC5F,8YAA8Y;AAC9Y,gGAAgG;AAEhG;;;GAGG;AACH,wDAHW,uBAAuB,GACrB,UAAU,CAoBtB;AAMD;;;GAGG;AACH,sDAHW,OAAO,GACL,qBAAqB,GAAG,SAAS,CAkD7C;AAnGD,2DAA2D;AAE3D,uCAAwC,CAAC,CAAC;;;;;;;;;;mCAY5B;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE;0CACjD;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE;sCAC9C;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,0BAA0B,EAAE,2BAA2B,CAAA;CAAE;oCACpW,uBAAuB,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE;yBAjBxD,OAAO,WAAW,EAAE,UAAU"}
@@ -1,7 +1,7 @@
1
- import type { DomainEvent } from "../events/index.js";
2
- export interface RepositoryWrite<TEvent extends DomainEvent> {
1
+ export type DomainEvent = import("../events/index.js").DomainEvent;
2
+ export type RepositoryWrite<TEvent extends DomainEvent> = {
3
3
  commit(): Promise<{
4
4
  readonly events: readonly TEvent[];
5
5
  }>;
6
- }
6
+ };
7
7
  //# sourceMappingURL=repository-write.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository-write.d.ts","sourceRoot":"","sources":["../../src/models/repository-write.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,WAAW,eAAe,CAAC,MAAM,SAAS,WAAW;IACzD,MAAM,IAAI,OAAO,CAAC;QAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CAC3D"}
1
+ {"version":3,"file":"repository-write.d.ts","sourceRoot":"","sources":["../../src/models/repository-write.js"],"names":[],"mappings":"0BAGa,OAAO,oBAAoB,EAAE,WAAW;4BAG1B,MAAM,SAAnB,WAAY,IACb;IAAE,MAAM,IAAI,OAAO,CAAC;QAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CAAE"}
@@ -1,24 +1,77 @@
1
- import type { AgentValue } from "./agent.js";
2
- import type { GraphValue } from "./graph.js";
3
- import type { JsonValue } from "./json.js";
4
- import type { RevisionCommand, RevisionResolution, RevisionedDomain } from "./revisioned.js";
5
- export declare const REVISIONED_COMMAND_NAMES: readonly ["agents.update.v1", "graphs.update.v1", "settings.update.v1", "sync.revision-conflict.resolve.v1"];
1
+ /**
2
+ * @template {JsonValue} TValue
3
+ * @param {RevisionedDomain} domain
4
+ * @param {RevisionCommand<TValue>} payload
5
+ * @returns {RevisionUpdateCommand<TValue>}
6
+ */
7
+ export function createRevisionedUpdateCommand<TValue extends JsonValue>(domain: RevisionedDomain, payload: RevisionCommand<TValue>): RevisionUpdateCommand<TValue>;
8
+ /**
9
+ * @param {RevisionCommand<AgentValue>} payload
10
+ * @returns {RevisionUpdateCommand<AgentValue>}
11
+ */
12
+ export function createAgentUpdateCommand(payload: RevisionCommand<AgentValue>): RevisionUpdateCommand<AgentValue>;
13
+ /**
14
+ * @param {RevisionCommand<GraphValue>} payload
15
+ * @returns {RevisionUpdateCommand<GraphValue>}
16
+ */
17
+ export function createGraphUpdateCommand(payload: RevisionCommand<GraphValue>): RevisionUpdateCommand<GraphValue>;
18
+ /**
19
+ * @param {ResolveRevisionConflictCommand["payload"]} payload
20
+ * @returns {ResolveRevisionConflictCommand}
21
+ */
22
+ export function createResolveRevisionConflictCommand(payload: ResolveRevisionConflictCommand["payload"]): ResolveRevisionConflictCommand;
23
+ /**
24
+ * @typedef {import("./agent.js").AgentValue} AgentValue
25
+ */
26
+ /**
27
+ * @typedef {import("./graph.js").GraphValue} GraphValue
28
+ */
29
+ /**
30
+ * @typedef {import("./json.js").JsonValue} JsonValue
31
+ */
32
+ /**
33
+ * @template {JsonValue} TValue
34
+ * @typedef {import("./revisioned.js").RevisionCommand<TValue>} RevisionCommand
35
+ */
36
+ /**
37
+ * @typedef {import("./revisioned.js").RevisionResolution} RevisionResolution
38
+ */
39
+ /**
40
+ * @typedef {import("./revisioned.js").RevisionedDomain} RevisionedDomain
41
+ */
42
+ /**
43
+ * @typedef {(typeof REVISIONED_COMMAND_NAMES)[number]} RevisionedCommandName
44
+ */
45
+ /**
46
+ * @typedef {Exclude<RevisionedCommandName, "sync.revision-conflict.resolve.v1">} RevisionUpdateCommandName
47
+ */
48
+ /**
49
+ * @template {JsonValue} [TValue=import("./json.js").JsonValue]
50
+ * @typedef {{ readonly name: RevisionUpdateCommandName; readonly payload: RevisionCommand<TValue>; }} RevisionUpdateCommand
51
+ */
52
+ /**
53
+ * @typedef {{ readonly name: "sync.revision-conflict.resolve.v1"; readonly payload: { readonly conflictId: string; readonly idempotencyKey: string; readonly resolution: RevisionResolution; }; }} ResolveRevisionConflictCommand
54
+ */
55
+ /** @type {readonly ["agents.update.v1", "graphs.update.v1", "settings.update.v1", "sync.revision-conflict.resolve.v1"]} */
56
+ export const REVISIONED_COMMAND_NAMES: readonly ["agents.update.v1", "graphs.update.v1", "settings.update.v1", "sync.revision-conflict.resolve.v1"];
57
+ export type AgentValue = import("./agent.js").AgentValue;
58
+ export type GraphValue = import("./graph.js").GraphValue;
59
+ export type JsonValue = import("./json.js").JsonValue;
60
+ export type RevisionCommand<TValue extends JsonValue> = import("./revisioned.js").RevisionCommand<TValue>;
61
+ export type RevisionResolution = import("./revisioned.js").RevisionResolution;
62
+ export type RevisionedDomain = import("./revisioned.js").RevisionedDomain;
6
63
  export type RevisionedCommandName = (typeof REVISIONED_COMMAND_NAMES)[number];
7
64
  export type RevisionUpdateCommandName = Exclude<RevisionedCommandName, "sync.revision-conflict.resolve.v1">;
8
- export interface RevisionUpdateCommand<TValue extends JsonValue = JsonValue> {
65
+ export type RevisionUpdateCommand<TValue extends JsonValue = import("./json.js").JsonValue> = {
9
66
  readonly name: RevisionUpdateCommandName;
10
67
  readonly payload: RevisionCommand<TValue>;
11
- }
12
- export interface ResolveRevisionConflictCommand {
68
+ };
69
+ export type ResolveRevisionConflictCommand = {
13
70
  readonly name: "sync.revision-conflict.resolve.v1";
14
71
  readonly payload: {
15
72
  readonly conflictId: string;
16
73
  readonly idempotencyKey: string;
17
74
  readonly resolution: RevisionResolution;
18
75
  };
19
- }
20
- export declare function createRevisionedUpdateCommand<TValue extends JsonValue>(domain: RevisionedDomain, payload: RevisionCommand<TValue>): RevisionUpdateCommand<TValue>;
21
- export declare function createAgentUpdateCommand(payload: RevisionCommand<AgentValue>): RevisionUpdateCommand<AgentValue>;
22
- export declare function createGraphUpdateCommand(payload: RevisionCommand<GraphValue>): RevisionUpdateCommand<GraphValue>;
23
- export declare function createResolveRevisionConflictCommand(payload: ResolveRevisionConflictCommand["payload"]): ResolveRevisionConflictCommand;
76
+ };
24
77
  //# sourceMappingURL=revisioned-commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"revisioned-commands.d.ts","sourceRoot":"","sources":["../../src/models/revisioned-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE7F,eAAO,MAAM,wBAAwB,8GAK3B,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC9E,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,qBAAqB,EAAE,mCAAmC,CAAC,CAAC;AAE5G,MAAM,WAAW,qBAAqB,CAAC,MAAM,SAAS,SAAS,GAAG,SAAS;IACzE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IACzC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,IAAI,EAAE,mCAAmC,CAAC;IACnD,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAChC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;KACzC,CAAC;CACH;AAED,wBAAgB,6BAA6B,CAAC,MAAM,SAAS,SAAS,EACpE,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,GAC/B,qBAAqB,CAAC,MAAM,CAAC,CAK/B;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,eAAe,CAAC,UAAU,CAAC,GACnC,qBAAqB,CAAC,UAAU,CAAC,CAEnC;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,eAAe,CAAC,UAAU,CAAC,GACnC,qBAAqB,CAAC,UAAU,CAAC,CAEnC;AAED,wBAAgB,oCAAoC,CAAC,OAAO,EAAE,8BAA8B,CAAC,SAAS,CAAC,GAAG,8BAA8B,CAQvI"}
1
+ {"version":3,"file":"revisioned-commands.d.ts","sourceRoot":"","sources":["../../src/models/revisioned-commands.js"],"names":[],"mappings":"AAyCA;;;;;GAKG;AACH,8CALyB,MAAM,SAAjB,SAAU,UACb,gBAAgB,WAChB,eAAe,CAAC,MAAM,CAAC,GACrB,qBAAqB,CAAC,MAAM,CAAC,CAOzC;AACD;;;GAGG;AACH,kDAHW,eAAe,CAAC,UAAU,CAAC,GACzB,qBAAqB,CAAC,UAAU,CAAC,CAI7C;AACD;;;GAGG;AACH,kDAHW,eAAe,CAAC,UAAU,CAAC,GACzB,qBAAqB,CAAC,UAAU,CAAC,CAI7C;AACD;;;GAGG;AACH,8DAHW,8BAA8B,CAAC,SAAS,CAAC,GACvC,8BAA8B,CAU1C;AA7ED;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;;GAGG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;;GAGG;AACH;;GAEG;AACH,2HAA2H;AAC3H,uCADW,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,mCAAmC,CAAC,CAMrH;yBArCW,OAAO,YAAY,EAAE,UAAU;yBAG/B,OAAO,YAAY,EAAE,UAAU;wBAG/B,OAAO,WAAW,EAAE,SAAS;4BAGjB,MAAM,SAAjB,SAAU,IACX,OAAO,iBAAiB,EAAE,eAAe,CAAC,MAAM,CAAC;iCAGjD,OAAO,iBAAiB,EAAE,kBAAkB;+BAG5C,OAAO,iBAAiB,EAAE,gBAAgB;oCAG1C,CAAC,OAAO,wBAAwB,EAAE,MAAM,CAAC;wCAGzC,OAAO,CAAC,qBAAqB,EAAE,mCAAmC,CAAC;kCAGtD,MAAM,SAAlB,SAAU,oCACX;IAAE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;CAAE;6CAGxF;IAAE,QAAQ,CAAC,IAAI,EAAE,mCAAmC,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;KAAE,CAAC;CAAE"}
@@ -1,19 +1,59 @@
1
- import type { JsonValue } from "./json.js";
2
- import type { RevisionConflict, RevisionIntent } from "./sync.js";
3
- export declare const REVISIONED_DOMAINS: readonly ["agent", "settings", "graph"];
1
+ /**
2
+ * @typedef {import("./json.js").JsonValue} JsonValue
3
+ */
4
+ /**
5
+ * @template TValue
6
+ * @typedef {import("./sync.js").RevisionConflict<TValue>} RevisionConflict
7
+ */
8
+ /**
9
+ * @template TValue
10
+ * @typedef {import("./sync.js").RevisionIntent<TValue>} RevisionIntent
11
+ */
12
+ /**
13
+ * @typedef {(typeof REVISIONED_DOMAINS)[number]} RevisionedDomain
14
+ */
15
+ /**
16
+ * @template {JsonValue} TValue
17
+ * @typedef {RevisionIntent<TValue> & { readonly idempotencyKey: string; }} RevisionCommand
18
+ */
19
+ /**
20
+ * @template {JsonValue} TValue
21
+ * @typedef {RevisionConflict<TValue> & { readonly conflictId: string; readonly createdAt: string; readonly domain: RevisionedDomain; readonly idempotencyKey: string; }} RevisionConflictRecord
22
+ */
23
+ /**
24
+ * @template {JsonValue} TValue
25
+ * @typedef {RevisionConflictRecord<TValue> & { readonly kind: "revision-conflict.v1"; }} RevisionConflictPayload
26
+ */
27
+ /**
28
+ * @typedef {"mine" | "theirs"} RevisionResolution
29
+ */
30
+ /**
31
+ * @template TValue
32
+ * @typedef {import("./sync.js").RevisionCommandResult<TValue>} RevisionCommandResult
33
+ */
34
+ /**
35
+ * @template TValue
36
+ * @typedef {import("./sync.js").RevisionEntity<TValue>} RevisionEntity
37
+ */
38
+ /** @type {readonly ["agent", "settings", "graph"]} */
39
+ export const REVISIONED_DOMAINS: readonly ["agent", "settings", "graph"];
40
+ export type JsonValue = import("./json.js").JsonValue;
41
+ export type RevisionConflict<TValue> = import("./sync.js").RevisionConflict<TValue>;
42
+ export type RevisionIntent<TValue> = import("./sync.js").RevisionIntent<TValue>;
4
43
  export type RevisionedDomain = (typeof REVISIONED_DOMAINS)[number];
5
- export interface RevisionCommand<TValue extends JsonValue> extends RevisionIntent<TValue> {
44
+ export type RevisionCommand<TValue extends JsonValue> = RevisionIntent<TValue> & {
6
45
  readonly idempotencyKey: string;
7
- }
8
- export interface RevisionConflictRecord<TValue extends JsonValue> extends RevisionConflict<TValue> {
46
+ };
47
+ export type RevisionConflictRecord<TValue extends JsonValue> = RevisionConflict<TValue> & {
9
48
  readonly conflictId: string;
10
49
  readonly createdAt: string;
11
50
  readonly domain: RevisionedDomain;
12
51
  readonly idempotencyKey: string;
13
- }
14
- export interface RevisionConflictPayload<TValue extends JsonValue> extends RevisionConflictRecord<TValue> {
52
+ };
53
+ export type RevisionConflictPayload<TValue extends JsonValue> = RevisionConflictRecord<TValue> & {
15
54
  readonly kind: "revision-conflict.v1";
16
- }
55
+ };
17
56
  export type RevisionResolution = "mine" | "theirs";
18
- export type { RevisionCommandResult, RevisionConflict, RevisionEntity, RevisionIntent, } from "./sync.js";
57
+ export type RevisionCommandResult<TValue> = import("./sync.js").RevisionCommandResult<TValue>;
58
+ export type RevisionEntity<TValue> = import("./sync.js").RevisionEntity<TValue>;
19
59
  //# sourceMappingURL=revisioned.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"revisioned.d.ts","sourceRoot":"","sources":["../../src/models/revisioned.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAElE,eAAO,MAAM,kBAAkB,yCAA0C,CAAC;AAC1E,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,MAAM,WAAW,eAAe,CAAC,MAAM,SAAS,SAAS,CAAE,SAAQ,cAAc,CAAC,MAAM,CAAC;IACvF,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,sBAAsB,CAAC,MAAM,SAAS,SAAS,CAAE,SAAQ,gBAAgB,CAAC,MAAM,CAAC;IAChG,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,uBAAuB,CAAC,MAAM,SAAS,SAAS,CAAE,SAAQ,sBAAsB,CAAC,MAAM,CAAC;IACvG,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;CACvC;AAED,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnD,YAAY,EACV,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,cAAc,GACf,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"revisioned.d.ts","sourceRoot":"","sources":["../../src/models/revisioned.js"],"names":[],"mappings":"AAEA;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH,sDAAsD;AACtD,iCADW,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CACe;wBArCpD,OAAO,WAAW,EAAE,SAAS;6BAG7B,MAAM,IACN,OAAO,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC;2BAG5C,MAAM,IACN,OAAO,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC;+BAG1C,CAAC,OAAO,kBAAkB,EAAE,MAAM,CAAC;4BAGvB,MAAM,SAAjB,SAAU,IACX,cAAc,CAAC,MAAM,CAAC,GAAG;IAAE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CAAE;mCAGjD,MAAM,SAAjB,SAAU,IACX,gBAAgB,CAAC,MAAM,CAAC,GAAG;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CAAE;oCAG/I,MAAM,SAAjB,SAAU,IACX,sBAAsB,CAAC,MAAM,CAAC,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;CAAE;iCAG3E,MAAM,GAAG,QAAQ;kCAGjB,MAAM,IACN,OAAO,WAAW,EAAE,qBAAqB,CAAC,MAAM,CAAC;2BAGjD,MAAM,IACN,OAAO,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { JsonValue } from "./json.js";
2
- import type { RevisionEntity } from "./sync.js";
1
+ export type JsonValue = import("./json.js").JsonValue;
2
+ export type RevisionEntity<TValue> = import("./sync.js").RevisionEntity<TValue>;
3
3
  export type SettingValue = JsonValue;
4
4
  export type RevisionedSetting = RevisionEntity<SettingValue>;
5
5
  //# sourceMappingURL=settings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/models/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEhD,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC;AACrC,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/models/settings.js"],"names":[],"mappings":"wBAGa,OAAO,WAAW,EAAE,SAAS;2BAG7B,MAAM,IACN,OAAO,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC;2BAG1C,SAAS;gCAGT,cAAc,CAAC,YAAY,CAAC"}
@@ -1,36 +1,36 @@
1
1
  export type SyncStrategyKind = "authoritative-mirror" | "log" | "revision-merge";
2
- export interface SyncDelta<TPayload> {
2
+ export type SyncDelta<TPayload> = {
3
3
  readonly cursor: string;
4
4
  readonly id: string;
5
5
  readonly payload: TPayload;
6
- }
7
- export interface SyncDeltaContext {
6
+ };
7
+ export type SyncDeltaContext = {
8
8
  readonly domain: string;
9
9
  readonly now: string;
10
- }
11
- export interface SyncApplyResult {
10
+ };
11
+ export type SyncApplyResult = {
12
12
  readonly applied: boolean;
13
- }
14
- export interface SyncStrategy<TPayload> {
13
+ };
14
+ export type SyncStrategy<TPayload> = {
15
15
  readonly kind: SyncStrategyKind;
16
16
  applyDelta(delta: SyncDelta<TPayload>, context: SyncDeltaContext): Promise<SyncApplyResult>;
17
- }
18
- export interface RevisionEntity<TValue> {
17
+ };
18
+ export type RevisionEntity<TValue> = {
19
19
  readonly id: string;
20
20
  readonly rev: number;
21
21
  readonly value: TValue;
22
- }
23
- export interface RevisionIntent<TValue> {
22
+ };
23
+ export type RevisionIntent<TValue> = {
24
24
  readonly baseRev: number;
25
25
  readonly id: string;
26
26
  readonly value: TValue;
27
- }
28
- export interface RevisionConflict<TValue> {
27
+ };
28
+ export type RevisionConflict<TValue> = {
29
29
  readonly baseRev: number;
30
30
  readonly id: string;
31
31
  readonly mine: TValue;
32
32
  readonly theirs: RevisionEntity<TValue>;
33
- }
33
+ };
34
34
  export type RevisionCommandResult<TValue> = {
35
35
  readonly entity: RevisionEntity<TValue>;
36
36
  readonly status: "accepted";
@@ -38,13 +38,13 @@ export type RevisionCommandResult<TValue> = {
38
38
  readonly status: "conflict";
39
39
  readonly theirs: RevisionEntity<TValue>;
40
40
  };
41
- export interface AuthoritativeSnapshot<TValue> {
41
+ export type AuthoritativeSnapshot<TValue> = {
42
42
  readonly observedAt: string;
43
43
  readonly staleAt: string;
44
44
  readonly value: TValue;
45
- }
46
- export interface AuthoritativeCommand<TPayload> {
45
+ };
46
+ export type AuthoritativeCommand<TPayload> = {
47
47
  readonly idempotencyKey: string;
48
48
  readonly payload: TPayload;
49
- }
49
+ };
50
50
  //# sourceMappingURL=sync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/models/sync.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,KAAK,GAAG,gBAAgB,CAAC;AAEjF,MAAM,WAAW,SAAS,CAAC,QAAQ;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY,CAAC,QAAQ;IACpC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAC7F;AAED,MAAM,WAAW,cAAc,CAAC,MAAM;IACpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,cAAc,CAAC,MAAM;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB,CAAC,MAAM;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,MAAM,qBAAqB,CAAC,MAAM,IACpC;IAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GACxE;IAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAAE,CAAC;AAE7E,MAAM,WAAW,qBAAqB,CAAC,MAAM;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB,CAAC,QAAQ;IAC5C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAC5B"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/models/sync.js"],"names":[],"mappings":"+BAGa,sBAAsB,GAAG,KAAK,GAAG,gBAAgB;sBAGjD,QAAQ,IACR;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAAE;+BAG7E;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CAAE;8BAGlD;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAAE;yBAG9B,QAAQ,IACR;IAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAAE;2BAGjI,MAAM,IACN;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAE;2BAGtE,MAAM,IACN;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAE;6BAG1E,MAAM,IACN;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;CAAE;kCAGlH,MAAM,IACJ;IAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAAE;kCAGrJ,MAAM,IACN;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAE;iCAGlF,QAAQ,IACR;IAAE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAAE"}