@unwanted/matrix-sdk-mini 34.12.0-2 → 34.12.0-4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (492) hide show
  1. package/git-revision.txt +1 -1
  2. package/lib/@types/global.d.js +0 -2
  3. package/lib/@types/global.d.js.map +1 -1
  4. package/lib/browser-index.d.ts.map +1 -1
  5. package/lib/browser-index.js +0 -11
  6. package/lib/browser-index.js.map +1 -1
  7. package/lib/client.d.ts +2 -1221
  8. package/lib/client.d.ts.map +1 -1
  9. package/lib/client.js +331 -2821
  10. package/lib/client.js.map +1 -1
  11. package/lib/embedded.d.ts +0 -22
  12. package/lib/embedded.d.ts.map +1 -1
  13. package/lib/embedded.js +24 -166
  14. package/lib/embedded.js.map +1 -1
  15. package/lib/event-mapper.d.ts.map +1 -1
  16. package/lib/event-mapper.js +0 -4
  17. package/lib/event-mapper.js.map +1 -1
  18. package/lib/matrix.d.ts +0 -19
  19. package/lib/matrix.d.ts.map +1 -1
  20. package/lib/matrix.js +1 -26
  21. package/lib/matrix.js.map +1 -1
  22. package/lib/models/MSC3089Branch.d.ts.map +1 -1
  23. package/lib/models/MSC3089Branch.js +0 -3
  24. package/lib/models/MSC3089Branch.js.map +1 -1
  25. package/lib/models/event.d.ts +0 -94
  26. package/lib/models/event.d.ts.map +1 -1
  27. package/lib/models/event.js +0 -274
  28. package/lib/models/event.js.map +1 -1
  29. package/lib/models/poll.d.ts.map +1 -1
  30. package/lib/models/poll.js +1 -5
  31. package/lib/models/poll.js.map +1 -1
  32. package/lib/models/relations-container.d.ts.map +1 -1
  33. package/lib/models/relations-container.js +1 -7
  34. package/lib/models/relations-container.js.map +1 -1
  35. package/lib/models/relations.d.ts +0 -1
  36. package/lib/models/relations.d.ts.map +1 -1
  37. package/lib/models/relations.js +0 -8
  38. package/lib/models/relations.js.map +1 -1
  39. package/lib/models/room-state.d.ts.map +1 -1
  40. package/lib/models/room-state.js +10 -26
  41. package/lib/models/room-state.js.map +1 -1
  42. package/lib/models/room.d.ts +0 -18
  43. package/lib/models/room.d.ts.map +1 -1
  44. package/lib/models/room.js +94 -148
  45. package/lib/models/room.js.map +1 -1
  46. package/lib/models/thread.d.ts.map +1 -1
  47. package/lib/models/thread.js +0 -1
  48. package/lib/models/thread.js.map +1 -1
  49. package/lib/sliding-sync-sdk.d.ts +2 -3
  50. package/lib/sliding-sync-sdk.d.ts.map +1 -1
  51. package/lib/sliding-sync-sdk.js +41 -90
  52. package/lib/sliding-sync-sdk.js.map +1 -1
  53. package/lib/sync.d.ts +0 -12
  54. package/lib/sync.d.ts.map +1 -1
  55. package/lib/sync.js +1 -73
  56. package/lib/sync.js.map +1 -1
  57. package/lib/testing.d.ts +0 -48
  58. package/lib/testing.d.ts.map +1 -1
  59. package/lib/testing.js +0 -105
  60. package/lib/testing.js.map +1 -1
  61. package/lib/types.d.ts +0 -1
  62. package/lib/types.d.ts.map +1 -1
  63. package/lib/types.js.map +1 -1
  64. package/package.json +1 -3
  65. package/src/@types/global.d.ts +0 -3
  66. package/src/browser-index.ts +0 -11
  67. package/src/client.ts +60 -2882
  68. package/src/embedded.ts +3 -130
  69. package/src/event-mapper.ts +0 -4
  70. package/src/matrix.ts +0 -28
  71. package/src/models/MSC3089Branch.ts +0 -3
  72. package/src/models/event.ts +0 -289
  73. package/src/models/poll.ts +0 -6
  74. package/src/models/relations-container.ts +1 -8
  75. package/src/models/relations.ts +0 -8
  76. package/src/models/room-state.ts +2 -8
  77. package/src/models/room.ts +0 -62
  78. package/src/models/thread.ts +0 -1
  79. package/src/sliding-sync-sdk.ts +2 -72
  80. package/src/sync.ts +1 -98
  81. package/src/testing.ts +0 -108
  82. package/src/types.ts +0 -1
  83. package/CHANGELOG.md +0 -5910
  84. package/lib/@types/AESEncryptedSecretStoragePayload.d.ts +0 -14
  85. package/lib/@types/AESEncryptedSecretStoragePayload.d.ts.map +0 -1
  86. package/lib/@types/AESEncryptedSecretStoragePayload.js +0 -1
  87. package/lib/@types/AESEncryptedSecretStoragePayload.js.map +0 -1
  88. package/lib/@types/crypto.d.ts +0 -47
  89. package/lib/@types/crypto.d.ts.map +0 -1
  90. package/lib/@types/crypto.js +0 -1
  91. package/lib/@types/crypto.js.map +0 -1
  92. package/lib/@types/matrix-sdk-crypto-wasm.d.js +0 -1
  93. package/lib/@types/matrix-sdk-crypto-wasm.d.js.map +0 -1
  94. package/lib/common-crypto/CryptoBackend.d.ts +0 -240
  95. package/lib/common-crypto/CryptoBackend.d.ts.map +0 -1
  96. package/lib/common-crypto/CryptoBackend.js +0 -73
  97. package/lib/common-crypto/CryptoBackend.js.map +0 -1
  98. package/lib/common-crypto/key-passphrase.d.ts +0 -14
  99. package/lib/common-crypto/key-passphrase.d.ts.map +0 -1
  100. package/lib/common-crypto/key-passphrase.js +0 -33
  101. package/lib/common-crypto/key-passphrase.js.map +0 -1
  102. package/lib/crypto/CrossSigning.d.ts +0 -184
  103. package/lib/crypto/CrossSigning.d.ts.map +0 -1
  104. package/lib/crypto/CrossSigning.js +0 -718
  105. package/lib/crypto/CrossSigning.js.map +0 -1
  106. package/lib/crypto/DeviceList.d.ts +0 -216
  107. package/lib/crypto/DeviceList.d.ts.map +0 -1
  108. package/lib/crypto/DeviceList.js +0 -892
  109. package/lib/crypto/DeviceList.js.map +0 -1
  110. package/lib/crypto/EncryptionSetup.d.ts +0 -152
  111. package/lib/crypto/EncryptionSetup.d.ts.map +0 -1
  112. package/lib/crypto/EncryptionSetup.js +0 -356
  113. package/lib/crypto/EncryptionSetup.js.map +0 -1
  114. package/lib/crypto/OlmDevice.d.ts +0 -457
  115. package/lib/crypto/OlmDevice.d.ts.map +0 -1
  116. package/lib/crypto/OlmDevice.js +0 -1241
  117. package/lib/crypto/OlmDevice.js.map +0 -1
  118. package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts +0 -109
  119. package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts.map +0 -1
  120. package/lib/crypto/OutgoingRoomKeyRequestManager.js +0 -415
  121. package/lib/crypto/OutgoingRoomKeyRequestManager.js.map +0 -1
  122. package/lib/crypto/RoomList.d.ts +0 -26
  123. package/lib/crypto/RoomList.d.ts.map +0 -1
  124. package/lib/crypto/RoomList.js +0 -71
  125. package/lib/crypto/RoomList.js.map +0 -1
  126. package/lib/crypto/SecretSharing.d.ts +0 -24
  127. package/lib/crypto/SecretSharing.d.ts.map +0 -1
  128. package/lib/crypto/SecretSharing.js +0 -194
  129. package/lib/crypto/SecretSharing.js.map +0 -1
  130. package/lib/crypto/SecretStorage.d.ts +0 -55
  131. package/lib/crypto/SecretStorage.d.ts.map +0 -1
  132. package/lib/crypto/SecretStorage.js +0 -118
  133. package/lib/crypto/SecretStorage.js.map +0 -1
  134. package/lib/crypto/aes.d.ts +0 -6
  135. package/lib/crypto/aes.d.ts.map +0 -1
  136. package/lib/crypto/aes.js +0 -24
  137. package/lib/crypto/aes.js.map +0 -1
  138. package/lib/crypto/algorithms/base.d.ts +0 -156
  139. package/lib/crypto/algorithms/base.d.ts.map +0 -1
  140. package/lib/crypto/algorithms/base.js +0 -187
  141. package/lib/crypto/algorithms/base.js.map +0 -1
  142. package/lib/crypto/algorithms/index.d.ts +0 -4
  143. package/lib/crypto/algorithms/index.d.ts.map +0 -1
  144. package/lib/crypto/algorithms/index.js +0 -20
  145. package/lib/crypto/algorithms/index.js.map +0 -1
  146. package/lib/crypto/algorithms/megolm.d.ts +0 -385
  147. package/lib/crypto/algorithms/megolm.d.ts.map +0 -1
  148. package/lib/crypto/algorithms/megolm.js +0 -1822
  149. package/lib/crypto/algorithms/megolm.js.map +0 -1
  150. package/lib/crypto/algorithms/olm.d.ts +0 -5
  151. package/lib/crypto/algorithms/olm.d.ts.map +0 -1
  152. package/lib/crypto/algorithms/olm.js +0 -299
  153. package/lib/crypto/algorithms/olm.js.map +0 -1
  154. package/lib/crypto/api.d.ts +0 -32
  155. package/lib/crypto/api.d.ts.map +0 -1
  156. package/lib/crypto/api.js +0 -22
  157. package/lib/crypto/api.js.map +0 -1
  158. package/lib/crypto/backup.d.ts +0 -227
  159. package/lib/crypto/backup.d.ts.map +0 -1
  160. package/lib/crypto/backup.js +0 -824
  161. package/lib/crypto/backup.js.map +0 -1
  162. package/lib/crypto/crypto.d.ts +0 -3
  163. package/lib/crypto/crypto.d.ts.map +0 -1
  164. package/lib/crypto/crypto.js +0 -19
  165. package/lib/crypto/crypto.js.map +0 -1
  166. package/lib/crypto/dehydration.d.ts +0 -34
  167. package/lib/crypto/dehydration.d.ts.map +0 -1
  168. package/lib/crypto/dehydration.js +0 -252
  169. package/lib/crypto/dehydration.js.map +0 -1
  170. package/lib/crypto/device-converter.d.ts +0 -9
  171. package/lib/crypto/device-converter.d.ts.map +0 -1
  172. package/lib/crypto/device-converter.js +0 -42
  173. package/lib/crypto/device-converter.js.map +0 -1
  174. package/lib/crypto/deviceinfo.d.ts +0 -99
  175. package/lib/crypto/deviceinfo.d.ts.map +0 -1
  176. package/lib/crypto/deviceinfo.js +0 -148
  177. package/lib/crypto/deviceinfo.js.map +0 -1
  178. package/lib/crypto/index.d.ts +0 -1209
  179. package/lib/crypto/index.d.ts.map +0 -1
  180. package/lib/crypto/index.js +0 -4097
  181. package/lib/crypto/index.js.map +0 -1
  182. package/lib/crypto/key_passphrase.d.ts +0 -14
  183. package/lib/crypto/key_passphrase.d.ts.map +0 -1
  184. package/lib/crypto/key_passphrase.js +0 -44
  185. package/lib/crypto/key_passphrase.js.map +0 -1
  186. package/lib/crypto/keybackup.d.ts +0 -18
  187. package/lib/crypto/keybackup.d.ts.map +0 -1
  188. package/lib/crypto/keybackup.js +0 -1
  189. package/lib/crypto/keybackup.js.map +0 -1
  190. package/lib/crypto/olmlib.d.ts +0 -129
  191. package/lib/crypto/olmlib.d.ts.map +0 -1
  192. package/lib/crypto/olmlib.js +0 -492
  193. package/lib/crypto/olmlib.js.map +0 -1
  194. package/lib/crypto/recoverykey.d.ts +0 -2
  195. package/lib/crypto/recoverykey.d.ts.map +0 -1
  196. package/lib/crypto/recoverykey.js +0 -19
  197. package/lib/crypto/recoverykey.js.map +0 -1
  198. package/lib/crypto/store/base.d.ts +0 -252
  199. package/lib/crypto/store/base.d.ts.map +0 -1
  200. package/lib/crypto/store/base.js +0 -64
  201. package/lib/crypto/store/base.js.map +0 -1
  202. package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts +0 -187
  203. package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts.map +0 -1
  204. package/lib/crypto/store/indexeddb-crypto-store-backend.js +0 -1145
  205. package/lib/crypto/store/indexeddb-crypto-store-backend.js.map +0 -1
  206. package/lib/crypto/store/indexeddb-crypto-store.d.ts +0 -432
  207. package/lib/crypto/store/indexeddb-crypto-store.d.ts.map +0 -1
  208. package/lib/crypto/store/indexeddb-crypto-store.js +0 -728
  209. package/lib/crypto/store/indexeddb-crypto-store.js.map +0 -1
  210. package/lib/crypto/store/localStorage-crypto-store.d.ts +0 -119
  211. package/lib/crypto/store/localStorage-crypto-store.d.ts.map +0 -1
  212. package/lib/crypto/store/localStorage-crypto-store.js +0 -531
  213. package/lib/crypto/store/localStorage-crypto-store.js.map +0 -1
  214. package/lib/crypto/store/memory-crypto-store.d.ts +0 -215
  215. package/lib/crypto/store/memory-crypto-store.d.ts.map +0 -1
  216. package/lib/crypto/store/memory-crypto-store.js +0 -622
  217. package/lib/crypto/store/memory-crypto-store.js.map +0 -1
  218. package/lib/crypto/verification/Base.d.ts +0 -105
  219. package/lib/crypto/verification/Base.d.ts.map +0 -1
  220. package/lib/crypto/verification/Base.js +0 -372
  221. package/lib/crypto/verification/Base.js.map +0 -1
  222. package/lib/crypto/verification/Error.d.ts +0 -35
  223. package/lib/crypto/verification/Error.d.ts.map +0 -1
  224. package/lib/crypto/verification/Error.js +0 -86
  225. package/lib/crypto/verification/Error.js.map +0 -1
  226. package/lib/crypto/verification/IllegalMethod.d.ts +0 -15
  227. package/lib/crypto/verification/IllegalMethod.d.ts.map +0 -1
  228. package/lib/crypto/verification/IllegalMethod.js +0 -43
  229. package/lib/crypto/verification/IllegalMethod.js.map +0 -1
  230. package/lib/crypto/verification/QRCode.d.ts +0 -51
  231. package/lib/crypto/verification/QRCode.d.ts.map +0 -1
  232. package/lib/crypto/verification/QRCode.js +0 -277
  233. package/lib/crypto/verification/QRCode.js.map +0 -1
  234. package/lib/crypto/verification/SAS.d.ts +0 -27
  235. package/lib/crypto/verification/SAS.d.ts.map +0 -1
  236. package/lib/crypto/verification/SAS.js +0 -485
  237. package/lib/crypto/verification/SAS.js.map +0 -1
  238. package/lib/crypto/verification/SASDecimal.d.ts +0 -8
  239. package/lib/crypto/verification/SASDecimal.d.ts.map +0 -1
  240. package/lib/crypto/verification/SASDecimal.js +0 -34
  241. package/lib/crypto/verification/SASDecimal.js.map +0 -1
  242. package/lib/crypto/verification/request/Channel.d.ts +0 -18
  243. package/lib/crypto/verification/request/Channel.d.ts.map +0 -1
  244. package/lib/crypto/verification/request/Channel.js +0 -1
  245. package/lib/crypto/verification/request/Channel.js.map +0 -1
  246. package/lib/crypto/verification/request/InRoomChannel.d.ts +0 -113
  247. package/lib/crypto/verification/request/InRoomChannel.d.ts.map +0 -1
  248. package/lib/crypto/verification/request/InRoomChannel.js +0 -351
  249. package/lib/crypto/verification/request/InRoomChannel.js.map +0 -1
  250. package/lib/crypto/verification/request/ToDeviceChannel.d.ts +0 -105
  251. package/lib/crypto/verification/request/ToDeviceChannel.d.ts.map +0 -1
  252. package/lib/crypto/verification/request/ToDeviceChannel.js +0 -328
  253. package/lib/crypto/verification/request/ToDeviceChannel.js.map +0 -1
  254. package/lib/crypto/verification/request/VerificationRequest.d.ts +0 -227
  255. package/lib/crypto/verification/request/VerificationRequest.d.ts.map +0 -1
  256. package/lib/crypto/verification/request/VerificationRequest.js +0 -937
  257. package/lib/crypto/verification/request/VerificationRequest.js.map +0 -1
  258. package/lib/crypto-api/CryptoEvent.d.ts +0 -69
  259. package/lib/crypto-api/CryptoEvent.d.ts.map +0 -1
  260. package/lib/crypto-api/CryptoEvent.js +0 -33
  261. package/lib/crypto-api/CryptoEvent.js.map +0 -1
  262. package/lib/crypto-api/CryptoEventHandlerMap.d.ts +0 -16
  263. package/lib/crypto-api/CryptoEventHandlerMap.d.ts.map +0 -1
  264. package/lib/crypto-api/CryptoEventHandlerMap.js +0 -22
  265. package/lib/crypto-api/CryptoEventHandlerMap.js.map +0 -1
  266. package/lib/crypto-api/index.d.ts +0 -978
  267. package/lib/crypto-api/index.d.ts.map +0 -1
  268. package/lib/crypto-api/index.js +0 -304
  269. package/lib/crypto-api/index.js.map +0 -1
  270. package/lib/crypto-api/key-passphrase.d.ts +0 -11
  271. package/lib/crypto-api/key-passphrase.d.ts.map +0 -1
  272. package/lib/crypto-api/key-passphrase.js +0 -51
  273. package/lib/crypto-api/key-passphrase.js.map +0 -1
  274. package/lib/crypto-api/keybackup.d.ts +0 -88
  275. package/lib/crypto-api/keybackup.d.ts.map +0 -1
  276. package/lib/crypto-api/keybackup.js +0 -1
  277. package/lib/crypto-api/keybackup.js.map +0 -1
  278. package/lib/crypto-api/recovery-key.d.ts +0 -11
  279. package/lib/crypto-api/recovery-key.d.ts.map +0 -1
  280. package/lib/crypto-api/recovery-key.js +0 -65
  281. package/lib/crypto-api/recovery-key.js.map +0 -1
  282. package/lib/crypto-api/verification.d.ts +0 -344
  283. package/lib/crypto-api/verification.d.ts.map +0 -1
  284. package/lib/crypto-api/verification.js +0 -91
  285. package/lib/crypto-api/verification.js.map +0 -1
  286. package/lib/rendezvous/MSC4108SignInWithQR.d.ts +0 -112
  287. package/lib/rendezvous/MSC4108SignInWithQR.d.ts.map +0 -1
  288. package/lib/rendezvous/MSC4108SignInWithQR.js +0 -392
  289. package/lib/rendezvous/MSC4108SignInWithQR.js.map +0 -1
  290. package/lib/rendezvous/RendezvousChannel.d.ts +0 -27
  291. package/lib/rendezvous/RendezvousChannel.d.ts.map +0 -1
  292. package/lib/rendezvous/RendezvousChannel.js +0 -1
  293. package/lib/rendezvous/RendezvousChannel.js.map +0 -1
  294. package/lib/rendezvous/RendezvousCode.d.ts +0 -9
  295. package/lib/rendezvous/RendezvousCode.d.ts.map +0 -1
  296. package/lib/rendezvous/RendezvousCode.js +0 -1
  297. package/lib/rendezvous/RendezvousCode.js.map +0 -1
  298. package/lib/rendezvous/RendezvousError.d.ts +0 -6
  299. package/lib/rendezvous/RendezvousError.d.ts.map +0 -1
  300. package/lib/rendezvous/RendezvousError.js +0 -23
  301. package/lib/rendezvous/RendezvousError.js.map +0 -1
  302. package/lib/rendezvous/RendezvousFailureReason.d.ts +0 -31
  303. package/lib/rendezvous/RendezvousFailureReason.d.ts.map +0 -1
  304. package/lib/rendezvous/RendezvousFailureReason.js +0 -38
  305. package/lib/rendezvous/RendezvousFailureReason.js.map +0 -1
  306. package/lib/rendezvous/RendezvousIntent.d.ts +0 -5
  307. package/lib/rendezvous/RendezvousIntent.d.ts.map +0 -1
  308. package/lib/rendezvous/RendezvousIntent.js +0 -22
  309. package/lib/rendezvous/RendezvousIntent.js.map +0 -1
  310. package/lib/rendezvous/RendezvousTransport.d.ts +0 -36
  311. package/lib/rendezvous/RendezvousTransport.d.ts.map +0 -1
  312. package/lib/rendezvous/RendezvousTransport.js +0 -1
  313. package/lib/rendezvous/RendezvousTransport.js.map +0 -1
  314. package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts +0 -58
  315. package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts.map +0 -1
  316. package/lib/rendezvous/channels/MSC4108SecureChannel.js +0 -246
  317. package/lib/rendezvous/channels/MSC4108SecureChannel.js.map +0 -1
  318. package/lib/rendezvous/channels/index.d.ts +0 -2
  319. package/lib/rendezvous/channels/index.d.ts.map +0 -1
  320. package/lib/rendezvous/channels/index.js +0 -18
  321. package/lib/rendezvous/channels/index.js.map +0 -1
  322. package/lib/rendezvous/index.d.ts +0 -10
  323. package/lib/rendezvous/index.d.ts.map +0 -1
  324. package/lib/rendezvous/index.js +0 -23
  325. package/lib/rendezvous/index.js.map +0 -1
  326. package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts +0 -61
  327. package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts.map +0 -1
  328. package/lib/rendezvous/transports/MSC4108RendezvousSession.js +0 -253
  329. package/lib/rendezvous/transports/MSC4108RendezvousSession.js.map +0 -1
  330. package/lib/rendezvous/transports/index.d.ts +0 -2
  331. package/lib/rendezvous/transports/index.d.ts.map +0 -1
  332. package/lib/rendezvous/transports/index.js +0 -18
  333. package/lib/rendezvous/transports/index.js.map +0 -1
  334. package/lib/rust-crypto/CrossSigningIdentity.d.ts +0 -33
  335. package/lib/rust-crypto/CrossSigningIdentity.d.ts.map +0 -1
  336. package/lib/rust-crypto/CrossSigningIdentity.js +0 -157
  337. package/lib/rust-crypto/CrossSigningIdentity.js.map +0 -1
  338. package/lib/rust-crypto/DehydratedDeviceManager.d.ts +0 -98
  339. package/lib/rust-crypto/DehydratedDeviceManager.d.ts.map +0 -1
  340. package/lib/rust-crypto/DehydratedDeviceManager.js +0 -285
  341. package/lib/rust-crypto/DehydratedDeviceManager.js.map +0 -1
  342. package/lib/rust-crypto/KeyClaimManager.d.ts +0 -33
  343. package/lib/rust-crypto/KeyClaimManager.d.ts.map +0 -1
  344. package/lib/rust-crypto/KeyClaimManager.js +0 -82
  345. package/lib/rust-crypto/KeyClaimManager.js.map +0 -1
  346. package/lib/rust-crypto/OutgoingRequestProcessor.d.ts +0 -43
  347. package/lib/rust-crypto/OutgoingRequestProcessor.d.ts.map +0 -1
  348. package/lib/rust-crypto/OutgoingRequestProcessor.js +0 -195
  349. package/lib/rust-crypto/OutgoingRequestProcessor.js.map +0 -1
  350. package/lib/rust-crypto/OutgoingRequestsManager.d.ts +0 -47
  351. package/lib/rust-crypto/OutgoingRequestsManager.d.ts.map +0 -1
  352. package/lib/rust-crypto/OutgoingRequestsManager.js +0 -148
  353. package/lib/rust-crypto/OutgoingRequestsManager.js.map +0 -1
  354. package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts +0 -120
  355. package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts.map +0 -1
  356. package/lib/rust-crypto/PerSessionKeyBackupDownloader.js +0 -467
  357. package/lib/rust-crypto/PerSessionKeyBackupDownloader.js.map +0 -1
  358. package/lib/rust-crypto/RoomEncryptor.d.ts +0 -98
  359. package/lib/rust-crypto/RoomEncryptor.d.ts.map +0 -1
  360. package/lib/rust-crypto/RoomEncryptor.js +0 -299
  361. package/lib/rust-crypto/RoomEncryptor.js.map +0 -1
  362. package/lib/rust-crypto/backup.d.ts +0 -254
  363. package/lib/rust-crypto/backup.d.ts.map +0 -1
  364. package/lib/rust-crypto/backup.js +0 -837
  365. package/lib/rust-crypto/backup.js.map +0 -1
  366. package/lib/rust-crypto/constants.d.ts +0 -3
  367. package/lib/rust-crypto/constants.d.ts.map +0 -1
  368. package/lib/rust-crypto/constants.js +0 -19
  369. package/lib/rust-crypto/constants.js.map +0 -1
  370. package/lib/rust-crypto/device-converter.d.ts +0 -28
  371. package/lib/rust-crypto/device-converter.d.ts.map +0 -1
  372. package/lib/rust-crypto/device-converter.js +0 -123
  373. package/lib/rust-crypto/device-converter.js.map +0 -1
  374. package/lib/rust-crypto/index.d.ts +0 -61
  375. package/lib/rust-crypto/index.d.ts.map +0 -1
  376. package/lib/rust-crypto/index.js +0 -152
  377. package/lib/rust-crypto/index.js.map +0 -1
  378. package/lib/rust-crypto/libolm_migration.d.ts +0 -81
  379. package/lib/rust-crypto/libolm_migration.d.ts.map +0 -1
  380. package/lib/rust-crypto/libolm_migration.js +0 -459
  381. package/lib/rust-crypto/libolm_migration.js.map +0 -1
  382. package/lib/rust-crypto/rust-crypto.d.ts +0 -556
  383. package/lib/rust-crypto/rust-crypto.d.ts.map +0 -1
  384. package/lib/rust-crypto/rust-crypto.js +0 -2016
  385. package/lib/rust-crypto/rust-crypto.js.map +0 -1
  386. package/lib/rust-crypto/secret-storage.d.ts +0 -22
  387. package/lib/rust-crypto/secret-storage.d.ts.map +0 -1
  388. package/lib/rust-crypto/secret-storage.js +0 -63
  389. package/lib/rust-crypto/secret-storage.js.map +0 -1
  390. package/lib/rust-crypto/verification.d.ts +0 -319
  391. package/lib/rust-crypto/verification.d.ts.map +0 -1
  392. package/lib/rust-crypto/verification.js +0 -816
  393. package/lib/rust-crypto/verification.js.map +0 -1
  394. package/lib/secret-storage.d.ts +0 -370
  395. package/lib/secret-storage.d.ts.map +0 -1
  396. package/lib/secret-storage.js +0 -466
  397. package/lib/secret-storage.js.map +0 -1
  398. package/lib/utils/decryptAESSecretStorageItem.d.ts +0 -12
  399. package/lib/utils/decryptAESSecretStorageItem.d.ts.map +0 -1
  400. package/lib/utils/decryptAESSecretStorageItem.js +0 -50
  401. package/lib/utils/decryptAESSecretStorageItem.js.map +0 -1
  402. package/lib/utils/encryptAESSecretStorageItem.d.ts +0 -16
  403. package/lib/utils/encryptAESSecretStorageItem.d.ts.map +0 -1
  404. package/lib/utils/encryptAESSecretStorageItem.js +0 -68
  405. package/lib/utils/encryptAESSecretStorageItem.js.map +0 -1
  406. package/lib/utils/internal/deriveKeys.d.ts +0 -10
  407. package/lib/utils/internal/deriveKeys.d.ts.map +0 -1
  408. package/lib/utils/internal/deriveKeys.js +0 -60
  409. package/lib/utils/internal/deriveKeys.js.map +0 -1
  410. package/src/@types/AESEncryptedSecretStoragePayload.ts +0 -29
  411. package/src/@types/crypto.ts +0 -73
  412. package/src/@types/matrix-sdk-crypto-wasm.d.ts +0 -44
  413. package/src/common-crypto/CryptoBackend.ts +0 -302
  414. package/src/common-crypto/README.md +0 -4
  415. package/src/common-crypto/key-passphrase.ts +0 -43
  416. package/src/crypto/CrossSigning.ts +0 -773
  417. package/src/crypto/DeviceList.ts +0 -989
  418. package/src/crypto/EncryptionSetup.ts +0 -351
  419. package/src/crypto/OlmDevice.ts +0 -1500
  420. package/src/crypto/OutgoingRoomKeyRequestManager.ts +0 -485
  421. package/src/crypto/RoomList.ts +0 -70
  422. package/src/crypto/SecretSharing.ts +0 -240
  423. package/src/crypto/SecretStorage.ts +0 -136
  424. package/src/crypto/aes.ts +0 -23
  425. package/src/crypto/algorithms/base.ts +0 -236
  426. package/src/crypto/algorithms/index.ts +0 -20
  427. package/src/crypto/algorithms/megolm.ts +0 -2216
  428. package/src/crypto/algorithms/olm.ts +0 -381
  429. package/src/crypto/api.ts +0 -70
  430. package/src/crypto/backup.ts +0 -922
  431. package/src/crypto/crypto.ts +0 -18
  432. package/src/crypto/dehydration.ts +0 -272
  433. package/src/crypto/device-converter.ts +0 -45
  434. package/src/crypto/deviceinfo.ts +0 -158
  435. package/src/crypto/index.ts +0 -4414
  436. package/src/crypto/key_passphrase.ts +0 -42
  437. package/src/crypto/keybackup.ts +0 -47
  438. package/src/crypto/olmlib.ts +0 -539
  439. package/src/crypto/recoverykey.ts +0 -18
  440. package/src/crypto/store/base.ts +0 -348
  441. package/src/crypto/store/indexeddb-crypto-store-backend.ts +0 -1250
  442. package/src/crypto/store/indexeddb-crypto-store.ts +0 -845
  443. package/src/crypto/store/localStorage-crypto-store.ts +0 -579
  444. package/src/crypto/store/memory-crypto-store.ts +0 -680
  445. package/src/crypto/verification/Base.ts +0 -409
  446. package/src/crypto/verification/Error.ts +0 -76
  447. package/src/crypto/verification/IllegalMethod.ts +0 -50
  448. package/src/crypto/verification/QRCode.ts +0 -310
  449. package/src/crypto/verification/SAS.ts +0 -494
  450. package/src/crypto/verification/SASDecimal.ts +0 -37
  451. package/src/crypto/verification/request/Channel.ts +0 -34
  452. package/src/crypto/verification/request/InRoomChannel.ts +0 -371
  453. package/src/crypto/verification/request/ToDeviceChannel.ts +0 -354
  454. package/src/crypto/verification/request/VerificationRequest.ts +0 -976
  455. package/src/crypto-api/CryptoEvent.ts +0 -93
  456. package/src/crypto-api/CryptoEventHandlerMap.ts +0 -32
  457. package/src/crypto-api/index.ts +0 -1175
  458. package/src/crypto-api/key-passphrase.ts +0 -58
  459. package/src/crypto-api/keybackup.ts +0 -115
  460. package/src/crypto-api/recovery-key.ts +0 -69
  461. package/src/crypto-api/verification.ts +0 -408
  462. package/src/rendezvous/MSC4108SignInWithQR.ts +0 -444
  463. package/src/rendezvous/RendezvousChannel.ts +0 -48
  464. package/src/rendezvous/RendezvousCode.ts +0 -25
  465. package/src/rendezvous/RendezvousError.ts +0 -26
  466. package/src/rendezvous/RendezvousFailureReason.ts +0 -49
  467. package/src/rendezvous/RendezvousIntent.ts +0 -20
  468. package/src/rendezvous/RendezvousTransport.ts +0 -58
  469. package/src/rendezvous/channels/MSC4108SecureChannel.ts +0 -270
  470. package/src/rendezvous/channels/index.ts +0 -17
  471. package/src/rendezvous/index.ts +0 -25
  472. package/src/rendezvous/transports/MSC4108RendezvousSession.ts +0 -270
  473. package/src/rendezvous/transports/index.ts +0 -17
  474. package/src/rust-crypto/CrossSigningIdentity.ts +0 -183
  475. package/src/rust-crypto/DehydratedDeviceManager.ts +0 -306
  476. package/src/rust-crypto/KeyClaimManager.ts +0 -86
  477. package/src/rust-crypto/OutgoingRequestProcessor.ts +0 -236
  478. package/src/rust-crypto/OutgoingRequestsManager.ts +0 -143
  479. package/src/rust-crypto/PerSessionKeyBackupDownloader.ts +0 -501
  480. package/src/rust-crypto/RoomEncryptor.ts +0 -352
  481. package/src/rust-crypto/backup.ts +0 -881
  482. package/src/rust-crypto/constants.ts +0 -18
  483. package/src/rust-crypto/device-converter.ts +0 -128
  484. package/src/rust-crypto/index.ts +0 -237
  485. package/src/rust-crypto/libolm_migration.ts +0 -530
  486. package/src/rust-crypto/rust-crypto.ts +0 -2205
  487. package/src/rust-crypto/secret-storage.ts +0 -60
  488. package/src/rust-crypto/verification.ts +0 -830
  489. package/src/secret-storage.ts +0 -693
  490. package/src/utils/decryptAESSecretStorageItem.ts +0 -54
  491. package/src/utils/encryptAESSecretStorageItem.ts +0 -73
  492. package/src/utils/internal/deriveKeys.ts +0 -63
@@ -1,252 +0,0 @@
1
- import { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from "../index.ts";
2
- import { RoomKeyRequestState } from "../OutgoingRoomKeyRequestManager.ts";
3
- import { IOlmDevice } from "../algorithms/megolm.ts";
4
- import { TrackingStatus } from "../DeviceList.ts";
5
- import { IRoomEncryption } from "../RoomList.ts";
6
- import { IDevice } from "../deviceinfo.ts";
7
- import { ICrossSigningInfo } from "../CrossSigning.ts";
8
- import { Logger } from "../../logger.ts";
9
- import { InboundGroupSessionData } from "../OlmDevice.ts";
10
- import { MatrixEvent } from "../../models/event.ts";
11
- import { DehydrationManager } from "../dehydration.ts";
12
- import { CrossSigningKeyInfo } from "../../crypto-api/index.ts";
13
- import { AESEncryptedSecretStoragePayload } from "../../@types/AESEncryptedSecretStoragePayload.ts";
14
- /**
15
- * Internal module. Definitions for storage for the crypto module
16
- */
17
- export interface SecretStorePrivateKeys {
18
- "dehydration": {
19
- keyInfo: DehydrationManager["keyInfo"];
20
- key: AESEncryptedSecretStoragePayload;
21
- deviceDisplayName: string;
22
- time: number;
23
- } | null;
24
- "m.megolm_backup.v1": AESEncryptedSecretStoragePayload;
25
- }
26
- /**
27
- * Abstraction of things that can store data required for end-to-end encryption
28
- */
29
- export interface CryptoStore {
30
- /**
31
- * Returns true if this CryptoStore has ever been initialised (ie, it might contain data).
32
- *
33
- * Unlike the rest of the methods in this interface, can be called before {@link CryptoStore#startup}.
34
- *
35
- * @internal
36
- */
37
- containsData(): Promise<boolean>;
38
- /**
39
- * Initialise this crypto store.
40
- *
41
- * Typically, this involves provisioning storage, and migrating any existing data to the current version of the
42
- * storage schema where appropriate.
43
- *
44
- * Must be called before any of the rest of the methods in this interface.
45
- */
46
- startup(): Promise<CryptoStore>;
47
- deleteAllData(): Promise<void>;
48
- /**
49
- * Get data on how much of the libolm to Rust Crypto migration has been done.
50
- *
51
- * @internal
52
- */
53
- getMigrationState(): Promise<MigrationState>;
54
- /**
55
- * Set data on how much of the libolm to Rust Crypto migration has been done.
56
- *
57
- * @internal
58
- */
59
- setMigrationState(migrationState: MigrationState): Promise<void>;
60
- getOrAddOutgoingRoomKeyRequest(request: OutgoingRoomKeyRequest): Promise<OutgoingRoomKeyRequest>;
61
- getOutgoingRoomKeyRequest(requestBody: IRoomKeyRequestBody): Promise<OutgoingRoomKeyRequest | null>;
62
- getOutgoingRoomKeyRequestByState(wantedStates: number[]): Promise<OutgoingRoomKeyRequest | null>;
63
- getAllOutgoingRoomKeyRequestsByState(wantedState: number): Promise<OutgoingRoomKeyRequest[]>;
64
- getOutgoingRoomKeyRequestsByTarget(userId: string, deviceId: string, wantedStates: number[]): Promise<OutgoingRoomKeyRequest[]>;
65
- updateOutgoingRoomKeyRequest(requestId: string, expectedState: number, updates: Partial<OutgoingRoomKeyRequest>): Promise<OutgoingRoomKeyRequest | null>;
66
- deleteOutgoingRoomKeyRequest(requestId: string, expectedState: number): Promise<OutgoingRoomKeyRequest | null>;
67
- getAccount(txn: unknown, func: (accountPickle: string | null) => void): void;
68
- storeAccount(txn: unknown, accountPickle: string): void;
69
- getCrossSigningKeys(txn: unknown, func: (keys: Record<string, CrossSigningKeyInfo> | null) => void): void;
70
- getSecretStorePrivateKey<K extends keyof SecretStorePrivateKeys>(txn: unknown, func: (key: SecretStorePrivateKeys[K] | null) => void, type: K): void;
71
- storeCrossSigningKeys(txn: unknown, keys: Record<string, CrossSigningKeyInfo>): void;
72
- storeSecretStorePrivateKey<K extends keyof SecretStorePrivateKeys>(txn: unknown, type: K, key: SecretStorePrivateKeys[K]): void;
73
- countEndToEndSessions(txn: unknown, func: (count: number) => void): void;
74
- getEndToEndSession(deviceKey: string, sessionId: string, txn: unknown, func: (session: ISessionInfo | null) => void): void;
75
- getEndToEndSessions(deviceKey: string, txn: unknown, func: (sessions: {
76
- [sessionId: string]: ISessionInfo;
77
- }) => void): void;
78
- getAllEndToEndSessions(txn: unknown, func: (session: ISessionInfo | null) => void): void;
79
- storeEndToEndSession(deviceKey: string, sessionId: string, sessionInfo: ISessionInfo, txn: unknown): void;
80
- storeEndToEndSessionProblem(deviceKey: string, type: string, fixed: boolean): Promise<void>;
81
- getEndToEndSessionProblem(deviceKey: string, timestamp: number): Promise<IProblem | null>;
82
- filterOutNotifiedErrorDevices(devices: IOlmDevice[]): Promise<IOlmDevice[]>;
83
- /**
84
- * Get a batch of end-to-end sessions from the database.
85
- *
86
- * @returns A batch of Olm Sessions, or `null` if no sessions are left.
87
- * @internal
88
- */
89
- getEndToEndSessionsBatch(): Promise<ISessionInfo[] | null>;
90
- /**
91
- * Delete a batch of end-to-end sessions from the database.
92
- *
93
- * Any sessions in the list which are not found are silently ignored.
94
- *
95
- * @internal
96
- */
97
- deleteEndToEndSessionsBatch(sessions: {
98
- deviceKey?: string;
99
- sessionId?: string;
100
- }[]): Promise<void>;
101
- getEndToEndInboundGroupSession(senderCurve25519Key: string, sessionId: string, txn: unknown, func: (groupSession: InboundGroupSessionData | null, groupSessionWithheld: IWithheld | null) => void): void;
102
- getAllEndToEndInboundGroupSessions(txn: unknown, func: (session: ISession | null) => void): void;
103
- addEndToEndInboundGroupSession(senderCurve25519Key: string, sessionId: string, sessionData: InboundGroupSessionData, txn: unknown): void;
104
- storeEndToEndInboundGroupSession(senderCurve25519Key: string, sessionId: string, sessionData: InboundGroupSessionData, txn: unknown): void;
105
- storeEndToEndInboundGroupSessionWithheld(senderCurve25519Key: string, sessionId: string, sessionData: IWithheld, txn: unknown): void;
106
- /**
107
- * Count the number of Megolm sessions in the database.
108
- *
109
- * @internal
110
- */
111
- countEndToEndInboundGroupSessions(): Promise<number>;
112
- /**
113
- * Get a batch of Megolm sessions from the database.
114
- *
115
- * @returns A batch of Megolm Sessions, or `null` if no sessions are left.
116
- * @internal
117
- */
118
- getEndToEndInboundGroupSessionsBatch(): Promise<SessionExtended[] | null>;
119
- /**
120
- * Delete a batch of Megolm sessions from the database.
121
- *
122
- * Any sessions in the list which are not found are silently ignored.
123
- *
124
- * @internal
125
- */
126
- deleteEndToEndInboundGroupSessionsBatch(sessions: {
127
- senderKey: string;
128
- sessionId: string;
129
- }[]): Promise<void>;
130
- getEndToEndDeviceData(txn: unknown, func: (deviceData: IDeviceData | null) => void): void;
131
- storeEndToEndDeviceData(deviceData: IDeviceData, txn: unknown): void;
132
- storeEndToEndRoom(roomId: string, roomInfo: IRoomEncryption, txn: unknown): void;
133
- getEndToEndRooms(txn: unknown, func: (rooms: Record<string, IRoomEncryption>) => void): void;
134
- getSessionsNeedingBackup(limit: number): Promise<ISession[]>;
135
- countSessionsNeedingBackup(txn?: unknown): Promise<number>;
136
- unmarkSessionsNeedingBackup(sessions: ISession[], txn?: unknown): Promise<void>;
137
- markSessionsNeedingBackup(sessions: ISession[], txn?: unknown): Promise<void>;
138
- addSharedHistoryInboundGroupSession(roomId: string, senderKey: string, sessionId: string, txn?: unknown): void;
139
- getSharedHistoryInboundGroupSessions(roomId: string, txn?: unknown): Promise<[senderKey: string, sessionId: string][]>;
140
- addParkedSharedHistory(roomId: string, data: ParkedSharedHistory, txn?: unknown): void;
141
- takeParkedSharedHistory(roomId: string, txn?: unknown): Promise<ParkedSharedHistory[]>;
142
- doTxn<T>(mode: Mode, stores: Iterable<string>, func: (txn: unknown) => T, log?: Logger): Promise<T>;
143
- }
144
- export type Mode = "readonly" | "readwrite";
145
- /** Data on a Megolm session */
146
- export interface ISession {
147
- senderKey: string;
148
- sessionId: string;
149
- sessionData?: InboundGroupSessionData;
150
- }
151
- /** Extended data on a Megolm session */
152
- export interface SessionExtended extends ISession {
153
- needsBackup: boolean;
154
- }
155
- /** Data on an Olm session */
156
- export interface ISessionInfo {
157
- deviceKey?: string;
158
- sessionId?: string;
159
- session?: string;
160
- lastReceivedMessageTs?: number;
161
- }
162
- export interface IDeviceData {
163
- devices: {
164
- [userId: string]: {
165
- [deviceId: string]: IDevice;
166
- };
167
- };
168
- trackingStatus: {
169
- [userId: string]: TrackingStatus;
170
- };
171
- crossSigningInfo?: Record<string, ICrossSigningInfo>;
172
- syncToken?: string;
173
- }
174
- export interface IProblem {
175
- type: string;
176
- fixed: boolean;
177
- time: number;
178
- }
179
- export interface IWithheld {
180
- room_id: string;
181
- code: string;
182
- reason: string;
183
- }
184
- /**
185
- * Represents an outgoing room key request
186
- */
187
- export interface OutgoingRoomKeyRequest {
188
- /**
189
- * Unique id for this request. Used for both an id within the request for later pairing with a cancellation,
190
- * and for the transaction id when sending the to_device messages to our local server.
191
- */
192
- requestId: string;
193
- requestTxnId?: string;
194
- /**
195
- * Transaction id for the cancellation, if any
196
- */
197
- cancellationTxnId?: string;
198
- /**
199
- * List of recipients for the request
200
- */
201
- recipients: IRoomKeyRequestRecipient[];
202
- /**
203
- * Parameters for the request
204
- */
205
- requestBody: IRoomKeyRequestBody;
206
- /**
207
- * current state of this request
208
- */
209
- state: RoomKeyRequestState;
210
- }
211
- export interface ParkedSharedHistory {
212
- senderId: string;
213
- senderKey: string;
214
- sessionId: string;
215
- sessionKey: string;
216
- keysClaimed: ReturnType<MatrixEvent["getKeysClaimed"]>;
217
- forwardingCurve25519KeyChain: string[];
218
- }
219
- /**
220
- * Keys for the `account` object store to store the migration state.
221
- * Values are defined in `MigrationState`.
222
- * @internal
223
- */
224
- export declare const ACCOUNT_OBJECT_KEY_MIGRATION_STATE = "migrationState";
225
- /**
226
- * A record of which steps have been completed in the libolm to Rust Crypto migration.
227
- *
228
- * Used by {@link CryptoStore#getMigrationState} and {@link CryptoStore#setMigrationState}.
229
- *
230
- * @internal
231
- */
232
- export declare enum MigrationState {
233
- /** No migration steps have yet been completed. */
234
- NOT_STARTED = 0,
235
- /** We have migrated the account data, cross-signing keys, etc. */
236
- INITIAL_DATA_MIGRATED = 1,
237
- /** INITIAL_DATA_MIGRATED, and in addition, we have migrated all the Olm sessions. */
238
- OLM_SESSIONS_MIGRATED = 2,
239
- /** OLM_SESSIONS_MIGRATED, and in addition, we have migrated all the Megolm sessions. */
240
- MEGOLM_SESSIONS_MIGRATED = 3,
241
- /** MEGOLM_SESSIONS_MIGRATED, and in addition, we have migrated all the room settings. */
242
- ROOM_SETTINGS_MIGRATED = 4,
243
- /** ROOM_SETTINGS_MIGRATED, and in addition, we have done the first own keys query in order to
244
- * load the public part of the keys that have been migrated */
245
- INITIAL_OWN_KEY_QUERY_DONE = 5
246
- }
247
- /**
248
- * The size of batches to be returned by {@link CryptoStore#getEndToEndSessionsBatch} and
249
- * {@link CryptoStore#getEndToEndInboundGroupSessionsBatch}.
250
- */
251
- export declare const SESSION_BATCH_SIZE = 50;
252
- //# sourceMappingURL=base.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/crypto/store/base.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,gCAAgC,EAAE,MAAM,kDAAkD,CAAC;AAEpG;;GAEG;AAEH,MAAM,WAAW,sBAAsB;IACnC,aAAa,EAAE;QACX,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACvC,GAAG,EAAE,gCAAgC,CAAC;QACtC,iBAAiB,EAAE,MAAM,CAAC;QAC1B,IAAI,EAAE,MAAM,CAAC;KAChB,GAAG,IAAI,CAAC;IACT,oBAAoB,EAAE,gCAAgC,CAAC;CAC1D;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB;;;;;;OAMG;IACH,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEjC;;;;;;;OAOG;IACH,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IAEhC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/B;;;;OAIG;IACH,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IAE7C;;;;OAIG;IACH,iBAAiB,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjE,8BAA8B,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACjG,yBAAyB,CAAC,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IACpG,gCAAgC,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IACjG,oCAAoC,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC7F,kCAAkC,CAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;IACrC,4BAA4B,CACxB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACzC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IAC1C,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IAG/G,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IAC7E,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACxD,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IAC1G,wBAAwB,CAAC,CAAC,SAAS,MAAM,sBAAsB,EAC3D,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,IAAI,EACrD,IAAI,EAAE,CAAC,GACR,IAAI,CAAC;IACR,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,IAAI,CAAC;IACrF,0BAA0B,CAAC,CAAC,SAAS,MAAM,sBAAsB,EAC7D,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAC/B,IAAI,CAAC;IAGR,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACzE,kBAAkB,CACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,GAC7C,IAAI,CAAC;IACR,mBAAmB,CACf,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,CAAC,QAAQ,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,KAAK,IAAI,GAChE,IAAI,CAAC;IACR,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IACzF,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1G,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5F,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAC1F,6BAA6B,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAE5E;;;;;OAKG;IACH,wBAAwB,IAAI,OAAO,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC;IAE3D;;;;;;OAMG;IACH,2BAA2B,CAAC,QAAQ,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGnG,8BAA8B,CAC1B,mBAAmB,EAAE,MAAM,EAC3B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,CAAC,YAAY,EAAE,uBAAuB,GAAG,IAAI,EAAE,oBAAoB,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,GACrG,IAAI,CAAC;IACR,kCAAkC,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IACjG,8BAA8B,CAC1B,mBAAmB,EAAE,MAAM,EAC3B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,uBAAuB,EACpC,GAAG,EAAE,OAAO,GACb,IAAI,CAAC;IACR,gCAAgC,CAC5B,mBAAmB,EAAE,MAAM,EAC3B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,uBAAuB,EACpC,GAAG,EAAE,OAAO,GACb,IAAI,CAAC;IACR,wCAAwC,CACpC,mBAAmB,EAAE,MAAM,EAC3B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,SAAS,EACtB,GAAG,EAAE,OAAO,GACb,IAAI,CAAC;IAER;;;;OAIG;IACH,iCAAiC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAErD;;;;;OAKG;IACH,oCAAoC,IAAI,OAAO,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,CAAC;IAE1E;;;;;;OAMG;IACH,uCAAuC,CAAC,QAAQ,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG7G,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IAC1F,uBAAuB,CAAC,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACrE,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACjF,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IAC7F,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7D,0BAA0B,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,mCAAmC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/G,oCAAoC,CAChC,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;IACrD,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACvF,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAGvF,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACvG;AAED,MAAM,MAAM,IAAI,GAAG,UAAU,GAAG,WAAW,CAAC;AAE5C,+BAA+B;AAC/B,MAAM,WAAW,QAAQ;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,uBAAuB,CAAC;CACzC;AAED,wCAAwC;AACxC,MAAM,WAAW,eAAgB,SAAQ,QAAQ;IAC7C,WAAW,EAAE,OAAO,CAAC;CACxB;AAED,6BAA6B;AAC7B,MAAM,WAAW,YAAY;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE;QACL,CAAC,MAAM,EAAE,MAAM,GAAG;YACd,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;SAC/B,CAAC;KACL,CAAC;IACF,cAAc,EAAE;QACZ,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAAC;KACpC,CAAC;IACF,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IAEtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,UAAU,EAAE,wBAAwB,EAAE,CAAC;IACvC;;OAEG;IACH,WAAW,EAAE,mBAAmB,CAAC;IACjC;;OAEG;IACH,KAAK,EAAE,mBAAmB,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACvD,4BAA4B,EAAE,MAAM,EAAE,CAAC;CAC1C;AAED;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,mBAAmB,CAAC;AAEnE;;;;;;GAMG;AACH,oBAAY,cAAc;IACtB,kDAAkD;IAClD,WAAW,IAAA;IAEX,kEAAkE;IAClE,qBAAqB,IAAA;IAErB,qFAAqF;IACrF,qBAAqB,IAAA;IAErB,wFAAwF;IACxF,wBAAwB,IAAA;IAExB,yFAAyF;IACzF,sBAAsB,IAAA;IAEtB;kEAC8D;IAC9D,0BAA0B,IAAA;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,KAAK,CAAC"}
@@ -1,64 +0,0 @@
1
- /*
2
- Copyright 2021 The Matrix.org Foundation C.I.C.
3
-
4
- Licensed under the Apache License, Version 2.0 (the "License");
5
- you may not use this file except in compliance with the License.
6
- You may obtain a copy of the License at
7
-
8
- http://www.apache.org/licenses/LICENSE-2.0
9
-
10
- Unless required by applicable law or agreed to in writing, software
11
- distributed under the License is distributed on an "AS IS" BASIS,
12
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- See the License for the specific language governing permissions and
14
- limitations under the License.
15
- */
16
-
17
- /**
18
- * Internal module. Definitions for storage for the crypto module
19
- */
20
-
21
- /**
22
- * Abstraction of things that can store data required for end-to-end encryption
23
- */
24
-
25
- /** Data on a Megolm session */
26
-
27
- /** Extended data on a Megolm session */
28
-
29
- /** Data on an Olm session */
30
-
31
- /**
32
- * Represents an outgoing room key request
33
- */
34
-
35
- /**
36
- * Keys for the `account` object store to store the migration state.
37
- * Values are defined in `MigrationState`.
38
- * @internal
39
- */
40
- export var ACCOUNT_OBJECT_KEY_MIGRATION_STATE = "migrationState";
41
-
42
- /**
43
- * A record of which steps have been completed in the libolm to Rust Crypto migration.
44
- *
45
- * Used by {@link CryptoStore#getMigrationState} and {@link CryptoStore#setMigrationState}.
46
- *
47
- * @internal
48
- */
49
- export var MigrationState = /*#__PURE__*/function (MigrationState) {
50
- MigrationState[MigrationState["NOT_STARTED"] = 0] = "NOT_STARTED";
51
- MigrationState[MigrationState["INITIAL_DATA_MIGRATED"] = 1] = "INITIAL_DATA_MIGRATED";
52
- MigrationState[MigrationState["OLM_SESSIONS_MIGRATED"] = 2] = "OLM_SESSIONS_MIGRATED";
53
- MigrationState[MigrationState["MEGOLM_SESSIONS_MIGRATED"] = 3] = "MEGOLM_SESSIONS_MIGRATED";
54
- MigrationState[MigrationState["ROOM_SETTINGS_MIGRATED"] = 4] = "ROOM_SETTINGS_MIGRATED";
55
- MigrationState[MigrationState["INITIAL_OWN_KEY_QUERY_DONE"] = 5] = "INITIAL_OWN_KEY_QUERY_DONE";
56
- return MigrationState;
57
- }({});
58
-
59
- /**
60
- * The size of batches to be returned by {@link CryptoStore#getEndToEndSessionsBatch} and
61
- * {@link CryptoStore#getEndToEndInboundGroupSessionsBatch}.
62
- */
63
- export var SESSION_BATCH_SIZE = 50;
64
- //# sourceMappingURL=base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.js","names":["ACCOUNT_OBJECT_KEY_MIGRATION_STATE","MigrationState","SESSION_BATCH_SIZE"],"sources":["../../../src/crypto/store/base.ts"],"sourcesContent":["/*\nCopyright 2021 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport { IRoomKeyRequestBody, IRoomKeyRequestRecipient } from \"../index.ts\";\nimport { RoomKeyRequestState } from \"../OutgoingRoomKeyRequestManager.ts\";\nimport { IOlmDevice } from \"../algorithms/megolm.ts\";\nimport { TrackingStatus } from \"../DeviceList.ts\";\nimport { IRoomEncryption } from \"../RoomList.ts\";\nimport { IDevice } from \"../deviceinfo.ts\";\nimport { ICrossSigningInfo } from \"../CrossSigning.ts\";\nimport { Logger } from \"../../logger.ts\";\nimport { InboundGroupSessionData } from \"../OlmDevice.ts\";\nimport { MatrixEvent } from \"../../models/event.ts\";\nimport { DehydrationManager } from \"../dehydration.ts\";\nimport { CrossSigningKeyInfo } from \"../../crypto-api/index.ts\";\nimport { AESEncryptedSecretStoragePayload } from \"../../@types/AESEncryptedSecretStoragePayload.ts\";\n\n/**\n * Internal module. Definitions for storage for the crypto module\n */\n\nexport interface SecretStorePrivateKeys {\n \"dehydration\": {\n keyInfo: DehydrationManager[\"keyInfo\"];\n key: AESEncryptedSecretStoragePayload;\n deviceDisplayName: string;\n time: number;\n } | null;\n \"m.megolm_backup.v1\": AESEncryptedSecretStoragePayload;\n}\n\n/**\n * Abstraction of things that can store data required for end-to-end encryption\n */\nexport interface CryptoStore {\n /**\n * Returns true if this CryptoStore has ever been initialised (ie, it might contain data).\n *\n * Unlike the rest of the methods in this interface, can be called before {@link CryptoStore#startup}.\n *\n * @internal\n */\n containsData(): Promise<boolean>;\n\n /**\n * Initialise this crypto store.\n *\n * Typically, this involves provisioning storage, and migrating any existing data to the current version of the\n * storage schema where appropriate.\n *\n * Must be called before any of the rest of the methods in this interface.\n */\n startup(): Promise<CryptoStore>;\n\n deleteAllData(): Promise<void>;\n\n /**\n * Get data on how much of the libolm to Rust Crypto migration has been done.\n *\n * @internal\n */\n getMigrationState(): Promise<MigrationState>;\n\n /**\n * Set data on how much of the libolm to Rust Crypto migration has been done.\n *\n * @internal\n */\n setMigrationState(migrationState: MigrationState): Promise<void>;\n\n getOrAddOutgoingRoomKeyRequest(request: OutgoingRoomKeyRequest): Promise<OutgoingRoomKeyRequest>;\n getOutgoingRoomKeyRequest(requestBody: IRoomKeyRequestBody): Promise<OutgoingRoomKeyRequest | null>;\n getOutgoingRoomKeyRequestByState(wantedStates: number[]): Promise<OutgoingRoomKeyRequest | null>;\n getAllOutgoingRoomKeyRequestsByState(wantedState: number): Promise<OutgoingRoomKeyRequest[]>;\n getOutgoingRoomKeyRequestsByTarget(\n userId: string,\n deviceId: string,\n wantedStates: number[],\n ): Promise<OutgoingRoomKeyRequest[]>;\n updateOutgoingRoomKeyRequest(\n requestId: string,\n expectedState: number,\n updates: Partial<OutgoingRoomKeyRequest>,\n ): Promise<OutgoingRoomKeyRequest | null>;\n deleteOutgoingRoomKeyRequest(requestId: string, expectedState: number): Promise<OutgoingRoomKeyRequest | null>;\n\n // Olm Account\n getAccount(txn: unknown, func: (accountPickle: string | null) => void): void;\n storeAccount(txn: unknown, accountPickle: string): void;\n getCrossSigningKeys(txn: unknown, func: (keys: Record<string, CrossSigningKeyInfo> | null) => void): void;\n getSecretStorePrivateKey<K extends keyof SecretStorePrivateKeys>(\n txn: unknown,\n func: (key: SecretStorePrivateKeys[K] | null) => void,\n type: K,\n ): void;\n storeCrossSigningKeys(txn: unknown, keys: Record<string, CrossSigningKeyInfo>): void;\n storeSecretStorePrivateKey<K extends keyof SecretStorePrivateKeys>(\n txn: unknown,\n type: K,\n key: SecretStorePrivateKeys[K],\n ): void;\n\n // Olm Sessions\n countEndToEndSessions(txn: unknown, func: (count: number) => void): void;\n getEndToEndSession(\n deviceKey: string,\n sessionId: string,\n txn: unknown,\n func: (session: ISessionInfo | null) => void,\n ): void;\n getEndToEndSessions(\n deviceKey: string,\n txn: unknown,\n func: (sessions: { [sessionId: string]: ISessionInfo }) => void,\n ): void;\n getAllEndToEndSessions(txn: unknown, func: (session: ISessionInfo | null) => void): void;\n storeEndToEndSession(deviceKey: string, sessionId: string, sessionInfo: ISessionInfo, txn: unknown): void;\n storeEndToEndSessionProblem(deviceKey: string, type: string, fixed: boolean): Promise<void>;\n getEndToEndSessionProblem(deviceKey: string, timestamp: number): Promise<IProblem | null>;\n filterOutNotifiedErrorDevices(devices: IOlmDevice[]): Promise<IOlmDevice[]>;\n\n /**\n * Get a batch of end-to-end sessions from the database.\n *\n * @returns A batch of Olm Sessions, or `null` if no sessions are left.\n * @internal\n */\n getEndToEndSessionsBatch(): Promise<ISessionInfo[] | null>;\n\n /**\n * Delete a batch of end-to-end sessions from the database.\n *\n * Any sessions in the list which are not found are silently ignored.\n *\n * @internal\n */\n deleteEndToEndSessionsBatch(sessions: { deviceKey?: string; sessionId?: string }[]): Promise<void>;\n\n // Inbound Group Sessions\n getEndToEndInboundGroupSession(\n senderCurve25519Key: string,\n sessionId: string,\n txn: unknown,\n func: (groupSession: InboundGroupSessionData | null, groupSessionWithheld: IWithheld | null) => void,\n ): void;\n getAllEndToEndInboundGroupSessions(txn: unknown, func: (session: ISession | null) => void): void;\n addEndToEndInboundGroupSession(\n senderCurve25519Key: string,\n sessionId: string,\n sessionData: InboundGroupSessionData,\n txn: unknown,\n ): void;\n storeEndToEndInboundGroupSession(\n senderCurve25519Key: string,\n sessionId: string,\n sessionData: InboundGroupSessionData,\n txn: unknown,\n ): void;\n storeEndToEndInboundGroupSessionWithheld(\n senderCurve25519Key: string,\n sessionId: string,\n sessionData: IWithheld,\n txn: unknown,\n ): void;\n\n /**\n * Count the number of Megolm sessions in the database.\n *\n * @internal\n */\n countEndToEndInboundGroupSessions(): Promise<number>;\n\n /**\n * Get a batch of Megolm sessions from the database.\n *\n * @returns A batch of Megolm Sessions, or `null` if no sessions are left.\n * @internal\n */\n getEndToEndInboundGroupSessionsBatch(): Promise<SessionExtended[] | null>;\n\n /**\n * Delete a batch of Megolm sessions from the database.\n *\n * Any sessions in the list which are not found are silently ignored.\n *\n * @internal\n */\n deleteEndToEndInboundGroupSessionsBatch(sessions: { senderKey: string; sessionId: string }[]): Promise<void>;\n\n // Device Data\n getEndToEndDeviceData(txn: unknown, func: (deviceData: IDeviceData | null) => void): void;\n storeEndToEndDeviceData(deviceData: IDeviceData, txn: unknown): void;\n storeEndToEndRoom(roomId: string, roomInfo: IRoomEncryption, txn: unknown): void;\n getEndToEndRooms(txn: unknown, func: (rooms: Record<string, IRoomEncryption>) => void): void;\n getSessionsNeedingBackup(limit: number): Promise<ISession[]>;\n countSessionsNeedingBackup(txn?: unknown): Promise<number>;\n unmarkSessionsNeedingBackup(sessions: ISession[], txn?: unknown): Promise<void>;\n markSessionsNeedingBackup(sessions: ISession[], txn?: unknown): Promise<void>;\n addSharedHistoryInboundGroupSession(roomId: string, senderKey: string, sessionId: string, txn?: unknown): void;\n getSharedHistoryInboundGroupSessions(\n roomId: string,\n txn?: unknown,\n ): Promise<[senderKey: string, sessionId: string][]>;\n addParkedSharedHistory(roomId: string, data: ParkedSharedHistory, txn?: unknown): void;\n takeParkedSharedHistory(roomId: string, txn?: unknown): Promise<ParkedSharedHistory[]>;\n\n // Session key backups\n doTxn<T>(mode: Mode, stores: Iterable<string>, func: (txn: unknown) => T, log?: Logger): Promise<T>;\n}\n\nexport type Mode = \"readonly\" | \"readwrite\";\n\n/** Data on a Megolm session */\nexport interface ISession {\n senderKey: string;\n sessionId: string;\n sessionData?: InboundGroupSessionData;\n}\n\n/** Extended data on a Megolm session */\nexport interface SessionExtended extends ISession {\n needsBackup: boolean;\n}\n\n/** Data on an Olm session */\nexport interface ISessionInfo {\n deviceKey?: string;\n sessionId?: string;\n session?: string;\n lastReceivedMessageTs?: number;\n}\n\nexport interface IDeviceData {\n devices: {\n [userId: string]: {\n [deviceId: string]: IDevice;\n };\n };\n trackingStatus: {\n [userId: string]: TrackingStatus;\n };\n crossSigningInfo?: Record<string, ICrossSigningInfo>;\n syncToken?: string;\n}\n\nexport interface IProblem {\n type: string;\n fixed: boolean;\n time: number;\n}\n\nexport interface IWithheld {\n // eslint-disable-next-line camelcase\n room_id: string;\n code: string;\n reason: string;\n}\n\n/**\n * Represents an outgoing room key request\n */\nexport interface OutgoingRoomKeyRequest {\n /**\n * Unique id for this request. Used for both an id within the request for later pairing with a cancellation,\n * and for the transaction id when sending the to_device messages to our local server.\n */\n requestId: string;\n requestTxnId?: string;\n /**\n * Transaction id for the cancellation, if any\n */\n cancellationTxnId?: string;\n /**\n * List of recipients for the request\n */\n recipients: IRoomKeyRequestRecipient[];\n /**\n * Parameters for the request\n */\n requestBody: IRoomKeyRequestBody;\n /**\n * current state of this request\n */\n state: RoomKeyRequestState;\n}\n\nexport interface ParkedSharedHistory {\n senderId: string;\n senderKey: string;\n sessionId: string;\n sessionKey: string;\n keysClaimed: ReturnType<MatrixEvent[\"getKeysClaimed\"]>; // XXX: Less type dependence on MatrixEvent\n forwardingCurve25519KeyChain: string[];\n}\n\n/**\n * Keys for the `account` object store to store the migration state.\n * Values are defined in `MigrationState`.\n * @internal\n */\nexport const ACCOUNT_OBJECT_KEY_MIGRATION_STATE = \"migrationState\";\n\n/**\n * A record of which steps have been completed in the libolm to Rust Crypto migration.\n *\n * Used by {@link CryptoStore#getMigrationState} and {@link CryptoStore#setMigrationState}.\n *\n * @internal\n */\nexport enum MigrationState {\n /** No migration steps have yet been completed. */\n NOT_STARTED,\n\n /** We have migrated the account data, cross-signing keys, etc. */\n INITIAL_DATA_MIGRATED,\n\n /** INITIAL_DATA_MIGRATED, and in addition, we have migrated all the Olm sessions. */\n OLM_SESSIONS_MIGRATED,\n\n /** OLM_SESSIONS_MIGRATED, and in addition, we have migrated all the Megolm sessions. */\n MEGOLM_SESSIONS_MIGRATED,\n\n /** MEGOLM_SESSIONS_MIGRATED, and in addition, we have migrated all the room settings. */\n ROOM_SETTINGS_MIGRATED,\n\n /** ROOM_SETTINGS_MIGRATED, and in addition, we have done the first own keys query in order to\n * load the public part of the keys that have been migrated */\n INITIAL_OWN_KEY_QUERY_DONE,\n}\n\n/**\n * The size of batches to be returned by {@link CryptoStore#getEndToEndSessionsBatch} and\n * {@link CryptoStore#getEndToEndInboundGroupSessionsBatch}.\n */\nexport const SESSION_BATCH_SIZE = 50;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAgBA;AACA;AACA;;AAYA;AACA;AACA;;AAmLA;;AAOA;;AAKA;;AAkCA;AACA;AACA;;AAmCA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMA,kCAAkC,GAAG,gBAAgB;;AAElE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAYC,cAAc,0BAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;;AAqB1B;AACA;AACA;AACA;AACA,OAAO,IAAMC,kBAAkB,GAAG,EAAE","ignoreList":[]}
@@ -1,187 +0,0 @@
1
- import { Logger } from "../../logger.ts";
2
- import { CryptoStore, IDeviceData, IProblem, ISession, SessionExtended, ISessionInfo, IWithheld, MigrationState, Mode, OutgoingRoomKeyRequest, ParkedSharedHistory, SecretStorePrivateKeys } from "./base.ts";
3
- import { IRoomKeyRequestBody } from "../index.ts";
4
- import { IOlmDevice } from "../algorithms/megolm.ts";
5
- import { IRoomEncryption } from "../RoomList.ts";
6
- import { InboundGroupSessionData } from "../OlmDevice.ts";
7
- import { CrossSigningKeyInfo } from "../../crypto-api/index.ts";
8
- /**
9
- * Implementation of a CryptoStore which is backed by an existing
10
- * IndexedDB connection. Generally you want IndexedDBCryptoStore
11
- * which connects to the database and defers to one of these.
12
- *
13
- * @internal
14
- */
15
- export declare class Backend implements CryptoStore {
16
- private db;
17
- private nextTxnId;
18
- /**
19
- */
20
- constructor(db: IDBDatabase);
21
- containsData(): Promise<boolean>;
22
- startup(): Promise<CryptoStore>;
23
- deleteAllData(): Promise<void>;
24
- /**
25
- * Get data on how much of the libolm to Rust Crypto migration has been done.
26
- *
27
- * Implementation of {@link CryptoStore.getMigrationState}.
28
- */
29
- getMigrationState(): Promise<MigrationState>;
30
- /**
31
- * Set data on how much of the libolm to Rust Crypto migration has been done.
32
- *
33
- * Implementation of {@link CryptoStore.setMigrationState}.
34
- */
35
- setMigrationState(migrationState: MigrationState): Promise<void>;
36
- /**
37
- * Look for an existing outgoing room key request, and if none is found,
38
- * add a new one
39
- *
40
- *
41
- * @returns resolves to
42
- * {@link OutgoingRoomKeyRequest}: either the
43
- * same instance as passed in, or the existing one.
44
- */
45
- getOrAddOutgoingRoomKeyRequest(request: OutgoingRoomKeyRequest): Promise<OutgoingRoomKeyRequest>;
46
- /**
47
- * Look for an existing room key request
48
- *
49
- * @param requestBody - existing request to look for
50
- *
51
- * @returns resolves to the matching
52
- * {@link OutgoingRoomKeyRequest}, or null if
53
- * not found
54
- */
55
- getOutgoingRoomKeyRequest(requestBody: IRoomKeyRequestBody): Promise<OutgoingRoomKeyRequest | null>;
56
- /**
57
- * look for an existing room key request in the db
58
- *
59
- * @internal
60
- * @param txn - database transaction
61
- * @param requestBody - existing request to look for
62
- * @param callback - function to call with the results of the
63
- * search. Either passed a matching
64
- * {@link OutgoingRoomKeyRequest}, or null if
65
- * not found.
66
- */
67
- private _getOutgoingRoomKeyRequest;
68
- /**
69
- * Look for room key requests by state
70
- *
71
- * @param wantedStates - list of acceptable states
72
- *
73
- * @returns resolves to the a
74
- * {@link OutgoingRoomKeyRequest}, or null if
75
- * there are no pending requests in those states. If there are multiple
76
- * requests in those states, an arbitrary one is chosen.
77
- */
78
- getOutgoingRoomKeyRequestByState(wantedStates: number[]): Promise<OutgoingRoomKeyRequest | null>;
79
- /**
80
- *
81
- * @returns All elements in a given state
82
- */
83
- getAllOutgoingRoomKeyRequestsByState(wantedState: number): Promise<OutgoingRoomKeyRequest[]>;
84
- getOutgoingRoomKeyRequestsByTarget(userId: string, deviceId: string, wantedStates: number[]): Promise<OutgoingRoomKeyRequest[]>;
85
- /**
86
- * Look for an existing room key request by id and state, and update it if
87
- * found
88
- *
89
- * @param requestId - ID of request to update
90
- * @param expectedState - state we expect to find the request in
91
- * @param updates - name/value map of updates to apply
92
- *
93
- * @returns resolves to
94
- * {@link OutgoingRoomKeyRequest}
95
- * updated request, or null if no matching row was found
96
- */
97
- updateOutgoingRoomKeyRequest(requestId: string, expectedState: number, updates: Partial<OutgoingRoomKeyRequest>): Promise<OutgoingRoomKeyRequest | null>;
98
- /**
99
- * Look for an existing room key request by id and state, and delete it if
100
- * found
101
- *
102
- * @param requestId - ID of request to update
103
- * @param expectedState - state we expect to find the request in
104
- *
105
- * @returns resolves once the operation is completed
106
- */
107
- deleteOutgoingRoomKeyRequest(requestId: string, expectedState: number): Promise<OutgoingRoomKeyRequest | null>;
108
- getAccount(txn: IDBTransaction, func: (accountPickle: string | null) => void): void;
109
- storeAccount(txn: IDBTransaction, accountPickle: string): void;
110
- getCrossSigningKeys(txn: IDBTransaction, func: (keys: Record<string, CrossSigningKeyInfo> | null) => void): void;
111
- getSecretStorePrivateKey<K extends keyof SecretStorePrivateKeys>(txn: IDBTransaction, func: (key: SecretStorePrivateKeys[K] | null) => void, type: K): void;
112
- storeCrossSigningKeys(txn: IDBTransaction, keys: Record<string, CrossSigningKeyInfo>): void;
113
- storeSecretStorePrivateKey<K extends keyof SecretStorePrivateKeys>(txn: IDBTransaction, type: K, key: SecretStorePrivateKeys[K]): void;
114
- countEndToEndSessions(txn: IDBTransaction, func: (count: number) => void): void;
115
- getEndToEndSessions(deviceKey: string, txn: IDBTransaction, func: (sessions: {
116
- [sessionId: string]: ISessionInfo;
117
- }) => void): void;
118
- getEndToEndSession(deviceKey: string, sessionId: string, txn: IDBTransaction, func: (session: ISessionInfo | null) => void): void;
119
- getAllEndToEndSessions(txn: IDBTransaction, func: (session: ISessionInfo | null) => void): void;
120
- storeEndToEndSession(deviceKey: string, sessionId: string, sessionInfo: ISessionInfo, txn: IDBTransaction): void;
121
- storeEndToEndSessionProblem(deviceKey: string, type: string, fixed: boolean): Promise<void>;
122
- getEndToEndSessionProblem(deviceKey: string, timestamp: number): Promise<IProblem | null>;
123
- filterOutNotifiedErrorDevices(devices: IOlmDevice[]): Promise<IOlmDevice[]>;
124
- /**
125
- * Fetch a batch of Olm sessions from the database.
126
- *
127
- * Implementation of {@link CryptoStore.getEndToEndSessionsBatch}.
128
- */
129
- getEndToEndSessionsBatch(): Promise<null | ISessionInfo[]>;
130
- /**
131
- * Delete a batch of Olm sessions from the database.
132
- *
133
- * Implementation of {@link CryptoStore.deleteEndToEndSessionsBatch}.
134
- *
135
- * @internal
136
- */
137
- deleteEndToEndSessionsBatch(sessions: {
138
- deviceKey: string;
139
- sessionId: string;
140
- }[]): Promise<void>;
141
- getEndToEndInboundGroupSession(senderCurve25519Key: string, sessionId: string, txn: IDBTransaction, func: (groupSession: InboundGroupSessionData | null, groupSessionWithheld: IWithheld | null) => void): void;
142
- getAllEndToEndInboundGroupSessions(txn: IDBTransaction, func: (session: ISession | null) => void): void;
143
- addEndToEndInboundGroupSession(senderCurve25519Key: string, sessionId: string, sessionData: InboundGroupSessionData, txn: IDBTransaction): void;
144
- storeEndToEndInboundGroupSession(senderCurve25519Key: string, sessionId: string, sessionData: InboundGroupSessionData, txn: IDBTransaction): void;
145
- storeEndToEndInboundGroupSessionWithheld(senderCurve25519Key: string, sessionId: string, sessionData: IWithheld, txn: IDBTransaction): void;
146
- /**
147
- * Count the number of Megolm sessions in the database.
148
- *
149
- * Implementation of {@link CryptoStore.countEndToEndInboundGroupSessions}.
150
- *
151
- * @internal
152
- */
153
- countEndToEndInboundGroupSessions(): Promise<number>;
154
- /**
155
- * Fetch a batch of Megolm sessions from the database.
156
- *
157
- * Implementation of {@link CryptoStore.getEndToEndInboundGroupSessionsBatch}.
158
- */
159
- getEndToEndInboundGroupSessionsBatch(): Promise<null | SessionExtended[]>;
160
- /**
161
- * Delete a batch of Megolm sessions from the database.
162
- *
163
- * Implementation of {@link CryptoStore.deleteEndToEndInboundGroupSessionsBatch}.
164
- *
165
- * @internal
166
- */
167
- deleteEndToEndInboundGroupSessionsBatch(sessions: {
168
- senderKey: string;
169
- sessionId: string;
170
- }[]): Promise<void>;
171
- getEndToEndDeviceData(txn: IDBTransaction, func: (deviceData: IDeviceData | null) => void): void;
172
- storeEndToEndDeviceData(deviceData: IDeviceData, txn: IDBTransaction): void;
173
- storeEndToEndRoom(roomId: string, roomInfo: IRoomEncryption, txn: IDBTransaction): void;
174
- getEndToEndRooms(txn: IDBTransaction, func: (rooms: Record<string, IRoomEncryption>) => void): void;
175
- getSessionsNeedingBackup(limit: number): Promise<ISession[]>;
176
- countSessionsNeedingBackup(txn?: IDBTransaction): Promise<number>;
177
- unmarkSessionsNeedingBackup(sessions: ISession[], txn?: IDBTransaction): Promise<void>;
178
- markSessionsNeedingBackup(sessions: ISession[], txn?: IDBTransaction): Promise<void>;
179
- addSharedHistoryInboundGroupSession(roomId: string, senderKey: string, sessionId: string, txn?: IDBTransaction): void;
180
- getSharedHistoryInboundGroupSessions(roomId: string, txn?: IDBTransaction): Promise<[senderKey: string, sessionId: string][]>;
181
- addParkedSharedHistory(roomId: string, parkedData: ParkedSharedHistory, txn?: IDBTransaction): void;
182
- takeParkedSharedHistory(roomId: string, txn?: IDBTransaction): Promise<ParkedSharedHistory[]>;
183
- doTxn<T>(mode: Mode, stores: string | string[], func: (txn: IDBTransaction) => T, log?: Logger): Promise<T>;
184
- }
185
- export declare const VERSION: number;
186
- export declare function upgradeDatabase(db: IDBDatabase, oldVersion: number): void;
187
- //# sourceMappingURL=indexeddb-crypto-store-backend.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"indexeddb-crypto-store-backend.d.ts","sourceRoot":"","sources":["../../../src/crypto/store/indexeddb-crypto-store-backend.ts"],"names":[],"mappings":"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"}