@bsv/wallet-toolbox 1.3.21 → 1.3.22

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 (502) hide show
  1. package/mobile/out/src/CWIStyleWalletManager.d.ts +437 -0
  2. package/mobile/out/src/CWIStyleWalletManager.d.ts.map +1 -0
  3. package/mobile/out/src/CWIStyleWalletManager.js +1255 -0
  4. package/mobile/out/src/CWIStyleWalletManager.js.map +1 -0
  5. package/mobile/out/src/SetupClient.d.ts +126 -0
  6. package/mobile/out/src/SetupClient.d.ts.map +1 -0
  7. package/mobile/out/src/SetupClient.js +220 -0
  8. package/mobile/out/src/SetupClient.js.map +1 -0
  9. package/mobile/out/src/SetupWallet.d.ts +100 -0
  10. package/mobile/out/src/SetupWallet.d.ts.map +1 -0
  11. package/mobile/out/src/SetupWallet.js +3 -0
  12. package/mobile/out/src/SetupWallet.js.map +1 -0
  13. package/mobile/out/src/SimpleWalletManager.d.ts +169 -0
  14. package/mobile/out/src/SimpleWalletManager.d.ts.map +1 -0
  15. package/mobile/out/src/SimpleWalletManager.js +315 -0
  16. package/mobile/out/src/SimpleWalletManager.js.map +1 -0
  17. package/mobile/out/src/Wallet.d.ts +177 -0
  18. package/mobile/out/src/Wallet.d.ts.map +1 -0
  19. package/mobile/out/src/Wallet.js +742 -0
  20. package/mobile/out/src/Wallet.js.map +1 -0
  21. package/mobile/out/src/WalletAuthenticationManager.d.ts +33 -0
  22. package/mobile/out/src/WalletAuthenticationManager.d.ts.map +1 -0
  23. package/mobile/out/src/WalletAuthenticationManager.js +113 -0
  24. package/mobile/out/src/WalletAuthenticationManager.js.map +1 -0
  25. package/mobile/out/src/WalletPermissionsManager.d.ts +598 -0
  26. package/mobile/out/src/WalletPermissionsManager.d.ts.map +1 -0
  27. package/mobile/out/src/WalletPermissionsManager.js +1868 -0
  28. package/mobile/out/src/WalletPermissionsManager.js.map +1 -0
  29. package/mobile/out/src/WalletSettingsManager.d.ts +52 -0
  30. package/mobile/out/src/WalletSettingsManager.d.ts.map +1 -0
  31. package/mobile/out/src/WalletSettingsManager.js +82 -0
  32. package/mobile/out/src/WalletSettingsManager.js.map +1 -0
  33. package/mobile/out/src/index.client.d.ts +19 -0
  34. package/mobile/out/src/index.client.d.ts.map +1 -0
  35. package/mobile/out/src/index.client.js +58 -0
  36. package/mobile/out/src/index.client.js.map +1 -0
  37. package/mobile/out/src/index.mobile.d.ts +19 -0
  38. package/mobile/out/src/index.mobile.d.ts.map +1 -0
  39. package/mobile/out/src/index.mobile.js +58 -0
  40. package/mobile/out/src/index.mobile.js.map +1 -0
  41. package/mobile/out/src/monitor/Monitor.d.ts +91 -0
  42. package/mobile/out/src/monitor/Monitor.d.ts.map +1 -0
  43. package/mobile/out/src/monitor/Monitor.js +298 -0
  44. package/mobile/out/src/monitor/Monitor.js.map +1 -0
  45. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.d.ts +53 -0
  46. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -0
  47. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.js +194 -0
  48. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -0
  49. package/mobile/out/src/monitor/tasks/TaskCheckNoSends.d.ts +33 -0
  50. package/mobile/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -0
  51. package/mobile/out/src/monitor/tasks/TaskCheckNoSends.js +65 -0
  52. package/mobile/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -0
  53. package/mobile/out/src/monitor/tasks/TaskClock.d.ts +14 -0
  54. package/mobile/out/src/monitor/tasks/TaskClock.d.ts.map +1 -0
  55. package/mobile/out/src/monitor/tasks/TaskClock.js +27 -0
  56. package/mobile/out/src/monitor/tasks/TaskClock.js.map +1 -0
  57. package/mobile/out/src/monitor/tasks/TaskFailAbandoned.d.ts +20 -0
  58. package/mobile/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -0
  59. package/mobile/out/src/monitor/tasks/TaskFailAbandoned.js +52 -0
  60. package/mobile/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -0
  61. package/mobile/out/src/monitor/tasks/TaskNewHeader.d.ts +15 -0
  62. package/mobile/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -0
  63. package/mobile/out/src/monitor/tasks/TaskNewHeader.js +43 -0
  64. package/mobile/out/src/monitor/tasks/TaskNewHeader.js.map +1 -0
  65. package/mobile/out/src/monitor/tasks/TaskPurge.d.ts +45 -0
  66. package/mobile/out/src/monitor/tasks/TaskPurge.d.ts.map +1 -0
  67. package/mobile/out/src/monitor/tasks/TaskPurge.js +34 -0
  68. package/mobile/out/src/monitor/tasks/TaskPurge.js.map +1 -0
  69. package/mobile/out/src/monitor/tasks/TaskReviewStatus.d.ts +26 -0
  70. package/mobile/out/src/monitor/tasks/TaskReviewStatus.d.ts.map +1 -0
  71. package/mobile/out/src/monitor/tasks/TaskReviewStatus.js +43 -0
  72. package/mobile/out/src/monitor/tasks/TaskReviewStatus.js.map +1 -0
  73. package/mobile/out/src/monitor/tasks/TaskSendWaiting.d.ts +35 -0
  74. package/mobile/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -0
  75. package/mobile/out/src/monitor/tasks/TaskSendWaiting.js +107 -0
  76. package/mobile/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -0
  77. package/mobile/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts +12 -0
  78. package/mobile/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts.map +1 -0
  79. package/mobile/out/src/monitor/tasks/TaskSyncWhenIdle.js +22 -0
  80. package/mobile/out/src/monitor/tasks/TaskSyncWhenIdle.js.map +1 -0
  81. package/mobile/out/src/monitor/tasks/TaskUnFail.d.ts +41 -0
  82. package/mobile/out/src/monitor/tasks/TaskUnFail.d.ts.map +1 -0
  83. package/mobile/out/src/monitor/tasks/TaskUnFail.js +144 -0
  84. package/mobile/out/src/monitor/tasks/TaskUnFail.js.map +1 -0
  85. package/mobile/out/src/monitor/tasks/WalletMonitorTask.d.ts +40 -0
  86. package/mobile/out/src/monitor/tasks/WalletMonitorTask.d.ts.map +1 -0
  87. package/mobile/out/src/monitor/tasks/WalletMonitorTask.js +37 -0
  88. package/mobile/out/src/monitor/tasks/WalletMonitorTask.js.map +1 -0
  89. package/mobile/out/src/sdk/CertOpsWallet.d.ts +7 -0
  90. package/mobile/out/src/sdk/CertOpsWallet.d.ts.map +1 -0
  91. package/mobile/out/src/sdk/CertOpsWallet.js +3 -0
  92. package/mobile/out/src/sdk/CertOpsWallet.js.map +1 -0
  93. package/mobile/out/src/sdk/PrivilegedKeyManager.d.ts +125 -0
  94. package/mobile/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -0
  95. package/mobile/out/src/sdk/PrivilegedKeyManager.js +293 -0
  96. package/mobile/out/src/sdk/PrivilegedKeyManager.js.map +1 -0
  97. package/mobile/out/src/sdk/WERR_errors.d.ts +115 -0
  98. package/mobile/out/src/sdk/WERR_errors.d.ts.map +1 -0
  99. package/mobile/out/src/sdk/WERR_errors.js +158 -0
  100. package/mobile/out/src/sdk/WERR_errors.js.map +1 -0
  101. package/mobile/out/src/sdk/WalletError.d.ts +44 -0
  102. package/mobile/out/src/sdk/WalletError.d.ts.map +1 -0
  103. package/mobile/out/src/sdk/WalletError.js +118 -0
  104. package/mobile/out/src/sdk/WalletError.js.map +1 -0
  105. package/mobile/out/src/sdk/WalletServices.interfaces.d.ts +430 -0
  106. package/mobile/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -0
  107. package/mobile/out/src/sdk/WalletServices.interfaces.js +3 -0
  108. package/mobile/out/src/sdk/WalletServices.interfaces.js.map +1 -0
  109. package/mobile/out/src/sdk/WalletSigner.interfaces.d.ts +10 -0
  110. package/mobile/out/src/sdk/WalletSigner.interfaces.d.ts.map +1 -0
  111. package/mobile/out/src/sdk/WalletSigner.interfaces.js +3 -0
  112. package/mobile/out/src/sdk/WalletSigner.interfaces.js.map +1 -0
  113. package/mobile/out/src/sdk/WalletStorage.interfaces.d.ts +452 -0
  114. package/mobile/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -0
  115. package/mobile/out/src/sdk/WalletStorage.interfaces.js +3 -0
  116. package/mobile/out/src/sdk/WalletStorage.interfaces.js.map +1 -0
  117. package/mobile/out/src/sdk/index.d.ts +10 -0
  118. package/mobile/out/src/sdk/index.d.ts.map +1 -0
  119. package/mobile/out/src/sdk/index.js +26 -0
  120. package/mobile/out/src/sdk/index.js.map +1 -0
  121. package/mobile/out/src/sdk/types.d.ts +158 -0
  122. package/mobile/out/src/sdk/types.d.ts.map +1 -0
  123. package/mobile/out/src/sdk/types.js +90 -0
  124. package/mobile/out/src/sdk/types.js.map +1 -0
  125. package/mobile/out/src/sdk/validationHelpers.d.ts +301 -0
  126. package/mobile/out/src/sdk/validationHelpers.d.ts.map +1 -0
  127. package/mobile/out/src/sdk/validationHelpers.js +629 -0
  128. package/mobile/out/src/sdk/validationHelpers.js.map +1 -0
  129. package/mobile/out/src/services/ServiceCollection.d.ts +25 -0
  130. package/mobile/out/src/services/ServiceCollection.d.ts.map +1 -0
  131. package/mobile/out/src/services/ServiceCollection.js +43 -0
  132. package/mobile/out/src/services/ServiceCollection.js.map +1 -0
  133. package/mobile/out/src/services/Services.d.ts +67 -0
  134. package/mobile/out/src/services/Services.d.ts.map +1 -0
  135. package/mobile/out/src/services/Services.js +391 -0
  136. package/mobile/out/src/services/Services.js.map +1 -0
  137. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +15 -0
  138. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -0
  139. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.js +51 -0
  140. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -0
  141. package/mobile/out/src/services/chaintracker/chaintracks/BlockHeaderApi.d.ts +98 -0
  142. package/mobile/out/src/services/chaintracker/chaintracks/BlockHeaderApi.d.ts.map +1 -0
  143. package/mobile/out/src/services/chaintracker/chaintracks/BlockHeaderApi.js +38 -0
  144. package/mobile/out/src/services/chaintracker/chaintracks/BlockHeaderApi.js.map +1 -0
  145. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +36 -0
  146. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -0
  147. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +128 -0
  148. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -0
  149. package/mobile/out/src/services/chaintracker/chaintracks/index.d.ts +3 -0
  150. package/mobile/out/src/services/chaintracker/chaintracks/index.d.ts.map +1 -0
  151. package/mobile/out/src/services/chaintracker/chaintracks/index.js +19 -0
  152. package/mobile/out/src/services/chaintracker/chaintracks/index.js.map +1 -0
  153. package/mobile/out/src/services/chaintracker/index.d.ts +3 -0
  154. package/mobile/out/src/services/chaintracker/index.d.ts.map +1 -0
  155. package/mobile/out/src/services/chaintracker/index.js +19 -0
  156. package/mobile/out/src/services/chaintracker/index.js.map +1 -0
  157. package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts +4 -0
  158. package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -0
  159. package/mobile/out/src/services/createDefaultWalletServicesOptions.js +46 -0
  160. package/mobile/out/src/services/createDefaultWalletServicesOptions.js.map +1 -0
  161. package/mobile/out/src/services/index.d.ts +2 -0
  162. package/mobile/out/src/services/index.d.ts.map +1 -0
  163. package/mobile/out/src/services/index.js +18 -0
  164. package/mobile/out/src/services/index.js.map +1 -0
  165. package/mobile/out/src/services/providers/ARC.d.ts +91 -0
  166. package/mobile/out/src/services/providers/ARC.d.ts.map +1 -0
  167. package/mobile/out/src/services/providers/ARC.js +267 -0
  168. package/mobile/out/src/services/providers/ARC.js.map +1 -0
  169. package/mobile/out/src/services/providers/Bitails.d.ts +49 -0
  170. package/mobile/out/src/services/providers/Bitails.d.ts.map +1 -0
  171. package/mobile/out/src/services/providers/Bitails.js +222 -0
  172. package/mobile/out/src/services/providers/Bitails.js.map +1 -0
  173. package/mobile/out/src/services/providers/SdkWhatsOnChain.d.ts +21 -0
  174. package/mobile/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -0
  175. package/mobile/out/src/services/providers/SdkWhatsOnChain.js +67 -0
  176. package/mobile/out/src/services/providers/SdkWhatsOnChain.js.map +1 -0
  177. package/mobile/out/src/services/providers/WhatsOnChain.d.ts +71 -0
  178. package/mobile/out/src/services/providers/WhatsOnChain.d.ts.map +1 -0
  179. package/mobile/out/src/services/providers/WhatsOnChain.js +582 -0
  180. package/mobile/out/src/services/providers/WhatsOnChain.js.map +1 -0
  181. package/mobile/out/src/services/providers/echangeRates.d.ts +12 -0
  182. package/mobile/out/src/services/providers/echangeRates.d.ts.map +1 -0
  183. package/mobile/out/src/services/providers/echangeRates.js +237 -0
  184. package/mobile/out/src/services/providers/echangeRates.js.map +1 -0
  185. package/mobile/out/src/services/providers/getBeefForTxid.d.ts +4 -0
  186. package/mobile/out/src/services/providers/getBeefForTxid.d.ts.map +1 -0
  187. package/mobile/out/src/services/providers/getBeefForTxid.js +286 -0
  188. package/mobile/out/src/services/providers/getBeefForTxid.js.map +1 -0
  189. package/mobile/out/src/signer/WalletSigner.d.ts +11 -0
  190. package/mobile/out/src/signer/WalletSigner.d.ts.map +1 -0
  191. package/mobile/out/src/signer/WalletSigner.js +13 -0
  192. package/mobile/out/src/signer/WalletSigner.js.map +1 -0
  193. package/mobile/out/src/signer/methods/acquireDirectCertificate.d.ts +4 -0
  194. package/mobile/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -0
  195. package/mobile/out/src/signer/methods/acquireDirectCertificate.js +45 -0
  196. package/mobile/out/src/signer/methods/acquireDirectCertificate.js.map +1 -0
  197. package/mobile/out/src/signer/methods/buildSignableTransaction.d.ts +10 -0
  198. package/mobile/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -0
  199. package/mobile/out/src/signer/methods/buildSignableTransaction.js +126 -0
  200. package/mobile/out/src/signer/methods/buildSignableTransaction.js.map +1 -0
  201. package/mobile/out/src/signer/methods/createAction.d.ts +20 -0
  202. package/mobile/out/src/signer/methods/createAction.d.ts.map +1 -0
  203. package/mobile/out/src/signer/methods/createAction.js +160 -0
  204. package/mobile/out/src/signer/methods/createAction.js.map +1 -0
  205. package/mobile/out/src/signer/methods/internalizeAction.d.ts +31 -0
  206. package/mobile/out/src/signer/methods/internalizeAction.d.ts.map +1 -0
  207. package/mobile/out/src/signer/methods/internalizeAction.js +95 -0
  208. package/mobile/out/src/signer/methods/internalizeAction.js.map +1 -0
  209. package/mobile/out/src/signer/methods/proveCertificate.d.ts +4 -0
  210. package/mobile/out/src/signer/methods/proveCertificate.d.ts.map +1 -0
  211. package/mobile/out/src/signer/methods/proveCertificate.js +29 -0
  212. package/mobile/out/src/signer/methods/proveCertificate.js.map +1 -0
  213. package/mobile/out/src/signer/methods/signAction.d.ts +13 -0
  214. package/mobile/out/src/signer/methods/signAction.d.ts.map +1 -0
  215. package/mobile/out/src/signer/methods/signAction.js +89 -0
  216. package/mobile/out/src/signer/methods/signAction.js.map +1 -0
  217. package/mobile/out/src/storage/StorageIdb.d.ts +208 -0
  218. package/mobile/out/src/storage/StorageIdb.d.ts.map +1 -0
  219. package/mobile/out/src/storage/StorageIdb.js +2296 -0
  220. package/mobile/out/src/storage/StorageIdb.js.map +1 -0
  221. package/mobile/out/src/storage/StorageProvider.d.ts +209 -0
  222. package/mobile/out/src/storage/StorageProvider.d.ts.map +1 -0
  223. package/mobile/out/src/storage/StorageProvider.js +550 -0
  224. package/mobile/out/src/storage/StorageProvider.js.map +1 -0
  225. package/mobile/out/src/storage/StorageReader.d.ts +76 -0
  226. package/mobile/out/src/storage/StorageReader.d.ts.map +1 -0
  227. package/mobile/out/src/storage/StorageReader.js +129 -0
  228. package/mobile/out/src/storage/StorageReader.js.map +1 -0
  229. package/mobile/out/src/storage/StorageReaderWriter.d.ts +87 -0
  230. package/mobile/out/src/storage/StorageReaderWriter.d.ts.map +1 -0
  231. package/mobile/out/src/storage/StorageReaderWriter.js +338 -0
  232. package/mobile/out/src/storage/StorageReaderWriter.js.map +1 -0
  233. package/mobile/out/src/storage/StorageSyncReader.d.ts +17 -0
  234. package/mobile/out/src/storage/StorageSyncReader.d.ts.map +1 -0
  235. package/mobile/out/src/storage/StorageSyncReader.js +38 -0
  236. package/mobile/out/src/storage/StorageSyncReader.js.map +1 -0
  237. package/mobile/out/src/storage/WalletStorageManager.d.ts +184 -0
  238. package/mobile/out/src/storage/WalletStorageManager.d.ts.map +1 -0
  239. package/mobile/out/src/storage/WalletStorageManager.js +665 -0
  240. package/mobile/out/src/storage/WalletStorageManager.js.map +1 -0
  241. package/mobile/out/src/storage/index.client.d.ts +8 -0
  242. package/mobile/out/src/storage/index.client.d.ts.map +1 -0
  243. package/mobile/out/src/storage/index.client.js +24 -0
  244. package/mobile/out/src/storage/index.client.js.map +1 -0
  245. package/mobile/out/src/storage/index.mobile.d.ts +7 -0
  246. package/mobile/out/src/storage/index.mobile.d.ts.map +1 -0
  247. package/mobile/out/src/storage/index.mobile.js +23 -0
  248. package/mobile/out/src/storage/index.mobile.js.map +1 -0
  249. package/mobile/out/src/storage/methods/ListActionsSpecOp.d.ts +16 -0
  250. package/mobile/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -0
  251. package/mobile/out/src/storage/methods/ListActionsSpecOp.js +40 -0
  252. package/mobile/out/src/storage/methods/ListActionsSpecOp.js.map +1 -0
  253. package/mobile/out/src/storage/methods/ListOutputsSpecOp.d.ts +26 -0
  254. package/mobile/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -0
  255. package/mobile/out/src/storage/methods/ListOutputsSpecOp.js +71 -0
  256. package/mobile/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -0
  257. package/mobile/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +41 -0
  258. package/mobile/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -0
  259. package/mobile/out/src/storage/methods/attemptToPostReqsToNetwork.js +320 -0
  260. package/mobile/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -0
  261. package/mobile/out/src/storage/methods/createAction.d.ts +24 -0
  262. package/mobile/out/src/storage/methods/createAction.d.ts.map +1 -0
  263. package/mobile/out/src/storage/methods/createAction.js +705 -0
  264. package/mobile/out/src/storage/methods/createAction.js.map +1 -0
  265. package/mobile/out/src/storage/methods/generateChange.d.ts +119 -0
  266. package/mobile/out/src/storage/methods/generateChange.d.ts.map +1 -0
  267. package/mobile/out/src/storage/methods/generateChange.js +448 -0
  268. package/mobile/out/src/storage/methods/generateChange.js.map +1 -0
  269. package/mobile/out/src/storage/methods/getBeefForTransaction.d.ts +22 -0
  270. package/mobile/out/src/storage/methods/getBeefForTransaction.d.ts.map +1 -0
  271. package/mobile/out/src/storage/methods/getBeefForTransaction.js +92 -0
  272. package/mobile/out/src/storage/methods/getBeefForTransaction.js.map +1 -0
  273. package/mobile/out/src/storage/methods/getSyncChunk.d.ts +10 -0
  274. package/mobile/out/src/storage/methods/getSyncChunk.d.ts.map +1 -0
  275. package/mobile/out/src/storage/methods/getSyncChunk.js +271 -0
  276. package/mobile/out/src/storage/methods/getSyncChunk.js.map +1 -0
  277. package/mobile/out/src/storage/methods/internalizeAction.d.ts +38 -0
  278. package/mobile/out/src/storage/methods/internalizeAction.d.ts.map +1 -0
  279. package/mobile/out/src/storage/methods/internalizeAction.js +371 -0
  280. package/mobile/out/src/storage/methods/internalizeAction.js.map +1 -0
  281. package/mobile/out/src/storage/methods/listActionsIdb.d.ts +5 -0
  282. package/mobile/out/src/storage/methods/listActionsIdb.d.ts.map +1 -0
  283. package/mobile/out/src/storage/methods/listActionsIdb.js +155 -0
  284. package/mobile/out/src/storage/methods/listActionsIdb.js.map +1 -0
  285. package/mobile/out/src/storage/methods/listCertificates.d.ts +5 -0
  286. package/mobile/out/src/storage/methods/listCertificates.d.ts.map +1 -0
  287. package/mobile/out/src/storage/methods/listCertificates.js +68 -0
  288. package/mobile/out/src/storage/methods/listCertificates.js.map +1 -0
  289. package/mobile/out/src/storage/methods/listOutputsIdb.d.ts +5 -0
  290. package/mobile/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -0
  291. package/mobile/out/src/storage/methods/listOutputsIdb.js +181 -0
  292. package/mobile/out/src/storage/methods/listOutputsIdb.js.map +1 -0
  293. package/mobile/out/src/storage/methods/processAction.d.ts +35 -0
  294. package/mobile/out/src/storage/methods/processAction.d.ts.map +1 -0
  295. package/mobile/out/src/storage/methods/processAction.js +311 -0
  296. package/mobile/out/src/storage/methods/processAction.js.map +1 -0
  297. package/mobile/out/src/storage/methods/purgeDataIdb.d.ts +4 -0
  298. package/mobile/out/src/storage/methods/purgeDataIdb.d.ts.map +1 -0
  299. package/mobile/out/src/storage/methods/purgeDataIdb.js +9 -0
  300. package/mobile/out/src/storage/methods/purgeDataIdb.js.map +1 -0
  301. package/mobile/out/src/storage/methods/reviewStatusIdb.d.ts +20 -0
  302. package/mobile/out/src/storage/methods/reviewStatusIdb.d.ts.map +1 -0
  303. package/mobile/out/src/storage/methods/reviewStatusIdb.js +35 -0
  304. package/mobile/out/src/storage/methods/reviewStatusIdb.js.map +1 -0
  305. package/mobile/out/src/storage/remoting/StorageClient.d.ts +283 -0
  306. package/mobile/out/src/storage/remoting/StorageClient.d.ts.map +1 -0
  307. package/mobile/out/src/storage/remoting/StorageClient.js +477 -0
  308. package/mobile/out/src/storage/remoting/StorageClient.js.map +1 -0
  309. package/mobile/out/src/storage/schema/StorageIdbSchema.d.ts +133 -0
  310. package/mobile/out/src/storage/schema/StorageIdbSchema.d.ts.map +1 -0
  311. package/mobile/out/src/storage/schema/StorageIdbSchema.js +3 -0
  312. package/mobile/out/src/storage/schema/StorageIdbSchema.js.map +1 -0
  313. package/mobile/out/src/storage/schema/entities/EntityBase.d.ts +105 -0
  314. package/mobile/out/src/storage/schema/entities/EntityBase.d.ts.map +1 -0
  315. package/mobile/out/src/storage/schema/entities/EntityBase.js +100 -0
  316. package/mobile/out/src/storage/schema/entities/EntityBase.js.map +1 -0
  317. package/mobile/out/src/storage/schema/entities/EntityCertificate.d.ts +43 -0
  318. package/mobile/out/src/storage/schema/entities/EntityCertificate.d.ts.map +1 -0
  319. package/mobile/out/src/storage/schema/entities/EntityCertificate.js +162 -0
  320. package/mobile/out/src/storage/schema/entities/EntityCertificate.js.map +1 -0
  321. package/mobile/out/src/storage/schema/entities/EntityCertificateField.d.ts +32 -0
  322. package/mobile/out/src/storage/schema/entities/EntityCertificateField.d.ts.map +1 -0
  323. package/mobile/out/src/storage/schema/entities/EntityCertificateField.js +111 -0
  324. package/mobile/out/src/storage/schema/entities/EntityCertificateField.js.map +1 -0
  325. package/mobile/out/src/storage/schema/entities/EntityCommission.d.ts +37 -0
  326. package/mobile/out/src/storage/schema/entities/EntityCommission.d.ts.map +1 -0
  327. package/mobile/out/src/storage/schema/entities/EntityCommission.js +127 -0
  328. package/mobile/out/src/storage/schema/entities/EntityCommission.js.map +1 -0
  329. package/mobile/out/src/storage/schema/entities/EntityOutput.d.ts +67 -0
  330. package/mobile/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -0
  331. package/mobile/out/src/storage/schema/entities/EntityOutput.js +264 -0
  332. package/mobile/out/src/storage/schema/entities/EntityOutput.js.map +1 -0
  333. package/mobile/out/src/storage/schema/entities/EntityOutputBasket.d.ts +35 -0
  334. package/mobile/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -0
  335. package/mobile/out/src/storage/schema/entities/EntityOutputBasket.js +133 -0
  336. package/mobile/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -0
  337. package/mobile/out/src/storage/schema/entities/EntityOutputTag.d.ts +31 -0
  338. package/mobile/out/src/storage/schema/entities/EntityOutputTag.d.ts.map +1 -0
  339. package/mobile/out/src/storage/schema/entities/EntityOutputTag.js +104 -0
  340. package/mobile/out/src/storage/schema/entities/EntityOutputTag.js.map +1 -0
  341. package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.d.ts +28 -0
  342. package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.d.ts.map +1 -0
  343. package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.js +97 -0
  344. package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.js.map +1 -0
  345. package/mobile/out/src/storage/schema/entities/EntityProvenTx.d.ts +84 -0
  346. package/mobile/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -0
  347. package/mobile/out/src/storage/schema/entities/EntityProvenTx.js +276 -0
  348. package/mobile/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -0
  349. package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.d.ts +135 -0
  350. package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.d.ts.map +1 -0
  351. package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.js +522 -0
  352. package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -0
  353. package/mobile/out/src/storage/schema/entities/EntitySyncState.d.ts +67 -0
  354. package/mobile/out/src/storage/schema/entities/EntitySyncState.d.ts.map +1 -0
  355. package/mobile/out/src/storage/schema/entities/EntitySyncState.js +319 -0
  356. package/mobile/out/src/storage/schema/entities/EntitySyncState.js.map +1 -0
  357. package/mobile/out/src/storage/schema/entities/EntityTransaction.d.ts +67 -0
  358. package/mobile/out/src/storage/schema/entities/EntityTransaction.d.ts.map +1 -0
  359. package/mobile/out/src/storage/schema/entities/EntityTransaction.js +255 -0
  360. package/mobile/out/src/storage/schema/entities/EntityTransaction.js.map +1 -0
  361. package/mobile/out/src/storage/schema/entities/EntityTxLabel.d.ts +31 -0
  362. package/mobile/out/src/storage/schema/entities/EntityTxLabel.d.ts.map +1 -0
  363. package/mobile/out/src/storage/schema/entities/EntityTxLabel.js +104 -0
  364. package/mobile/out/src/storage/schema/entities/EntityTxLabel.js.map +1 -0
  365. package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.d.ts +28 -0
  366. package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.d.ts.map +1 -0
  367. package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.js +97 -0
  368. package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.js.map +1 -0
  369. package/mobile/out/src/storage/schema/entities/EntityUser.d.ts +29 -0
  370. package/mobile/out/src/storage/schema/entities/EntityUser.d.ts.map +1 -0
  371. package/mobile/out/src/storage/schema/entities/EntityUser.js +98 -0
  372. package/mobile/out/src/storage/schema/entities/EntityUser.js.map +1 -0
  373. package/mobile/out/src/storage/schema/entities/MergeEntity.d.ts +33 -0
  374. package/mobile/out/src/storage/schema/entities/MergeEntity.d.ts.map +1 -0
  375. package/mobile/out/src/storage/schema/entities/MergeEntity.js +62 -0
  376. package/mobile/out/src/storage/schema/entities/MergeEntity.js.map +1 -0
  377. package/mobile/out/src/storage/schema/entities/index.d.ts +17 -0
  378. package/mobile/out/src/storage/schema/entities/index.d.ts.map +1 -0
  379. package/mobile/out/src/storage/schema/entities/index.js +33 -0
  380. package/mobile/out/src/storage/schema/entities/index.js.map +1 -0
  381. package/mobile/out/src/storage/schema/tables/TableCertificate.d.ts +20 -0
  382. package/mobile/out/src/storage/schema/tables/TableCertificate.d.ts.map +1 -0
  383. package/mobile/out/src/storage/schema/tables/TableCertificate.js +3 -0
  384. package/mobile/out/src/storage/schema/tables/TableCertificate.js.map +1 -0
  385. package/mobile/out/src/storage/schema/tables/TableCertificateField.d.ts +12 -0
  386. package/mobile/out/src/storage/schema/tables/TableCertificateField.d.ts.map +1 -0
  387. package/mobile/out/src/storage/schema/tables/TableCertificateField.js +3 -0
  388. package/mobile/out/src/storage/schema/tables/TableCertificateField.js.map +1 -0
  389. package/mobile/out/src/storage/schema/tables/TableCommission.d.ts +13 -0
  390. package/mobile/out/src/storage/schema/tables/TableCommission.d.ts.map +1 -0
  391. package/mobile/out/src/storage/schema/tables/TableCommission.js +3 -0
  392. package/mobile/out/src/storage/schema/tables/TableCommission.js.map +1 -0
  393. package/mobile/out/src/storage/schema/tables/TableMonitorEvent.d.ts +9 -0
  394. package/mobile/out/src/storage/schema/tables/TableMonitorEvent.d.ts.map +1 -0
  395. package/mobile/out/src/storage/schema/tables/TableMonitorEvent.js +3 -0
  396. package/mobile/out/src/storage/schema/tables/TableMonitorEvent.js.map +1 -0
  397. package/mobile/out/src/storage/schema/tables/TableOutput.d.ts +36 -0
  398. package/mobile/out/src/storage/schema/tables/TableOutput.d.ts.map +1 -0
  399. package/mobile/out/src/storage/schema/tables/TableOutput.js +31 -0
  400. package/mobile/out/src/storage/schema/tables/TableOutput.js.map +1 -0
  401. package/mobile/out/src/storage/schema/tables/TableOutputBasket.d.ts +12 -0
  402. package/mobile/out/src/storage/schema/tables/TableOutputBasket.d.ts.map +1 -0
  403. package/mobile/out/src/storage/schema/tables/TableOutputBasket.js +3 -0
  404. package/mobile/out/src/storage/schema/tables/TableOutputBasket.js.map +1 -0
  405. package/mobile/out/src/storage/schema/tables/TableOutputTag.d.ts +10 -0
  406. package/mobile/out/src/storage/schema/tables/TableOutputTag.d.ts.map +1 -0
  407. package/mobile/out/src/storage/schema/tables/TableOutputTag.js +3 -0
  408. package/mobile/out/src/storage/schema/tables/TableOutputTag.js.map +1 -0
  409. package/mobile/out/src/storage/schema/tables/TableOutputTagMap.d.ts +9 -0
  410. package/mobile/out/src/storage/schema/tables/TableOutputTagMap.d.ts.map +1 -0
  411. package/mobile/out/src/storage/schema/tables/TableOutputTagMap.js +3 -0
  412. package/mobile/out/src/storage/schema/tables/TableOutputTagMap.js.map +1 -0
  413. package/mobile/out/src/storage/schema/tables/TableProvenTx.d.ts +14 -0
  414. package/mobile/out/src/storage/schema/tables/TableProvenTx.d.ts.map +1 -0
  415. package/mobile/out/src/storage/schema/tables/TableProvenTx.js +3 -0
  416. package/mobile/out/src/storage/schema/tables/TableProvenTx.js.map +1 -0
  417. package/mobile/out/src/storage/schema/tables/TableProvenTxReq.d.ts +64 -0
  418. package/mobile/out/src/storage/schema/tables/TableProvenTxReq.d.ts.map +1 -0
  419. package/mobile/out/src/storage/schema/tables/TableProvenTxReq.js +3 -0
  420. package/mobile/out/src/storage/schema/tables/TableProvenTxReq.js.map +1 -0
  421. package/mobile/out/src/storage/schema/tables/TableSettings.d.ts +17 -0
  422. package/mobile/out/src/storage/schema/tables/TableSettings.d.ts.map +1 -0
  423. package/mobile/out/src/storage/schema/tables/TableSettings.js +3 -0
  424. package/mobile/out/src/storage/schema/tables/TableSettings.js.map +1 -0
  425. package/mobile/out/src/storage/schema/tables/TableSyncState.d.ts +18 -0
  426. package/mobile/out/src/storage/schema/tables/TableSyncState.d.ts.map +1 -0
  427. package/mobile/out/src/storage/schema/tables/TableSyncState.js +3 -0
  428. package/mobile/out/src/storage/schema/tables/TableSyncState.js.map +1 -0
  429. package/mobile/out/src/storage/schema/tables/TableTransaction.d.ts +37 -0
  430. package/mobile/out/src/storage/schema/tables/TableTransaction.d.ts.map +1 -0
  431. package/mobile/out/src/storage/schema/tables/TableTransaction.js +21 -0
  432. package/mobile/out/src/storage/schema/tables/TableTransaction.js.map +1 -0
  433. package/mobile/out/src/storage/schema/tables/TableTxLabel.d.ts +10 -0
  434. package/mobile/out/src/storage/schema/tables/TableTxLabel.d.ts.map +1 -0
  435. package/mobile/out/src/storage/schema/tables/TableTxLabel.js +3 -0
  436. package/mobile/out/src/storage/schema/tables/TableTxLabel.js.map +1 -0
  437. package/mobile/out/src/storage/schema/tables/TableTxLabelMap.d.ts +9 -0
  438. package/mobile/out/src/storage/schema/tables/TableTxLabelMap.d.ts.map +1 -0
  439. package/mobile/out/src/storage/schema/tables/TableTxLabelMap.js +3 -0
  440. package/mobile/out/src/storage/schema/tables/TableTxLabelMap.js.map +1 -0
  441. package/mobile/out/src/storage/schema/tables/TableUser.d.ts +16 -0
  442. package/mobile/out/src/storage/schema/tables/TableUser.d.ts.map +1 -0
  443. package/mobile/out/src/storage/schema/tables/TableUser.js +3 -0
  444. package/mobile/out/src/storage/schema/tables/TableUser.js.map +1 -0
  445. package/mobile/out/src/storage/schema/tables/index.d.ts +17 -0
  446. package/mobile/out/src/storage/schema/tables/index.d.ts.map +1 -0
  447. package/mobile/out/src/storage/schema/tables/index.js +33 -0
  448. package/mobile/out/src/storage/schema/tables/index.js.map +1 -0
  449. package/mobile/out/src/utility/ScriptTemplateBRC29.d.ts +25 -0
  450. package/mobile/out/src/utility/ScriptTemplateBRC29.d.ts.map +1 -0
  451. package/mobile/out/src/utility/ScriptTemplateBRC29.js +48 -0
  452. package/mobile/out/src/utility/ScriptTemplateBRC29.js.map +1 -0
  453. package/mobile/out/src/utility/identityUtils.d.ts +31 -0
  454. package/mobile/out/src/utility/identityUtils.d.ts.map +1 -0
  455. package/mobile/out/src/utility/identityUtils.js +116 -0
  456. package/mobile/out/src/utility/identityUtils.js.map +1 -0
  457. package/mobile/out/src/utility/index.client.d.ts +7 -0
  458. package/mobile/out/src/utility/index.client.d.ts.map +1 -0
  459. package/mobile/out/src/utility/index.client.js +23 -0
  460. package/mobile/out/src/utility/index.client.js.map +1 -0
  461. package/mobile/out/src/utility/parseTxScriptOffsets.d.ts +14 -0
  462. package/mobile/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -0
  463. package/mobile/out/src/utility/parseTxScriptOffsets.js +26 -0
  464. package/mobile/out/src/utility/parseTxScriptOffsets.js.map +1 -0
  465. package/mobile/out/src/utility/stampLog.d.ts +18 -0
  466. package/mobile/out/src/utility/stampLog.d.ts.map +1 -0
  467. package/mobile/out/src/utility/stampLog.js +72 -0
  468. package/mobile/out/src/utility/stampLog.js.map +1 -0
  469. package/mobile/out/src/utility/tscProofToMerklePath.d.ts +8 -0
  470. package/mobile/out/src/utility/tscProofToMerklePath.d.ts.map +1 -0
  471. package/mobile/out/src/utility/tscProofToMerklePath.js +41 -0
  472. package/mobile/out/src/utility/tscProofToMerklePath.js.map +1 -0
  473. package/mobile/out/src/utility/utilityHelpers.d.ts +129 -0
  474. package/mobile/out/src/utility/utilityHelpers.d.ts.map +1 -0
  475. package/mobile/out/src/utility/utilityHelpers.js +266 -0
  476. package/mobile/out/src/utility/utilityHelpers.js.map +1 -0
  477. package/mobile/out/src/utility/utilityHelpers.noBuffer.d.ts +9 -0
  478. package/mobile/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -0
  479. package/mobile/out/src/utility/utilityHelpers.noBuffer.js +23 -0
  480. package/mobile/out/src/utility/utilityHelpers.noBuffer.js.map +1 -0
  481. package/mobile/out/src/wab-client/WABClient.d.ts +49 -0
  482. package/mobile/out/src/wab-client/WABClient.d.ts.map +1 -0
  483. package/mobile/out/src/wab-client/WABClient.js +80 -0
  484. package/mobile/out/src/wab-client/WABClient.js.map +1 -0
  485. package/mobile/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts +34 -0
  486. package/mobile/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +1 -0
  487. package/mobile/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js +16 -0
  488. package/mobile/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +1 -0
  489. package/mobile/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.d.ts +7 -0
  490. package/mobile/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.d.ts.map +1 -0
  491. package/mobile/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.js +36 -0
  492. package/mobile/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.js.map +1 -0
  493. package/mobile/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.d.ts +28 -0
  494. package/mobile/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.d.ts.map +1 -0
  495. package/mobile/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.js +69 -0
  496. package/mobile/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.js.map +1 -0
  497. package/mobile/out/tsconfig.mobile.tsbuildinfo +1 -0
  498. package/mobile/package-lock.json +5 -12
  499. package/mobile/package.json +1 -1
  500. package/package.json +1 -1
  501. package/tsconfig.json +3 -0
  502. package/tsconfig.mobile.json +22 -0
@@ -0,0 +1,371 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-unused-vars */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.internalizeAction = internalizeAction;
5
+ const sdk_1 = require("@bsv/sdk");
6
+ const index_client_1 = require("../../index.client");
7
+ /**
8
+ * Internalize Action allows a wallet to take ownership of outputs in a pre-existing transaction.
9
+ * The transaction may, or may not already be known to both the storage and user.
10
+ *
11
+ * Two types of outputs are handled: "wallet payments" and "basket insertions".
12
+ *
13
+ * A "basket insertion" output is considered a custom output and has no effect on the wallet's "balance".
14
+ *
15
+ * A "wallet payment" adds an outputs value to the wallet's change "balance". These outputs are assigned to the "default" basket.
16
+ *
17
+ * Processing starts with simple validation and then checks for a pre-existing transaction.
18
+ * If the transaction is already known to the user, then the outputs are reviewed against the existing outputs treatment,
19
+ * and merge rules are added to the arguments passed to the storage layer.
20
+ * The existing transaction must be in the 'unproven' or 'completed' status. Any other status is an error.
21
+ *
22
+ * When the transaction already exists, the description is updated. The isOutgoing sense is not changed.
23
+ *
24
+ * "basket insertion" Merge Rules:
25
+ * 1. The "default" basket may not be specified as the insertion basket.
26
+ * 2. A change output in the "default" basket may not be target of an insertion into a different basket.
27
+ * 3. These baskets do not affect the wallet's balance and are typed "custom".
28
+ *
29
+ * "wallet payment" Merge Rules:
30
+ * 1. Targetting an existing change "default" basket output results in a no-op. No error. No alterations made.
31
+ * 2. Targetting a previously "custom" non-change output converts it into a change output. This alters the transaction's `satoshis`, and the wallet balance.
32
+ */
33
+ async function internalizeAction(storage, auth, args) {
34
+ const ctx = new InternalizeActionContext(storage, auth, args);
35
+ await ctx.asyncSetup();
36
+ if (ctx.isMerge)
37
+ await ctx.mergedInternalize();
38
+ else
39
+ await ctx.newInternalize();
40
+ return ctx.r;
41
+ }
42
+ class InternalizeActionContext {
43
+ constructor(storage, auth, args) {
44
+ this.storage = storage;
45
+ this.auth = auth;
46
+ this.args = args;
47
+ this.vargs = index_client_1.sdk.validateInternalizeActionArgs(args);
48
+ this.userId = auth.userId;
49
+ this.r = {
50
+ accepted: true,
51
+ isMerge: false,
52
+ txid: '',
53
+ satoshis: 0
54
+ };
55
+ this.ab = new sdk_1.Beef();
56
+ this.tx = new sdk_1.Transaction();
57
+ this.changeBasket = {};
58
+ this.baskets = {};
59
+ this.basketInsertions = [];
60
+ this.walletPayments = [];
61
+ this.eos = [];
62
+ }
63
+ get isMerge() {
64
+ return this.r.isMerge;
65
+ }
66
+ set isMerge(v) {
67
+ this.r.isMerge = v;
68
+ }
69
+ get txid() {
70
+ return this.r.txid;
71
+ }
72
+ set txid(v) {
73
+ this.r.txid = v;
74
+ }
75
+ get satoshis() {
76
+ return this.r.satoshis;
77
+ }
78
+ set satoshis(v) {
79
+ this.r.satoshis = v;
80
+ }
81
+ async getBasket(basketName) {
82
+ let b = this.baskets[basketName];
83
+ if (b)
84
+ return b;
85
+ b = await this.storage.findOrInsertOutputBasket(this.userId, basketName);
86
+ this.baskets[basketName] = b;
87
+ return b;
88
+ }
89
+ async asyncSetup() {
90
+ ;
91
+ ({ ab: this.ab, tx: this.tx, txid: this.txid } = await this.validateAtomicBeef(this.args.tx));
92
+ for (const o of this.args.outputs) {
93
+ if (o.outputIndex < 0 || o.outputIndex >= this.tx.outputs.length)
94
+ throw new index_client_1.sdk.WERR_INVALID_PARAMETER('outputIndex', `a valid output index in range 0 to ${this.tx.outputs.length - 1}`);
95
+ const txo = this.tx.outputs[o.outputIndex];
96
+ switch (o.protocol) {
97
+ case 'basket insertion':
98
+ {
99
+ if (!o.insertionRemittance || o.paymentRemittance)
100
+ throw new index_client_1.sdk.WERR_INVALID_PARAMETER('basket insertion', 'valid insertionRemittance and no paymentRemittance');
101
+ this.basketInsertions.push({
102
+ ...o.insertionRemittance,
103
+ txo,
104
+ vout: o.outputIndex
105
+ });
106
+ }
107
+ break;
108
+ case 'wallet payment':
109
+ {
110
+ if (o.insertionRemittance || !o.paymentRemittance)
111
+ throw new index_client_1.sdk.WERR_INVALID_PARAMETER('wallet payment', 'valid paymentRemittance and no insertionRemittance');
112
+ this.walletPayments.push({
113
+ ...o.paymentRemittance,
114
+ txo,
115
+ vout: o.outputIndex,
116
+ ignore: false
117
+ });
118
+ }
119
+ break;
120
+ default:
121
+ throw new index_client_1.sdk.WERR_INTERNAL(`unexpected protocol ${o.protocol}`);
122
+ }
123
+ }
124
+ this.changeBasket = (0, index_client_1.verifyOne)(await this.storage.findOutputBaskets({
125
+ partial: { userId: this.userId, name: 'default' }
126
+ }));
127
+ this.baskets = {};
128
+ this.etx = (0, index_client_1.verifyOneOrNone)(await this.storage.findTransactions({
129
+ partial: { userId: this.userId, txid: this.txid }
130
+ }));
131
+ if (this.etx && !(this.etx.status == 'completed' || this.etx.status === 'unproven' || this.etx.status === 'nosend'))
132
+ throw new index_client_1.sdk.WERR_INVALID_PARAMETER('tx', `target transaction of internalizeAction has invalid status ${this.etx.status}.`);
133
+ this.isMerge = !!this.etx;
134
+ if (this.isMerge) {
135
+ this.eos = await this.storage.findOutputs({
136
+ partial: { userId: this.userId, txid: this.txid }
137
+ }); // It is possible for a transaction to have no outputs, or less outputs in storage than in the transaction itself.
138
+ for (const eo of this.eos) {
139
+ const bi = this.basketInsertions.find(b => b.vout === eo.vout);
140
+ const wp = this.walletPayments.find(b => b.vout === eo.vout);
141
+ if (bi && wp)
142
+ throw new index_client_1.sdk.WERR_INVALID_PARAMETER('outputs', `unique outputIndex values`);
143
+ if (bi)
144
+ bi.eo = eo;
145
+ if (wp)
146
+ wp.eo = eo;
147
+ }
148
+ }
149
+ for (const basket of this.basketInsertions) {
150
+ if (this.isMerge && basket.eo) {
151
+ // merging with an existing user output
152
+ if (basket.eo.basketId === this.changeBasket.basketId) {
153
+ // converting a change output to a user basket custom output
154
+ this.satoshis -= basket.txo.satoshis;
155
+ }
156
+ }
157
+ }
158
+ for (const payment of this.walletPayments) {
159
+ if (this.isMerge) {
160
+ if (payment.eo) {
161
+ // merging with an existing user output
162
+ if (payment.eo.basketId === this.changeBasket.basketId) {
163
+ // ignore attempts to internalize an existing change output.
164
+ payment.ignore = true;
165
+ }
166
+ else {
167
+ // converting an existing non-change output to change... increases net satoshis
168
+ this.satoshis += payment.txo.satoshis;
169
+ }
170
+ }
171
+ else {
172
+ // adding a previously untracked output of an existing transaction as change... increase net satoshis
173
+ this.satoshis += payment.txo.satoshis;
174
+ }
175
+ }
176
+ else {
177
+ // If there are no existing outputs, all incoming wallet payment outputs add to net satoshis
178
+ this.satoshis += payment.txo.satoshis;
179
+ }
180
+ }
181
+ }
182
+ async validateAtomicBeef(atomicBeef) {
183
+ const ab = sdk_1.Beef.fromBinary(atomicBeef);
184
+ const txValid = await ab.verify(await this.storage.getServices().getChainTracker(), false);
185
+ if (!txValid || !ab.atomicTxid)
186
+ throw new index_client_1.sdk.WERR_INVALID_PARAMETER('tx', 'valid AtomicBEEF');
187
+ const txid = ab.atomicTxid;
188
+ const btx = ab.findTxid(txid);
189
+ if (!btx)
190
+ throw new index_client_1.sdk.WERR_INVALID_PARAMETER('tx', `valid AtomicBEEF with newest txid of ${txid}`);
191
+ const tx = btx.tx;
192
+ /*
193
+ for (const i of tx.inputs) {
194
+ if (!i.sourceTXID)
195
+ throw new sdk.WERR_INTERNAL('beef Transactions must have sourceTXIDs')
196
+ if (!i.sourceTransaction) {
197
+ const btx = ab.findTxid(i.sourceTXID)
198
+ if (!btx)
199
+ throw new sdk.WERR_INVALID_PARAMETER('tx', `valid AtomicBEEF and contain input transaction with txid ${i.sourceTXID}`);
200
+ i.sourceTransaction = btx.tx
201
+ }
202
+ }
203
+ */
204
+ return { ab, tx, txid };
205
+ }
206
+ async findOrInsertTargetTransaction(satoshis, status) {
207
+ const now = new Date();
208
+ const newTx = {
209
+ created_at: now,
210
+ updated_at: now,
211
+ transactionId: 0,
212
+ status,
213
+ satoshis,
214
+ version: this.tx.version,
215
+ lockTime: this.tx.lockTime,
216
+ reference: (0, index_client_1.randomBytesBase64)(7),
217
+ userId: this.userId,
218
+ isOutgoing: false,
219
+ description: this.args.description,
220
+ inputBEEF: undefined,
221
+ txid: this.txid,
222
+ rawTx: undefined
223
+ };
224
+ const tr = await this.storage.findOrInsertTransaction(newTx);
225
+ if (!tr.isNew) {
226
+ if (!this.isMerge)
227
+ throw new index_client_1.sdk.WERR_INVALID_PARAMETER('tx', `target transaction of internalizeAction is undergoing active changes.`);
228
+ await this.storage.updateTransaction(tr.tx.transactionId, {
229
+ satoshis: tr.tx.satoshis + satoshis
230
+ });
231
+ }
232
+ return tr.tx;
233
+ }
234
+ async mergedInternalize() {
235
+ const transactionId = this.etx.transactionId;
236
+ await this.addLabels(transactionId);
237
+ for (const payment of this.walletPayments) {
238
+ if (payment.eo && !payment.ignore)
239
+ await this.mergeWalletPaymentForOutput(transactionId, payment);
240
+ else if (!payment.ignore)
241
+ await this.storeNewWalletPaymentForOutput(transactionId, payment);
242
+ }
243
+ for (const basket of this.basketInsertions) {
244
+ if (basket.eo)
245
+ await this.mergeBasketInsertionForOutput(transactionId, basket);
246
+ else
247
+ await this.storeNewBasketInsertionForOutput(transactionId, basket);
248
+ }
249
+ }
250
+ async newInternalize() {
251
+ this.etx = await this.findOrInsertTargetTransaction(this.satoshis, 'unproven');
252
+ const transactionId = this.etx.transactionId;
253
+ // transaction record for user is new, but the txid may not be new to storage
254
+ // make sure storage pursues getting a proof for it.
255
+ const newReq = index_client_1.EntityProvenTxReq.fromTxid(this.txid, this.tx.toBinary(), this.args.tx);
256
+ newReq.status = 'unmined';
257
+ newReq.addHistoryNote({ what: 'internalizeAction', userId: this.userId });
258
+ newReq.addNotifyTransactionId(transactionId);
259
+ const pr = await this.storage.getProvenOrReq(this.txid, newReq.toApi());
260
+ await this.addLabels(transactionId);
261
+ for (const payment of this.walletPayments) {
262
+ await this.storeNewWalletPaymentForOutput(transactionId, payment);
263
+ }
264
+ for (const basket of this.basketInsertions) {
265
+ await this.storeNewBasketInsertionForOutput(transactionId, basket);
266
+ }
267
+ }
268
+ async addLabels(transactionId) {
269
+ for (const label of this.vargs.labels) {
270
+ const txLabel = await this.storage.findOrInsertTxLabel(this.userId, label);
271
+ await this.storage.findOrInsertTxLabelMap((0, index_client_1.verifyId)(transactionId), (0, index_client_1.verifyId)(txLabel.txLabelId));
272
+ }
273
+ }
274
+ async addBasketTags(basket, outputId) {
275
+ for (const tag of basket.tags || []) {
276
+ await this.storage.tagOutput({ outputId, userId: this.userId }, tag);
277
+ }
278
+ }
279
+ async storeNewWalletPaymentForOutput(transactionId, payment) {
280
+ const now = new Date();
281
+ const txOut = {
282
+ created_at: now,
283
+ updated_at: now,
284
+ outputId: 0,
285
+ transactionId,
286
+ userId: this.userId,
287
+ spendable: true,
288
+ lockingScript: payment.txo.lockingScript.toBinary(),
289
+ vout: payment.vout,
290
+ basketId: this.changeBasket.basketId,
291
+ satoshis: payment.txo.satoshis,
292
+ txid: this.txid,
293
+ senderIdentityKey: payment.senderIdentityKey,
294
+ type: 'P2PKH',
295
+ providedBy: 'storage',
296
+ purpose: 'change',
297
+ derivationPrefix: payment.derivationPrefix,
298
+ derivationSuffix: payment.derivationSuffix,
299
+ change: true,
300
+ spentBy: undefined,
301
+ customInstructions: undefined,
302
+ outputDescription: '',
303
+ spendingDescription: undefined
304
+ };
305
+ txOut.outputId = await this.storage.insertOutput(txOut);
306
+ payment.eo = txOut;
307
+ }
308
+ async mergeWalletPaymentForOutput(transactionId, payment) {
309
+ const outputId = payment.eo.outputId;
310
+ const update = {
311
+ basketId: this.changeBasket.basketId,
312
+ type: 'P2PKH',
313
+ customInstructions: undefined,
314
+ change: true,
315
+ providedBy: 'storage',
316
+ purpose: 'change',
317
+ senderIdentityKey: payment.senderIdentityKey,
318
+ derivationPrefix: payment.derivationPrefix,
319
+ derivationSuffix: payment.derivationSuffix
320
+ };
321
+ await this.storage.updateOutput(outputId, update);
322
+ payment.eo = { ...payment.eo, ...update };
323
+ }
324
+ async mergeBasketInsertionForOutput(transactionId, basket) {
325
+ const outputId = basket.eo.outputId;
326
+ const update = {
327
+ basketId: (await this.getBasket(basket.basket)).basketId,
328
+ type: 'custom',
329
+ customInstructions: basket.customInstructions,
330
+ change: false,
331
+ providedBy: 'you',
332
+ purpose: '',
333
+ senderIdentityKey: undefined,
334
+ derivationPrefix: undefined,
335
+ derivationSuffix: undefined
336
+ };
337
+ await this.storage.updateOutput(outputId, update);
338
+ basket.eo = { ...basket.eo, ...update };
339
+ }
340
+ async storeNewBasketInsertionForOutput(transactionId, basket) {
341
+ const now = new Date();
342
+ const txOut = {
343
+ created_at: now,
344
+ updated_at: now,
345
+ outputId: 0,
346
+ transactionId,
347
+ userId: this.userId,
348
+ spendable: true,
349
+ lockingScript: basket.txo.lockingScript.toBinary(),
350
+ vout: basket.vout,
351
+ basketId: (await this.getBasket(basket.basket)).basketId,
352
+ satoshis: basket.txo.satoshis,
353
+ txid: this.txid,
354
+ type: 'custom',
355
+ customInstructions: basket.customInstructions,
356
+ change: false,
357
+ spentBy: undefined,
358
+ outputDescription: '',
359
+ spendingDescription: undefined,
360
+ providedBy: 'you',
361
+ purpose: '',
362
+ senderIdentityKey: undefined,
363
+ derivationPrefix: undefined,
364
+ derivationSuffix: undefined
365
+ };
366
+ txOut.outputId = await this.storage.insertOutput(txOut);
367
+ await this.addBasketTags(basket, txOut.outputId);
368
+ basket.eo = txOut;
369
+ }
370
+ }
371
+ //# sourceMappingURL=internalizeAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internalizeAction.js","sourceRoot":"","sources":["../../../../../src/storage/methods/internalizeAction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { ListActionsResult } from '@bsv/sdk';
2
+ import { sdk } from '../../index.client';
3
+ import { StorageIdb } from '../StorageIdb';
4
+ export declare function listActionsIdb(storage: StorageIdb, auth: sdk.AuthId, vargs: sdk.ValidListActionsArgs): Promise<ListActionsResult>;
5
+ //# sourceMappingURL=listActionsIdb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listActionsIdb.d.ts","sourceRoot":"","sources":["../../../../../src/storage/methods/listActionsIdb.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,iBAAiB,EAIlB,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAY,GAAG,EAAa,MAAM,oBAAoB,CAAA;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG1C,wBAAsB,cAAc,CAClC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,GAAG,CAAC,MAAM,EAChB,KAAK,EAAE,GAAG,CAAC,oBAAoB,GAC9B,OAAO,CAAC,iBAAiB,CAAC,CAkK5B"}
@@ -0,0 +1,155 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listActionsIdb = listActionsIdb;
4
+ const sdk_1 = require("@bsv/sdk");
5
+ const index_client_1 = require("../../index.client");
6
+ const sdk_2 = require("../../sdk");
7
+ const ListActionsSpecOp_1 = require("./ListActionsSpecOp");
8
+ async function listActionsIdb(storage, auth, vargs) {
9
+ const limit = vargs.limit;
10
+ const offset = vargs.offset;
11
+ const r = {
12
+ totalActions: 0,
13
+ actions: []
14
+ };
15
+ let specOp = undefined;
16
+ let specOpLabels = [];
17
+ let labels = [];
18
+ for (const label of vargs.labels) {
19
+ if ((0, sdk_2.isListActionsSpecOp)(label)) {
20
+ specOp = (0, ListActionsSpecOp_1.getLabelToSpecOp)()[label];
21
+ }
22
+ else {
23
+ labels.push(label);
24
+ }
25
+ }
26
+ if ((specOp === null || specOp === void 0 ? void 0 : specOp.labelsToIntercept) !== undefined) {
27
+ const intercept = specOp.labelsToIntercept;
28
+ const labels2 = labels;
29
+ labels = [];
30
+ if (intercept.length === 0) {
31
+ specOpLabels = labels2;
32
+ }
33
+ for (const label of labels2) {
34
+ if (intercept.indexOf(label) >= 0) {
35
+ specOpLabels.push(label);
36
+ }
37
+ else {
38
+ labels.push(label);
39
+ }
40
+ }
41
+ }
42
+ let labelIds = [];
43
+ if (labels.length > 0) {
44
+ await storage.filterTxLabels({ partial: { userId: auth.userId, isDeleted: false } }, tl => {
45
+ if (labels.includes(tl.label)) {
46
+ labelIds.push(tl.txLabelId);
47
+ }
48
+ });
49
+ }
50
+ const isQueryModeAll = vargs.labelQueryMode === 'all';
51
+ if (isQueryModeAll && labelIds.length < labels.length)
52
+ // all the required labels don't exist, impossible to satisfy.
53
+ return r;
54
+ if (!isQueryModeAll && labelIds.length === 0 && labels.length > 0)
55
+ // any and only non-existing labels, impossible to satisfy.
56
+ return r;
57
+ const stati = (specOp === null || specOp === void 0 ? void 0 : specOp.setStatusFilter)
58
+ ? specOp.setStatusFilter()
59
+ : ['completed', 'unprocessed', 'sending', 'unproven', 'unsigned', 'nosend', 'nonfinal'];
60
+ const noLabels = labelIds.length === 0;
61
+ const txs = await storage.findTransactions({
62
+ partial: { userId: auth.userId },
63
+ status: stati,
64
+ paged: { limit: vargs.limit, offset: vargs.offset },
65
+ noRawTx: true
66
+ }, labelIds, isQueryModeAll);
67
+ if (txs.length === vargs.limit) {
68
+ r.totalActions = await storage.countTransactions({ partial: { userId: auth.userId }, status: stati }, labelIds, isQueryModeAll);
69
+ }
70
+ else {
71
+ r.totalActions = txs.length;
72
+ }
73
+ if (specOp === null || specOp === void 0 ? void 0 : specOp.postProcess) {
74
+ await specOp.postProcess(storage, auth, vargs, specOpLabels, txs);
75
+ }
76
+ for (const tx of txs) {
77
+ const wtx = {
78
+ txid: tx.txid || '',
79
+ satoshis: tx.satoshis || 0,
80
+ status: tx.status,
81
+ isOutgoing: !!tx.isOutgoing,
82
+ description: tx.description || '',
83
+ version: tx.version || 0,
84
+ lockTime: tx.lockTime || 0
85
+ };
86
+ r.actions.push(wtx);
87
+ }
88
+ if (vargs.includeLabels || vargs.includeInputs || vargs.includeOutputs) {
89
+ await Promise.all(txs.map(async (tx, i) => {
90
+ var _a, _b, _c;
91
+ //let i = -1
92
+ //for (const tx of txs) {
93
+ // i++
94
+ const action = r.actions[i];
95
+ if (vargs.includeLabels) {
96
+ action.labels = (await storage.getLabelsForTransactionId(tx.transactionId)).map(l => l.label);
97
+ }
98
+ if (vargs.includeOutputs) {
99
+ const outputs = await storage.findOutputs({
100
+ partial: { transactionId: tx.transactionId },
101
+ noScript: !vargs.includeOutputLockingScripts
102
+ });
103
+ action.outputs = [];
104
+ for (const o of outputs) {
105
+ await storage.extendOutput(o, true, true);
106
+ const wo = {
107
+ satoshis: o.satoshis || 0,
108
+ spendable: !!o.spendable,
109
+ tags: ((_a = o.tags) === null || _a === void 0 ? void 0 : _a.map(t => t.tag)) || [],
110
+ outputIndex: Number(o.vout),
111
+ outputDescription: o.outputDescription || '',
112
+ basket: ((_b = o.basket) === null || _b === void 0 ? void 0 : _b.name) || ''
113
+ };
114
+ if (vargs.includeOutputLockingScripts)
115
+ wo.lockingScript = (0, index_client_1.asString)(o.lockingScript || []);
116
+ action.outputs.push(wo);
117
+ }
118
+ }
119
+ if (vargs.includeInputs) {
120
+ const inputs = await storage.findOutputs({
121
+ partial: { spentBy: tx.transactionId },
122
+ noScript: !vargs.includeInputSourceLockingScripts
123
+ });
124
+ action.inputs = [];
125
+ if (inputs.length > 0) {
126
+ const rawTx = await storage.getRawTxOfKnownValidTransaction(tx.txid);
127
+ let bsvTx = undefined;
128
+ if (rawTx) {
129
+ bsvTx = sdk_1.Transaction.fromBinary(rawTx);
130
+ }
131
+ for (const o of inputs) {
132
+ await storage.extendOutput(o, true, true);
133
+ const input = bsvTx === null || bsvTx === void 0 ? void 0 : bsvTx.inputs.find(v => v.sourceTXID === o.txid && v.sourceOutputIndex === o.vout);
134
+ const wo = {
135
+ sourceOutpoint: `${o.txid}.${o.vout}`,
136
+ sourceSatoshis: o.satoshis || 0,
137
+ inputDescription: o.outputDescription || '',
138
+ sequenceNumber: (input === null || input === void 0 ? void 0 : input.sequence) || 0
139
+ };
140
+ action.inputs.push(wo);
141
+ if (vargs.includeInputSourceLockingScripts) {
142
+ wo.sourceLockingScript = (0, index_client_1.asString)(o.lockingScript || []);
143
+ }
144
+ if (vargs.includeInputUnlockingScripts) {
145
+ wo.unlockingScript = (_c = input === null || input === void 0 ? void 0 : input.unlockingScript) === null || _c === void 0 ? void 0 : _c.toHex();
146
+ }
147
+ }
148
+ }
149
+ }
150
+ //}
151
+ }));
152
+ }
153
+ return r;
154
+ }
155
+ //# sourceMappingURL=listActionsIdb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listActionsIdb.js","sourceRoot":"","sources":["../../../../../src/storage/methods/listActionsIdb.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { ListCertificatesResult, OriginatorDomainNameStringUnder250Bytes } from '@bsv/sdk';
2
+ import { StorageProvider } from '../index.client';
3
+ import { sdk } from '../../index.client';
4
+ export declare function listCertificates(storage: StorageProvider, auth: sdk.AuthId, vargs: sdk.ValidListCertificatesArgs, originator?: OriginatorDomainNameStringUnder250Bytes): Promise<ListCertificatesResult>;
5
+ //# sourceMappingURL=listCertificates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listCertificates.d.ts","sourceRoot":"","sources":["../../../../../src/storage/methods/listCertificates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,uCAAuC,EAAE,MAAM,UAAU,CAAA;AAC1F,OAAO,EAAE,eAAe,EAAoB,MAAM,iBAAiB,CAAA;AACnE,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AAExC,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,GAAG,CAAC,MAAM,EAChB,KAAK,EAAE,GAAG,CAAC,yBAAyB,EACpC,UAAU,CAAC,EAAE,uCAAuC,GACnD,OAAO,CAAC,sBAAsB,CAAC,CA8DjC"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listCertificates = listCertificates;
4
+ async function listCertificates(storage, auth, vargs, originator) {
5
+ const paged = { limit: vargs.limit, offset: vargs.offset };
6
+ const partial = {
7
+ userId: auth.userId,
8
+ isDeleted: false
9
+ };
10
+ if (vargs.partial) {
11
+ const vp = vargs.partial;
12
+ if (vp.type)
13
+ partial['type'] = vp.type;
14
+ if (vp.subject)
15
+ partial['subject'] = vp.subject;
16
+ if (vp.serialNumber)
17
+ partial['serialNumber'] = vp.serialNumber;
18
+ if (vp.certifier)
19
+ partial['certifier'] = vp.certifier;
20
+ if (vp.revocationOutpoint)
21
+ partial['revocationOutpoint'] = vp.revocationOutpoint;
22
+ if (vp.signature)
23
+ partial['signature'] = vp.signature;
24
+ }
25
+ const r = await storage.transaction(async (trx) => {
26
+ const findCertsArgs = {
27
+ partial,
28
+ certifiers: vargs.certifiers,
29
+ types: vargs.types,
30
+ paged,
31
+ trx
32
+ };
33
+ const certs = await storage.findCertificates(findCertsArgs);
34
+ const certsWithFields = await Promise.all(certs.map(async (cert) => {
35
+ const fields = await storage.findCertificateFields({
36
+ partial: { certificateId: cert.certificateId, userId: auth.userId },
37
+ trx
38
+ });
39
+ return {
40
+ ...cert,
41
+ fields: Object.fromEntries(fields.map(f => [f.fieldName, f.fieldValue])),
42
+ masterKeyring: Object.fromEntries(fields.map(f => [f.fieldName, f.masterKey]))
43
+ };
44
+ }));
45
+ const r = {
46
+ totalCertificates: 0,
47
+ certificates: certsWithFields.map(cwf => ({
48
+ type: cwf.type,
49
+ subject: cwf.subject,
50
+ serialNumber: cwf.serialNumber,
51
+ certifier: cwf.certifier,
52
+ revocationOutpoint: cwf.revocationOutpoint,
53
+ signature: cwf.signature,
54
+ fields: cwf.fields,
55
+ verifier: cwf.verifier,
56
+ keyring: cwf.masterKeyring
57
+ }))
58
+ };
59
+ if (r.certificates.length < paged.limit)
60
+ r.totalCertificates = r.certificates.length;
61
+ else {
62
+ r.totalCertificates = await storage.countCertificates(findCertsArgs);
63
+ }
64
+ return r;
65
+ });
66
+ return r;
67
+ }
68
+ //# sourceMappingURL=listCertificates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listCertificates.js","sourceRoot":"","sources":["../../../../../src/storage/methods/listCertificates.ts"],"names":[],"mappings":"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"}