@toon-protocol/connector 3.3.1 → 3.3.3

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 (473) hide show
  1. package/dist/btp/btp-claim-types.d.ts +52 -0
  2. package/dist/btp/btp-claim-types.d.ts.map +1 -0
  3. package/dist/btp/btp-claim-types.js +209 -0
  4. package/dist/btp/btp-claim-types.js.map +1 -0
  5. package/dist/btp/btp-client-manager.d.ts +30 -0
  6. package/dist/btp/btp-client-manager.d.ts.map +1 -0
  7. package/dist/btp/btp-client-manager.js +153 -0
  8. package/dist/btp/btp-client-manager.js.map +1 -0
  9. package/dist/btp/btp-client.d.ts +58 -0
  10. package/dist/btp/btp-client.d.ts.map +1 -0
  11. package/dist/btp/btp-client.js +485 -0
  12. package/dist/btp/btp-client.js.map +1 -0
  13. package/dist/btp/btp-message-parser.d.ts +4 -0
  14. package/dist/btp/btp-message-parser.d.ts.map +1 -0
  15. package/dist/btp/btp-message-parser.js +211 -0
  16. package/dist/btp/btp-message-parser.js.map +1 -0
  17. package/dist/btp/btp-server.d.ts +33 -0
  18. package/dist/btp/btp-server.d.ts.map +1 -0
  19. package/dist/btp/btp-server.js +485 -0
  20. package/dist/btp/btp-server.js.map +1 -0
  21. package/dist/btp/btp-types.d.ts +43 -0
  22. package/dist/btp/btp-types.d.ts.map +1 -0
  23. package/dist/btp/btp-types.js +44 -0
  24. package/dist/btp/btp-types.js.map +1 -0
  25. package/dist/btp/inbound-claim-validator.d.ts +20 -0
  26. package/dist/btp/inbound-claim-validator.d.ts.map +1 -0
  27. package/dist/btp/inbound-claim-validator.js +150 -0
  28. package/dist/btp/inbound-claim-validator.js.map +1 -0
  29. package/dist/cli/index.d.ts +3 -0
  30. package/dist/cli/index.d.ts.map +1 -0
  31. package/dist/cli/index.js +175 -0
  32. package/dist/cli/index.js.map +1 -0
  33. package/dist/cli/onboarding-wizard.d.ts +7 -0
  34. package/dist/cli/onboarding-wizard.d.ts.map +1 -0
  35. package/dist/cli/onboarding-wizard.js +257 -0
  36. package/dist/cli/onboarding-wizard.js.map +1 -0
  37. package/dist/cli/types.d.ts +38 -0
  38. package/dist/cli/types.d.ts.map +1 -0
  39. package/dist/cli/types.js +3 -0
  40. package/dist/cli/types.js.map +1 -0
  41. package/dist/config/config-loader.d.ts +24 -0
  42. package/dist/config/config-loader.d.ts.map +1 -0
  43. package/dist/config/config-loader.js +436 -0
  44. package/dist/config/config-loader.js.map +1 -0
  45. package/dist/config/environment-validator.d.ts +4 -0
  46. package/dist/config/environment-validator.d.ts.map +1 -0
  47. package/dist/config/environment-validator.js +239 -0
  48. package/dist/config/environment-validator.js.map +1 -0
  49. package/dist/config/index.d.ts +3 -0
  50. package/dist/config/index.d.ts.map +1 -0
  51. package/dist/config/index.js +7 -0
  52. package/dist/config/index.js.map +1 -0
  53. package/dist/config/key-manager-config.d.ts +7 -0
  54. package/dist/config/key-manager-config.d.ts.map +1 -0
  55. package/dist/config/key-manager-config.js +209 -0
  56. package/dist/config/key-manager-config.js.map +1 -0
  57. package/dist/config/topology-validator.d.ts +14 -0
  58. package/dist/config/topology-validator.d.ts.map +1 -0
  59. package/dist/config/topology-validator.js +142 -0
  60. package/dist/config/topology-validator.js.map +1 -0
  61. package/dist/config/types.d.ts +226 -0
  62. package/dist/config/types.d.ts.map +1 -0
  63. package/dist/config/types.js +52 -0
  64. package/dist/config/types.js.map +1 -0
  65. package/dist/core/connector-node.d.ts +91 -0
  66. package/dist/core/connector-node.d.ts.map +1 -0
  67. package/dist/core/connector-node.js +1322 -0
  68. package/dist/core/connector-node.js.map +1 -0
  69. package/dist/core/local-delivery-client.d.ts +16 -0
  70. package/dist/core/local-delivery-client.d.ts.map +1 -0
  71. package/dist/core/local-delivery-client.js +160 -0
  72. package/dist/core/local-delivery-client.js.map +1 -0
  73. package/dist/core/packet-handler.d.ts +57 -0
  74. package/dist/core/packet-handler.d.ts.map +1 -0
  75. package/dist/core/packet-handler.js +655 -0
  76. package/dist/core/packet-handler.js.map +1 -0
  77. package/dist/core/payment-handler.d.ts +26 -0
  78. package/dist/core/payment-handler.d.ts.map +1 -0
  79. package/dist/core/payment-handler.js +106 -0
  80. package/dist/core/payment-handler.js.map +1 -0
  81. package/dist/discovery/index.d.ts +3 -0
  82. package/dist/discovery/index.d.ts.map +1 -0
  83. package/dist/discovery/index.js +6 -0
  84. package/dist/discovery/index.js.map +1 -0
  85. package/dist/discovery/peer-discovery-service.d.ts +29 -0
  86. package/dist/discovery/peer-discovery-service.d.ts.map +1 -0
  87. package/dist/discovery/peer-discovery-service.js +230 -0
  88. package/dist/discovery/peer-discovery-service.js.map +1 -0
  89. package/dist/discovery/types.d.ts +38 -0
  90. package/dist/discovery/types.d.ts.map +1 -0
  91. package/dist/discovery/types.js +3 -0
  92. package/dist/discovery/types.js.map +1 -0
  93. package/dist/encoding/oer-parser.d.ts +39 -0
  94. package/dist/encoding/oer-parser.d.ts.map +1 -0
  95. package/dist/encoding/oer-parser.js +154 -0
  96. package/dist/encoding/oer-parser.js.map +1 -0
  97. package/dist/facilitator/index.d.ts +2 -0
  98. package/dist/facilitator/index.d.ts.map +1 -0
  99. package/dist/facilitator/index.js +7 -0
  100. package/dist/facilitator/index.js.map +1 -0
  101. package/dist/facilitator/spsp-client.d.ts +18 -0
  102. package/dist/facilitator/spsp-client.d.ts.map +1 -0
  103. package/dist/facilitator/spsp-client.js +95 -0
  104. package/dist/facilitator/spsp-client.js.map +1 -0
  105. package/dist/http/admin-api-inventory.d.ts +29 -0
  106. package/dist/http/admin-api-inventory.d.ts.map +1 -0
  107. package/dist/http/admin-api-inventory.js +480 -0
  108. package/dist/http/admin-api-inventory.js.map +1 -0
  109. package/dist/http/admin-api.d.ts +182 -0
  110. package/dist/http/admin-api.d.ts.map +1 -0
  111. package/dist/http/admin-api.js +1324 -0
  112. package/dist/http/admin-api.js.map +1 -0
  113. package/dist/http/admin-server.d.ts +49 -0
  114. package/dist/http/admin-server.d.ts.map +1 -0
  115. package/dist/http/admin-server.js +160 -0
  116. package/dist/http/admin-server.js.map +1 -0
  117. package/dist/http/health-server.d.ts +22 -0
  118. package/dist/http/health-server.d.ts.map +1 -0
  119. package/dist/http/health-server.js +192 -0
  120. package/dist/http/health-server.js.map +1 -0
  121. package/dist/http/ilp-send-handler.d.ts +15 -0
  122. package/dist/http/ilp-send-handler.d.ts.map +1 -0
  123. package/dist/http/ilp-send-handler.js +167 -0
  124. package/dist/http/ilp-send-handler.js.map +1 -0
  125. package/dist/http/types.d.ts +43 -0
  126. package/dist/http/types.d.ts.map +1 -0
  127. package/dist/http/types.js +3 -0
  128. package/dist/http/types.js.map +1 -0
  129. package/dist/index.d.ts +2 -0
  130. package/dist/index.d.ts.map +1 -0
  131. package/dist/index.js +5 -0
  132. package/dist/index.js.map +1 -0
  133. package/dist/lib.d.ts +22 -0
  134. package/dist/lib.d.ts.map +1 -0
  135. package/dist/lib.js +39 -0
  136. package/dist/lib.js.map +1 -0
  137. package/dist/main.d.ts +4 -0
  138. package/dist/main.d.ts.map +1 -0
  139. package/dist/main.js +79 -0
  140. package/dist/main.js.map +1 -0
  141. package/dist/observability/metrics-registry.d.ts +39 -0
  142. package/dist/observability/metrics-registry.d.ts.map +1 -0
  143. package/dist/observability/metrics-registry.js +151 -0
  144. package/dist/observability/metrics-registry.js.map +1 -0
  145. package/dist/routing/packet-processor.d.ts +36 -0
  146. package/dist/routing/packet-processor.d.ts.map +1 -0
  147. package/dist/routing/packet-processor.js +112 -0
  148. package/dist/routing/packet-processor.js.map +1 -0
  149. package/dist/routing/packet-worker.d.ts +10 -0
  150. package/dist/routing/packet-worker.d.ts.map +1 -0
  151. package/dist/routing/packet-worker.js +34 -0
  152. package/dist/routing/packet-worker.js.map +1 -0
  153. package/dist/routing/routing-table.d.ts +15 -0
  154. package/dist/routing/routing-table.d.ts.map +1 -0
  155. package/dist/routing/routing-table.js +63 -0
  156. package/dist/routing/routing-table.js.map +1 -0
  157. package/dist/routing/worker-pool.d.ts +43 -0
  158. package/dist/routing/worker-pool.d.ts.map +1 -0
  159. package/dist/routing/worker-pool.js +228 -0
  160. package/dist/routing/worker-pool.js.map +1 -0
  161. package/dist/security/alert-notifier.d.ts +34 -0
  162. package/dist/security/alert-notifier.d.ts.map +1 -0
  163. package/dist/security/alert-notifier.js +136 -0
  164. package/dist/security/alert-notifier.js.map +1 -0
  165. package/dist/security/audit-logger.d.ts +34 -0
  166. package/dist/security/audit-logger.d.ts.map +1 -0
  167. package/dist/security/audit-logger.js +132 -0
  168. package/dist/security/audit-logger.js.map +1 -0
  169. package/dist/security/backends/environment-backend.d.ts +15 -0
  170. package/dist/security/backends/environment-backend.d.ts.map +1 -0
  171. package/dist/security/backends/environment-backend.js +56 -0
  172. package/dist/security/backends/environment-backend.js.map +1 -0
  173. package/dist/security/fraud-detector.d.ts +79 -0
  174. package/dist/security/fraud-detector.d.ts.map +1 -0
  175. package/dist/security/fraud-detector.js +147 -0
  176. package/dist/security/fraud-detector.js.map +1 -0
  177. package/dist/security/key-manager-signer.d.ts +15 -0
  178. package/dist/security/key-manager-signer.d.ts.map +1 -0
  179. package/dist/security/key-manager-signer.js +91 -0
  180. package/dist/security/key-manager-signer.js.map +1 -0
  181. package/dist/security/key-manager.d.ts +69 -0
  182. package/dist/security/key-manager.d.ts.map +1 -0
  183. package/dist/security/key-manager.js +79 -0
  184. package/dist/security/key-manager.js.map +1 -0
  185. package/dist/security/key-rotation-manager.d.ts +27 -0
  186. package/dist/security/key-rotation-manager.d.ts.map +1 -0
  187. package/dist/security/key-rotation-manager.js +142 -0
  188. package/dist/security/key-rotation-manager.js.map +1 -0
  189. package/dist/security/rate-limit-config.d.ts +7 -0
  190. package/dist/security/rate-limit-config.d.ts.map +1 -0
  191. package/dist/security/rate-limit-config.js +57 -0
  192. package/dist/security/rate-limit-config.js.map +1 -0
  193. package/dist/security/rate-limiter.d.ts +46 -0
  194. package/dist/security/rate-limiter.d.ts.map +1 -0
  195. package/dist/security/rate-limiter.js +170 -0
  196. package/dist/security/rate-limiter.js.map +1 -0
  197. package/dist/security/reputation-tracker.d.ts +30 -0
  198. package/dist/security/reputation-tracker.d.ts.map +1 -0
  199. package/dist/security/reputation-tracker.js +111 -0
  200. package/dist/security/reputation-tracker.js.map +1 -0
  201. package/dist/security/rules/balance-manipulation-rule.d.ts +23 -0
  202. package/dist/security/rules/balance-manipulation-rule.d.ts.map +1 -0
  203. package/dist/security/rules/balance-manipulation-rule.js +70 -0
  204. package/dist/security/rules/balance-manipulation-rule.js.map +1 -0
  205. package/dist/security/rules/double-spend-detection-rule.d.ts +23 -0
  206. package/dist/security/rules/double-spend-detection-rule.d.ts.map +1 -0
  207. package/dist/security/rules/double-spend-detection-rule.js +61 -0
  208. package/dist/security/rules/double-spend-detection-rule.js.map +1 -0
  209. package/dist/security/rules/rapid-channel-closure-rule.d.ts +16 -0
  210. package/dist/security/rules/rapid-channel-closure-rule.d.ts.map +1 -0
  211. package/dist/security/rules/rapid-channel-closure-rule.js +57 -0
  212. package/dist/security/rules/rapid-channel-closure-rule.js.map +1 -0
  213. package/dist/security/rules/sudden-traffic-spike-rule.d.ts +18 -0
  214. package/dist/security/rules/sudden-traffic-spike-rule.d.ts.map +1 -0
  215. package/dist/security/rules/sudden-traffic-spike-rule.js +92 -0
  216. package/dist/security/rules/sudden-traffic-spike-rule.js.map +1 -0
  217. package/dist/security/rules/unusual-settlement-amount-rule.d.ts +12 -0
  218. package/dist/security/rules/unusual-settlement-amount-rule.d.ts.map +1 -0
  219. package/dist/security/rules/unusual-settlement-amount-rule.js +33 -0
  220. package/dist/security/rules/unusual-settlement-amount-rule.js.map +1 -0
  221. package/dist/security/token-bucket.d.ts +16 -0
  222. package/dist/security/token-bucket.d.ts.map +1 -0
  223. package/dist/security/token-bucket.js +49 -0
  224. package/dist/security/token-bucket.js.map +1 -0
  225. package/dist/security/violation-counter.d.ts +11 -0
  226. package/dist/security/violation-counter.d.ts.map +1 -0
  227. package/dist/security/violation-counter.js +61 -0
  228. package/dist/security/violation-counter.js.map +1 -0
  229. package/dist/settlement/account-id-generator.d.ts +4 -0
  230. package/dist/settlement/account-id-generator.d.ts.map +1 -0
  231. package/dist/settlement/account-id-generator.js +38 -0
  232. package/dist/settlement/account-id-generator.js.map +1 -0
  233. package/dist/settlement/account-manager.d.ts +51 -0
  234. package/dist/settlement/account-manager.d.ts.map +1 -0
  235. package/dist/settlement/account-manager.js +459 -0
  236. package/dist/settlement/account-manager.js.map +1 -0
  237. package/dist/settlement/account-metadata.d.ts +11 -0
  238. package/dist/settlement/account-metadata.d.ts.map +1 -0
  239. package/dist/settlement/account-metadata.js +40 -0
  240. package/dist/settlement/account-metadata.js.map +1 -0
  241. package/dist/settlement/channel-manager.d.ts +67 -0
  242. package/dist/settlement/channel-manager.d.ts.map +1 -0
  243. package/dist/settlement/channel-manager.js +226 -0
  244. package/dist/settlement/channel-manager.js.map +1 -0
  245. package/dist/settlement/claim-receiver-db-schema.d.ts +4 -0
  246. package/dist/settlement/claim-receiver-db-schema.d.ts.map +1 -0
  247. package/dist/settlement/claim-receiver-db-schema.js +25 -0
  248. package/dist/settlement/claim-receiver-db-schema.js.map +1 -0
  249. package/dist/settlement/claim-receiver.d.ts +67 -0
  250. package/dist/settlement/claim-receiver.d.ts.map +1 -0
  251. package/dist/settlement/claim-receiver.js +707 -0
  252. package/dist/settlement/claim-receiver.js.map +1 -0
  253. package/dist/settlement/claim-redemption-service.d.ts +39 -0
  254. package/dist/settlement/claim-redemption-service.d.ts.map +1 -0
  255. package/dist/settlement/claim-redemption-service.js +189 -0
  256. package/dist/settlement/claim-redemption-service.js.map +1 -0
  257. package/dist/settlement/claim-sender-db-schema.d.ts +3 -0
  258. package/dist/settlement/claim-sender-db-schema.d.ts.map +1 -0
  259. package/dist/settlement/claim-sender-db-schema.js +18 -0
  260. package/dist/settlement/claim-sender-db-schema.js.map +1 -0
  261. package/dist/settlement/claim-sender.d.ts +24 -0
  262. package/dist/settlement/claim-sender.d.ts.map +1 -0
  263. package/dist/settlement/claim-sender.js +146 -0
  264. package/dist/settlement/claim-sender.js.map +1 -0
  265. package/dist/settlement/eip712-helper.d.ts +13 -0
  266. package/dist/settlement/eip712-helper.d.ts.map +1 -0
  267. package/dist/settlement/eip712-helper.js +24 -0
  268. package/dist/settlement/eip712-helper.js.map +1 -0
  269. package/dist/settlement/in-memory-ledger-client.d.ts +40 -0
  270. package/dist/settlement/in-memory-ledger-client.d.ts.map +1 -0
  271. package/dist/settlement/in-memory-ledger-client.js +177 -0
  272. package/dist/settlement/in-memory-ledger-client.js.map +1 -0
  273. package/dist/settlement/ledger-client.d.ts +22 -0
  274. package/dist/settlement/ledger-client.d.ts.map +1 -0
  275. package/dist/settlement/ledger-client.js +3 -0
  276. package/dist/settlement/ledger-client.js.map +1 -0
  277. package/dist/settlement/metrics-collector.d.ts +29 -0
  278. package/dist/settlement/metrics-collector.d.ts.map +1 -0
  279. package/dist/settlement/metrics-collector.js +81 -0
  280. package/dist/settlement/metrics-collector.js.map +1 -0
  281. package/dist/settlement/mina-payment-channel-sdk.d.ts +73 -0
  282. package/dist/settlement/mina-payment-channel-sdk.d.ts.map +1 -0
  283. package/dist/settlement/mina-payment-channel-sdk.js +538 -0
  284. package/dist/settlement/mina-payment-channel-sdk.js.map +1 -0
  285. package/dist/settlement/payment-channel-sdk.d.ts +59 -0
  286. package/dist/settlement/payment-channel-sdk.d.ts.map +1 -0
  287. package/dist/settlement/payment-channel-sdk.js +677 -0
  288. package/dist/settlement/payment-channel-sdk.js.map +1 -0
  289. package/dist/settlement/per-packet-claim-service.d.ts +39 -0
  290. package/dist/settlement/per-packet-claim-service.d.ts.map +1 -0
  291. package/dist/settlement/per-packet-claim-service.js +342 -0
  292. package/dist/settlement/per-packet-claim-service.js.map +1 -0
  293. package/dist/settlement/privacy/index.d.ts +3 -0
  294. package/dist/settlement/privacy/index.d.ts.map +1 -0
  295. package/dist/settlement/privacy/index.js +11 -0
  296. package/dist/settlement/privacy/index.js.map +1 -0
  297. package/dist/settlement/privacy/nip59-claim-wrapper.d.ts +60 -0
  298. package/dist/settlement/privacy/nip59-claim-wrapper.d.ts.map +1 -0
  299. package/dist/settlement/privacy/nip59-claim-wrapper.js +361 -0
  300. package/dist/settlement/privacy/nip59-claim-wrapper.js.map +1 -0
  301. package/dist/settlement/provider/chain-provider-registry.d.ts +20 -0
  302. package/dist/settlement/provider/chain-provider-registry.d.ts.map +1 -0
  303. package/dist/settlement/provider/chain-provider-registry.js +53 -0
  304. package/dist/settlement/provider/chain-provider-registry.js.map +1 -0
  305. package/dist/settlement/provider/evm-payment-channel-provider.d.ts +31 -0
  306. package/dist/settlement/provider/evm-payment-channel-provider.d.ts.map +1 -0
  307. package/dist/settlement/provider/evm-payment-channel-provider.js +207 -0
  308. package/dist/settlement/provider/evm-payment-channel-provider.js.map +1 -0
  309. package/dist/settlement/provider/index.d.ts +6 -0
  310. package/dist/settlement/provider/index.d.ts.map +1 -0
  311. package/dist/settlement/provider/index.js +16 -0
  312. package/dist/settlement/provider/index.js.map +1 -0
  313. package/dist/settlement/provider/mina-payment-channel-provider.d.ts +43 -0
  314. package/dist/settlement/provider/mina-payment-channel-provider.d.ts.map +1 -0
  315. package/dist/settlement/provider/mina-payment-channel-provider.js +330 -0
  316. package/dist/settlement/provider/mina-payment-channel-provider.js.map +1 -0
  317. package/dist/settlement/provider/payment-channel-provider.d.ts +88 -0
  318. package/dist/settlement/provider/payment-channel-provider.d.ts.map +1 -0
  319. package/dist/settlement/provider/payment-channel-provider.js +3 -0
  320. package/dist/settlement/provider/payment-channel-provider.js.map +1 -0
  321. package/dist/settlement/provider/solana-payment-channel-provider.d.ts +38 -0
  322. package/dist/settlement/provider/solana-payment-channel-provider.d.ts.map +1 -0
  323. package/dist/settlement/provider/solana-payment-channel-provider.js +262 -0
  324. package/dist/settlement/provider/solana-payment-channel-provider.js.map +1 -0
  325. package/dist/settlement/sent-claims-queries.d.ts +23 -0
  326. package/dist/settlement/sent-claims-queries.d.ts.map +1 -0
  327. package/dist/settlement/sent-claims-queries.js +134 -0
  328. package/dist/settlement/sent-claims-queries.js.map +1 -0
  329. package/dist/settlement/settlement-api.d.ts +37 -0
  330. package/dist/settlement/settlement-api.d.ts.map +1 -0
  331. package/dist/settlement/settlement-api.js +172 -0
  332. package/dist/settlement/settlement-api.js.map +1 -0
  333. package/dist/settlement/settlement-coordinator.d.ts +47 -0
  334. package/dist/settlement/settlement-coordinator.d.ts.map +1 -0
  335. package/dist/settlement/settlement-coordinator.js +166 -0
  336. package/dist/settlement/settlement-coordinator.js.map +1 -0
  337. package/dist/settlement/settlement-executor.d.ts +51 -0
  338. package/dist/settlement/settlement-executor.d.ts.map +1 -0
  339. package/dist/settlement/settlement-executor.js +265 -0
  340. package/dist/settlement/settlement-executor.js.map +1 -0
  341. package/dist/settlement/settlement-monitor.d.ts +30 -0
  342. package/dist/settlement/settlement-monitor.d.ts.map +1 -0
  343. package/dist/settlement/settlement-monitor.js +141 -0
  344. package/dist/settlement/settlement-monitor.js.map +1 -0
  345. package/dist/settlement/solana-payment-channel-sdk.d.ts +79 -0
  346. package/dist/settlement/solana-payment-channel-sdk.d.ts.map +1 -0
  347. package/dist/settlement/solana-payment-channel-sdk.js +636 -0
  348. package/dist/settlement/solana-payment-channel-sdk.js.map +1 -0
  349. package/dist/settlement/tigerbeetle-batch-writer.d.ts +58 -0
  350. package/dist/settlement/tigerbeetle-batch-writer.d.ts.map +1 -0
  351. package/dist/settlement/tigerbeetle-batch-writer.js +162 -0
  352. package/dist/settlement/tigerbeetle-batch-writer.js.map +1 -0
  353. package/dist/settlement/tigerbeetle-client.d.ts +40 -0
  354. package/dist/settlement/tigerbeetle-client.d.ts.map +1 -0
  355. package/dist/settlement/tigerbeetle-client.js +279 -0
  356. package/dist/settlement/tigerbeetle-client.js.map +1 -0
  357. package/dist/settlement/tigerbeetle-errors.d.ts +23 -0
  358. package/dist/settlement/tigerbeetle-errors.d.ts.map +1 -0
  359. package/dist/settlement/tigerbeetle-errors.js +58 -0
  360. package/dist/settlement/tigerbeetle-errors.js.map +1 -0
  361. package/dist/settlement/types.d.ts +64 -0
  362. package/dist/settlement/types.d.ts.map +1 -0
  363. package/dist/settlement/types.js +42 -0
  364. package/dist/settlement/types.js.map +1 -0
  365. package/dist/settlement/unified-settlement-executor.d.ts +34 -0
  366. package/dist/settlement/unified-settlement-executor.d.ts.map +1 -0
  367. package/dist/settlement/unified-settlement-executor.js +145 -0
  368. package/dist/settlement/unified-settlement-executor.js.map +1 -0
  369. package/dist/test-utils/index.d.ts +3 -0
  370. package/dist/test-utils/index.d.ts.map +1 -0
  371. package/dist/test-utils/index.js +15 -0
  372. package/dist/test-utils/index.js.map +1 -0
  373. package/dist/test-utils/isolated-test-env.d.ts +31 -0
  374. package/dist/test-utils/isolated-test-env.d.ts.map +1 -0
  375. package/dist/test-utils/isolated-test-env.js +127 -0
  376. package/dist/test-utils/isolated-test-env.js.map +1 -0
  377. package/dist/test-utils/mock-factories-patch.d.ts +2 -0
  378. package/dist/test-utils/mock-factories-patch.d.ts.map +1 -0
  379. package/dist/test-utils/mock-factories-patch.js +3 -0
  380. package/dist/test-utils/mock-factories-patch.js.map +1 -0
  381. package/dist/test-utils/mock-factories.d.ts +22 -0
  382. package/dist/test-utils/mock-factories.d.ts.map +1 -0
  383. package/dist/test-utils/mock-factories.js +56 -0
  384. package/dist/test-utils/mock-factories.js.map +1 -0
  385. package/dist/transport/direct-transport-provider.d.ts +12 -0
  386. package/dist/transport/direct-transport-provider.d.ts.map +1 -0
  387. package/dist/transport/direct-transport-provider.js +27 -0
  388. package/dist/transport/direct-transport-provider.js.map +1 -0
  389. package/dist/transport/index.d.ts +7 -0
  390. package/dist/transport/index.d.ts.map +1 -0
  391. package/dist/transport/index.js +16 -0
  392. package/dist/transport/index.js.map +1 -0
  393. package/dist/transport/managed-anon-client.d.ts +47 -0
  394. package/dist/transport/managed-anon-client.d.ts.map +1 -0
  395. package/dist/transport/managed-anon-client.js +265 -0
  396. package/dist/transport/managed-anon-client.js.map +1 -0
  397. package/dist/transport/probe-tcp-port.d.ts +3 -0
  398. package/dist/transport/probe-tcp-port.d.ts.map +1 -0
  399. package/dist/transport/probe-tcp-port.js +59 -0
  400. package/dist/transport/probe-tcp-port.js.map +1 -0
  401. package/dist/transport/socks-transport-provider.d.ts +29 -0
  402. package/dist/transport/socks-transport-provider.d.ts.map +1 -0
  403. package/dist/transport/socks-transport-provider.js +136 -0
  404. package/dist/transport/socks-transport-provider.js.map +1 -0
  405. package/dist/transport/socks-url.d.ts +6 -0
  406. package/dist/transport/socks-url.d.ts.map +1 -0
  407. package/dist/transport/socks-url.js +29 -0
  408. package/dist/transport/socks-url.js.map +1 -0
  409. package/dist/transport/transport-provider.d.ts +9 -0
  410. package/dist/transport/transport-provider.d.ts.map +1 -0
  411. package/dist/transport/transport-provider.js +3 -0
  412. package/dist/transport/transport-provider.js.map +1 -0
  413. package/dist/utils/connection-pool.d.ts +42 -0
  414. package/dist/utils/connection-pool.d.ts.map +1 -0
  415. package/dist/utils/connection-pool.js +209 -0
  416. package/dist/utils/connection-pool.js.map +1 -0
  417. package/dist/utils/evm-rpc-connection-pool.d.ts +8 -0
  418. package/dist/utils/evm-rpc-connection-pool.d.ts.map +1 -0
  419. package/dist/utils/evm-rpc-connection-pool.js +40 -0
  420. package/dist/utils/evm-rpc-connection-pool.js.map +1 -0
  421. package/dist/utils/logger.d.ts +6 -0
  422. package/dist/utils/logger.d.ts.map +1 -0
  423. package/dist/utils/logger.js +58 -0
  424. package/dist/utils/logger.js.map +1 -0
  425. package/dist/utils/optional-require.d.ts +2 -0
  426. package/dist/utils/optional-require.d.ts.map +1 -0
  427. package/dist/utils/optional-require.js +54 -0
  428. package/dist/utils/optional-require.js.map +1 -0
  429. package/dist/utils/redact.d.ts +3 -0
  430. package/dist/utils/redact.d.ts.map +1 -0
  431. package/dist/utils/redact.js +21 -0
  432. package/dist/utils/redact.js.map +1 -0
  433. package/dist/wallet/audit-logger.d.ts +22 -0
  434. package/dist/wallet/audit-logger.d.ts.map +1 -0
  435. package/dist/wallet/audit-logger.js +120 -0
  436. package/dist/wallet/audit-logger.js.map +1 -0
  437. package/dist/wallet/fraud-detector-interface.d.ts +14 -0
  438. package/dist/wallet/fraud-detector-interface.d.ts.map +1 -0
  439. package/dist/wallet/fraud-detector-interface.js +3 -0
  440. package/dist/wallet/fraud-detector-interface.js.map +1 -0
  441. package/dist/wallet/key-manager.d.ts +6 -0
  442. package/dist/wallet/key-manager.d.ts.map +1 -0
  443. package/dist/wallet/key-manager.js +3 -0
  444. package/dist/wallet/key-manager.js.map +1 -0
  445. package/dist/wallet/rate-limiter.d.ts +26 -0
  446. package/dist/wallet/rate-limiter.d.ts.map +1 -0
  447. package/dist/wallet/rate-limiter.js +114 -0
  448. package/dist/wallet/rate-limiter.js.map +1 -0
  449. package/dist/wallet/suspicious-activity-detector.d.ts +25 -0
  450. package/dist/wallet/suspicious-activity-detector.d.ts.map +1 -0
  451. package/dist/wallet/suspicious-activity-detector.js +97 -0
  452. package/dist/wallet/suspicious-activity-detector.js.map +1 -0
  453. package/dist/wallet/treasury-wallet.d.ts +20 -0
  454. package/dist/wallet/treasury-wallet.d.ts.map +1 -0
  455. package/dist/wallet/treasury-wallet.js +151 -0
  456. package/dist/wallet/treasury-wallet.js.map +1 -0
  457. package/dist/wallet/wallet-authentication.d.ts +31 -0
  458. package/dist/wallet/wallet-authentication.d.ts.map +1 -0
  459. package/dist/wallet/wallet-authentication.js +102 -0
  460. package/dist/wallet/wallet-authentication.js.map +1 -0
  461. package/dist/wallet/wallet-db-schema.d.ts +11 -0
  462. package/dist/wallet/wallet-db-schema.d.ts.map +1 -0
  463. package/dist/wallet/wallet-db-schema.js +79 -0
  464. package/dist/wallet/wallet-db-schema.js.map +1 -0
  465. package/dist/wallet/wallet-security.d.ts +58 -0
  466. package/dist/wallet/wallet-security.d.ts.map +1 -0
  467. package/dist/wallet/wallet-security.js +148 -0
  468. package/dist/wallet/wallet-security.js.map +1 -0
  469. package/dist/wallet/wallet-seed-manager.d.ts +65 -0
  470. package/dist/wallet/wallet-seed-manager.d.ts.map +1 -0
  471. package/dist/wallet/wallet-seed-manager.js +418 -0
  472. package/dist/wallet/wallet-seed-manager.js.map +1 -0
  473. package/package.json +1 -1
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TopologyValidator = void 0;
4
+ class TopologyValidator {
5
+ static detectDisconnectedNodes(configs) {
6
+ const nodeIds = Array.from(configs.keys());
7
+ if (nodeIds.length <= 1) {
8
+ return [];
9
+ }
10
+ const adjacencyList = new Map();
11
+ for (const nodeId of nodeIds) {
12
+ adjacencyList.set(nodeId, new Set());
13
+ }
14
+ for (const [nodeId, config] of configs) {
15
+ for (const peer of config.peers) {
16
+ adjacencyList.get(nodeId)?.add(peer.id);
17
+ adjacencyList.get(peer.id)?.add(nodeId);
18
+ }
19
+ }
20
+ const visited = new Set();
21
+ const startNode = nodeIds[0];
22
+ const dfs = (nodeId) => {
23
+ visited.add(nodeId);
24
+ const neighbors = adjacencyList.get(nodeId) || new Set();
25
+ for (const neighbor of neighbors) {
26
+ if (!visited.has(neighbor) && configs.has(neighbor)) {
27
+ dfs(neighbor);
28
+ }
29
+ }
30
+ };
31
+ if (startNode) {
32
+ dfs(startNode);
33
+ }
34
+ const disconnected = [];
35
+ for (const nodeId of nodeIds) {
36
+ if (!visited.has(nodeId)) {
37
+ disconnected.push(nodeId);
38
+ }
39
+ }
40
+ return disconnected;
41
+ }
42
+ static detectInvalidPeerReferences(config, allNodeIds) {
43
+ const invalidPeers = [];
44
+ for (const peer of config.peers) {
45
+ if (!allNodeIds.has(peer.id)) {
46
+ invalidPeers.push(peer.id);
47
+ }
48
+ }
49
+ return invalidPeers;
50
+ }
51
+ static validateReachability(configs) {
52
+ const warnings = [];
53
+ for (const [nodeId, config] of configs) {
54
+ const connectedPeers = new Set(config.peers.map((p) => p.id));
55
+ for (const route of config.routes) {
56
+ const nextHop = route.nextHop;
57
+ if (!connectedPeers.has(nextHop)) {
58
+ warnings.push(`Node ${nodeId}: Route to ${route.prefix} unreachable (nextHop ${nextHop} not connected)`);
59
+ continue;
60
+ }
61
+ if (!configs.has(nextHop)) {
62
+ warnings.push(`Node ${nodeId}: Route to ${route.prefix} unreachable (nextHop ${nextHop} does not exist in topology)`);
63
+ }
64
+ }
65
+ }
66
+ return warnings;
67
+ }
68
+ static detectCircularRouteDependencies(configs) {
69
+ const cycles = [];
70
+ const visited = new Set();
71
+ const recursionStack = new Set();
72
+ const currentPath = [];
73
+ const routeDependencies = new Map();
74
+ for (const [nodeId, config] of configs) {
75
+ const dependencies = new Set();
76
+ for (const route of config.routes) {
77
+ dependencies.add(route.nextHop);
78
+ }
79
+ routeDependencies.set(nodeId, dependencies);
80
+ }
81
+ const dfs = (nodeId) => {
82
+ visited.add(nodeId);
83
+ recursionStack.add(nodeId);
84
+ currentPath.push(nodeId);
85
+ const dependencies = routeDependencies.get(nodeId) || new Set();
86
+ for (const dependency of dependencies) {
87
+ if (!configs.has(dependency)) {
88
+ continue;
89
+ }
90
+ if (!visited.has(dependency)) {
91
+ if (dfs(dependency)) {
92
+ return true;
93
+ }
94
+ }
95
+ else if (recursionStack.has(dependency)) {
96
+ const cycleStartIndex = currentPath.indexOf(dependency);
97
+ const cyclePath = currentPath.slice(cycleStartIndex).concat(dependency);
98
+ cycles.push(`Circular route dependency: ${cyclePath.join(' → ')}`);
99
+ return true;
100
+ }
101
+ }
102
+ recursionStack.delete(nodeId);
103
+ currentPath.pop();
104
+ return false;
105
+ };
106
+ for (const nodeId of configs.keys()) {
107
+ if (!visited.has(nodeId)) {
108
+ dfs(nodeId);
109
+ }
110
+ }
111
+ return cycles;
112
+ }
113
+ static validateTopology(configs) {
114
+ const errors = [];
115
+ const warnings = [];
116
+ const disconnectedNodes = this.detectDisconnectedNodes(configs);
117
+ if (disconnectedNodes.length > 0) {
118
+ errors.push(`Disconnected nodes detected: ${disconnectedNodes.join(', ')}. ` +
119
+ `All nodes must be connected via BTP peer relationships.`);
120
+ }
121
+ const allNodeIds = new Set(configs.keys());
122
+ for (const [nodeId, config] of configs) {
123
+ const invalidPeers = this.detectInvalidPeerReferences(config, allNodeIds);
124
+ if (invalidPeers.length > 0) {
125
+ errors.push(`Node ${nodeId} references non-existent peers: ${invalidPeers.join(', ')}`);
126
+ }
127
+ }
128
+ const reachabilityWarnings = this.validateReachability(configs);
129
+ warnings.push(...reachabilityWarnings);
130
+ const circularDependencies = this.detectCircularRouteDependencies(configs);
131
+ if (circularDependencies.length > 0) {
132
+ warnings.push(...circularDependencies);
133
+ }
134
+ return {
135
+ valid: errors.length === 0,
136
+ errors,
137
+ warnings,
138
+ };
139
+ }
140
+ }
141
+ exports.TopologyValidator = TopologyValidator;
142
+ //# sourceMappingURL=topology-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"topology-validator.js","sourceRoot":"","sources":["../../src/config/topology-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,226 @@
1
+ import type { ProviderConfig } from '../settlement/provider/payment-channel-provider';
2
+ export type ChainProviderConfigEntry = ProviderConfig & {
3
+ chainId: string;
4
+ };
5
+ export interface PeerConfig {
6
+ id: string;
7
+ url: string;
8
+ authToken: string;
9
+ evmAddress?: string;
10
+ chain?: string;
11
+ nip59PublicKey?: string;
12
+ }
13
+ export interface RouteConfig {
14
+ prefix: string;
15
+ nextHop: string;
16
+ priority?: number;
17
+ }
18
+ export type TransportConfig = {
19
+ type: 'direct';
20
+ } | {
21
+ type: 'socks5';
22
+ socksProxy: string;
23
+ externalUrl: string;
24
+ managed: boolean;
25
+ managedOptions?: {
26
+ hiddenServiceDir?: string;
27
+ hiddenServicePort?: number;
28
+ startupTimeoutMs?: number;
29
+ stopTimeoutMs?: number;
30
+ binaryPath?: string;
31
+ configFilePath?: string;
32
+ };
33
+ };
34
+ export interface ConnectorConfig {
35
+ nodeId: string;
36
+ btpServerPort: number;
37
+ healthCheckPort?: number;
38
+ logLevel?: 'debug' | 'info' | 'warn' | 'error';
39
+ peers: PeerConfig[];
40
+ routes: RouteConfig[];
41
+ settlement?: SettlementConfig;
42
+ chainProviders?: ChainProviderConfigEntry[];
43
+ environment: Environment;
44
+ deploymentMode?: DeploymentMode;
45
+ blockchain?: BlockchainConfig;
46
+ nip59?: {
47
+ enabled: boolean;
48
+ };
49
+ transport?: TransportConfig;
50
+ security?: SecurityConfig;
51
+ mode?: 'connector' | 'gateway';
52
+ adminApi?: AdminApiConfig;
53
+ firstHopUrl?: string;
54
+ btpAuthToken?: string;
55
+ localDelivery?: LocalDeliveryConfig;
56
+ }
57
+ export interface CreditLimitConfig {
58
+ defaultLimit?: bigint;
59
+ perPeerLimits?: Map<string, bigint>;
60
+ perTokenLimits?: Map<string, Map<string, bigint>>;
61
+ globalCeiling?: bigint;
62
+ }
63
+ export interface CreditLimitViolation {
64
+ peerId: string;
65
+ tokenId: string;
66
+ currentBalance: bigint;
67
+ requestedAmount: bigint;
68
+ creditLimit: bigint;
69
+ wouldExceedBy: bigint;
70
+ }
71
+ export interface SettlementConfig {
72
+ connectorFeePercentage: number;
73
+ enableSettlement: boolean;
74
+ tigerBeetleClusterId: number;
75
+ tigerBeetleReplicas: string[];
76
+ creditLimits?: CreditLimitConfig;
77
+ thresholds?: SettlementThresholdConfig;
78
+ }
79
+ export type Environment = 'development' | 'staging' | 'production';
80
+ export type DeploymentMode = 'embedded' | 'standalone';
81
+ export interface SettlementTransferMetadata {
82
+ packetId: string;
83
+ timestamp: Date;
84
+ incomingPeerId: string;
85
+ outgoingPeerId: string;
86
+ originalAmount: bigint;
87
+ forwardedAmount: bigint;
88
+ connectorFee: bigint;
89
+ }
90
+ export interface SettlementThresholdConfig {
91
+ defaultThreshold?: bigint;
92
+ perPeerThresholds?: Map<string, bigint>;
93
+ perTokenThresholds?: Map<string, Map<string, bigint>>;
94
+ timeBasedIntervalMs?: number;
95
+ pollingInterval?: number;
96
+ }
97
+ export declare enum SettlementState {
98
+ IDLE = "IDLE",
99
+ SETTLEMENT_PENDING = "SETTLEMENT_PENDING",
100
+ SETTLEMENT_IN_PROGRESS = "SETTLEMENT_IN_PROGRESS"
101
+ }
102
+ export interface SettlementTriggerEvent {
103
+ peerId: string;
104
+ tokenId: string;
105
+ currentBalance: bigint;
106
+ threshold: bigint;
107
+ exceedsBy: bigint;
108
+ timestamp: Date;
109
+ }
110
+ export interface BlockchainConfig {
111
+ base?: EVMChainConfig;
112
+ arbitrum?: EVMChainConfig;
113
+ }
114
+ export interface EVMChainConfig {
115
+ enabled: boolean;
116
+ rpcUrl: string;
117
+ chainId: number;
118
+ privateKey?: string;
119
+ registryAddress?: string;
120
+ tokenAddress?: string;
121
+ }
122
+ export type BaseBlockchainConfig = EVMChainConfig;
123
+ export interface SecurityConfig {
124
+ keyManagement: {
125
+ backend: 'env' | 'aws-kms' | 'gcp-kms' | 'azure-kv' | 'hsm';
126
+ nodeId: string;
127
+ [key: string]: unknown;
128
+ };
129
+ }
130
+ export interface LocalDeliveryConfig {
131
+ enabled?: boolean;
132
+ handlerUrl?: string;
133
+ timeout?: number;
134
+ authToken?: string;
135
+ perHopNotification?: boolean;
136
+ }
137
+ export interface LocalDeliveryRequest {
138
+ destination: string;
139
+ amount: string;
140
+ expiresAt: string;
141
+ data: string;
142
+ sourcePeer: string;
143
+ isTransit?: boolean;
144
+ }
145
+ export interface LocalDeliveryResponse {
146
+ fulfill?: {
147
+ data?: string;
148
+ };
149
+ reject?: {
150
+ code: string;
151
+ message: string;
152
+ data?: string;
153
+ };
154
+ }
155
+ export type LocalDeliveryHandler = (packet: LocalDeliveryRequest, sourcePeerId: string) => Promise<LocalDeliveryResponse>;
156
+ export interface SendPacketParams {
157
+ destination: string;
158
+ amount: bigint;
159
+ expiresAt: Date;
160
+ data?: Buffer;
161
+ }
162
+ import type { AdminSettlementConfig } from '../settlement/types';
163
+ export interface PeerRegistrationRequest {
164
+ id: string;
165
+ url: string;
166
+ authToken: string;
167
+ routes?: Array<{
168
+ prefix: string;
169
+ priority?: number;
170
+ }>;
171
+ settlement?: AdminSettlementConfig;
172
+ }
173
+ export interface PeerInfo {
174
+ id: string;
175
+ connected: boolean;
176
+ ilpAddresses: string[];
177
+ routeCount: number;
178
+ settlement?: Record<string, unknown>;
179
+ }
180
+ export interface PeerAccountBalance {
181
+ peerId: string;
182
+ balances: Array<{
183
+ tokenId: string;
184
+ debitBalance: string;
185
+ creditBalance: string;
186
+ netBalance: string;
187
+ }>;
188
+ }
189
+ export interface RouteInfo {
190
+ prefix: string;
191
+ nextHop: string;
192
+ priority: number;
193
+ }
194
+ export interface RemovePeerResult {
195
+ peerId: string;
196
+ removedRoutes: string[];
197
+ }
198
+ export interface IlpSendRequest {
199
+ destination: string;
200
+ amount: string;
201
+ data: string;
202
+ expiresAt?: string;
203
+ condition?: string;
204
+ timeoutMs?: number;
205
+ }
206
+ export interface IlpSendResponse {
207
+ accepted: boolean;
208
+ code?: string;
209
+ message?: string;
210
+ data?: string;
211
+ fulfillment?: string;
212
+ }
213
+ export interface AdminApiConfig {
214
+ enabled?: boolean;
215
+ port?: number;
216
+ host?: string;
217
+ apiKey?: string;
218
+ allowedIPs?: string[];
219
+ trustProxy?: boolean;
220
+ }
221
+ interface ValidationLogger {
222
+ warn(obj: Record<string, unknown>, msg: string): void;
223
+ }
224
+ export declare function validateChainProviders(config: ConnectorConfig, _logger?: ValidationLogger): void;
225
+ export {};
226
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SettlementState = void 0;
4
+ exports.validateChainProviders = validateChainProviders;
5
+ var SettlementState;
6
+ (function (SettlementState) {
7
+ SettlementState["IDLE"] = "IDLE";
8
+ SettlementState["SETTLEMENT_PENDING"] = "SETTLEMENT_PENDING";
9
+ SettlementState["SETTLEMENT_IN_PROGRESS"] = "SETTLEMENT_IN_PROGRESS";
10
+ })(SettlementState || (exports.SettlementState = SettlementState = {}));
11
+ const KNOWN_CHAIN_TYPES = new Set(['evm', 'solana', 'mina']);
12
+ const REQUIRED_FIELDS_BY_CHAIN_TYPE = {
13
+ evm: ['rpcUrl', 'registryAddress', 'keyId', 'tokenAddress'],
14
+ solana: ['rpcUrl', 'programId', 'keyId'],
15
+ mina: ['graphqlUrl', 'zkAppAddress'],
16
+ };
17
+ function validateChainProviders(config, _logger) {
18
+ const entries = config.chainProviders;
19
+ if (!entries || entries.length === 0) {
20
+ return;
21
+ }
22
+ const seenChainIds = new Set();
23
+ for (const entry of entries) {
24
+ const rec = entry;
25
+ const chainType = rec.chainType;
26
+ if (!KNOWN_CHAIN_TYPES.has(chainType)) {
27
+ throw new Error(`Unknown chain type: ${chainType}`);
28
+ }
29
+ const chainId = rec.chainId;
30
+ if (!chainId) {
31
+ throw new Error(`Missing required field 'chainId' for chain type '${chainType}'`);
32
+ }
33
+ if (seenChainIds.has(chainId)) {
34
+ throw new Error(`Duplicate chainId: ${chainId}`);
35
+ }
36
+ seenChainIds.add(chainId);
37
+ const requiredFields = REQUIRED_FIELDS_BY_CHAIN_TYPE[chainType];
38
+ if (requiredFields) {
39
+ for (const field of requiredFields) {
40
+ if (!rec[field]) {
41
+ throw new Error(`Missing required field '${field}' for chain type '${chainType}' (chainId: ${chainId})`);
42
+ }
43
+ }
44
+ }
45
+ }
46
+ for (const peer of config.peers) {
47
+ if (peer.chain && !seenChainIds.has(peer.chain)) {
48
+ throw new Error(`Peer '${peer.id}' references unregistered chain: ${peer.chain}`);
49
+ }
50
+ }
51
+ }
52
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":";;;AAyuDA,wDAkDC;AA7uBD,IAAY,eAsBX;AAtBD,WAAY,eAAe;IAMzB,gCAAa,CAAA;IAOb,4DAAyC,CAAA;IAQzC,oEAAiD,CAAA;AACnD,CAAC,EAtBW,eAAe,+BAAf,eAAe,QAsB1B;AAqoBD,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAG1F,MAAM,6BAA6B,GAAsC;IACvE,GAAG,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,CAAC;IAC3D,MAAM,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC;IACxC,IAAI,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC;CACrC,CAAC;AAyBF,SAAgB,sBAAsB,CAAC,MAAuB,EAAE,OAA0B;IACxF,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC;IAEtC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO;IACT,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAG5B,MAAM,GAAG,GAAG,KAA2C,CAAC;QACxD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAmB,CAAC;QAE1C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC;QAGD,MAAM,OAAO,GAAG,GAAG,CAAC,OAA6B,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,oDAAoD,SAAS,GAAG,CAAC,CAAC;QACpF,CAAC;QAGD,IAAI,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAG1B,MAAM,cAAc,GAAG,6BAA6B,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,cAAc,EAAE,CAAC;YACnB,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;gBACnC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CACb,2BAA2B,KAAK,qBAAqB,SAAS,eAAe,OAAO,GAAG,CACxF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAGD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,EAAE,oCAAoC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,91 @@
1
+ import { Logger } from '../utils/logger';
2
+ import { RoutingTable } from '../routing/routing-table';
3
+ import { BTPClientManager } from '../btp/btp-client-manager';
4
+ import { RoutingTableEntry, ILPFulfillPacket, ILPRejectPacket } from '@toon-protocol/shared';
5
+ import { ConnectorConfig, LocalDeliveryHandler, SendPacketParams, PeerRegistrationRequest, PeerInfo, PeerAccountBalance, RouteInfo, RemovePeerResult, DeploymentMode } from '../config/types';
6
+ import { TransportProvider } from '../transport';
7
+ import { PaymentHandler } from './payment-handler';
8
+ import { HealthStatus, HealthStatusProvider } from '../http/types';
9
+ import { PaymentChannelSDK } from '../settlement/payment-channel-sdk';
10
+ import { ChannelManager } from '../settlement/channel-manager';
11
+ import { AccountManager } from '../settlement/account-manager';
12
+ export declare class ConnectorNode implements HealthStatusProvider {
13
+ private readonly _config;
14
+ private readonly _logger;
15
+ private readonly _routingTable;
16
+ private readonly _btpClientManager;
17
+ private readonly _packetHandler;
18
+ private readonly _btpServer;
19
+ private readonly _healthServer;
20
+ private _adminServer;
21
+ private _paymentChannelSDK;
22
+ private _chainSDKs;
23
+ private _channelManager;
24
+ private _accountManager;
25
+ private _settlementMonitor;
26
+ private _settlementExecutor;
27
+ private _tigerBeetleClient;
28
+ private _inMemoryLedgerClient;
29
+ private readonly _settlementPeers;
30
+ private _healthStatus;
31
+ private readonly _ilpMetrics;
32
+ private readonly _startTime;
33
+ private _btpServerStarted;
34
+ private _defaultSettlementTokenId;
35
+ private _transportProvider;
36
+ private _transportProviderReady;
37
+ private _transportType;
38
+ private _lastTransportHealthy;
39
+ private _transportHealthInterval;
40
+ private readonly _transportHealthIntervalMs;
41
+ get defaultSettlementTokenId(): string;
42
+ constructor(config: ConnectorConfig | string, logger: Logger, opts?: {
43
+ transportHealthIntervalMs?: number;
44
+ });
45
+ setLocalDeliveryHandler(handler: LocalDeliveryHandler | null): void;
46
+ setPacketHandler(handler: PaymentHandler | null): void;
47
+ getDeploymentMode(): DeploymentMode;
48
+ isEmbedded(): boolean;
49
+ isStandalone(): boolean;
50
+ sendPacket(params: SendPacketParams): Promise<ILPFulfillPacket | ILPRejectPacket>;
51
+ start(): Promise<void>;
52
+ stop(): Promise<void>;
53
+ getHealthStatus(): HealthStatus;
54
+ get routingTable(): RoutingTable;
55
+ get btpClientManager(): BTPClientManager;
56
+ get transportProvider(): TransportProvider | null;
57
+ private _createTransportProvider;
58
+ get paymentChannelSDK(): PaymentChannelSDK | null;
59
+ get channelManager(): ChannelManager | null;
60
+ get accountManager(): AccountManager | null;
61
+ getPaymentChannelSDKForChain(chainId: number): PaymentChannelSDK | null;
62
+ private _createInMemoryAccountManager;
63
+ private _updateHealthStatus;
64
+ registerPeer(config: PeerRegistrationRequest): Promise<PeerInfo>;
65
+ removePeer(peerId: string, removeRoutes?: boolean): Promise<RemovePeerResult>;
66
+ listPeers(): PeerInfo[];
67
+ getBalance(peerId: string, tokenId?: string): Promise<PeerAccountBalance>;
68
+ listRoutes(): RouteInfo[];
69
+ addRoute(route: RouteInfo): void;
70
+ removeRoute(prefix: string): void;
71
+ openChannel(params: {
72
+ peerId: string;
73
+ chain: string;
74
+ token?: string;
75
+ tokenNetwork?: string;
76
+ peerAddress: string;
77
+ initialDeposit?: string;
78
+ settlementTimeout?: number;
79
+ }): Promise<{
80
+ channelId: string;
81
+ status: string;
82
+ }>;
83
+ getChannelState(channelId: string): Promise<{
84
+ channelId: string;
85
+ status: 'opening' | 'open' | 'closed' | 'settled';
86
+ chain: string;
87
+ }>;
88
+ private _applySettlementConfig;
89
+ getRoutingTable(): RoutingTableEntry[];
90
+ }
91
+ //# sourceMappingURL=connector-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector-node.d.ts","sourceRoot":"","sources":["../../src/core/connector-node.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAI7D,OAAO,EACL,iBAAiB,EAIjB,gBAAgB,EAChB,eAAe,EAGhB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,eAAe,EAEf,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,EACR,kBAAkB,EAClB,SAAS,EACT,gBAAgB,EAChB,cAAc,EAGf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,iBAAiB,EAOlB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAA+B,MAAM,mBAAmB,CAAC;AAehF,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AA4B/D,qBAAa,aAAc,YAAW,oBAAoB;IACxD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,UAAU,CAA6C;IAC/D,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,mBAAmB,CAAmC;IAC9D,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,qBAAqB,CAAqC;IAClE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgD;IACjF,OAAO,CAAC,aAAa,CAAoD;IACzE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsB;IAClD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,yBAAyB,CAAiB;IAElD,OAAO,CAAC,kBAAkB,CAAkC;IAO5D,OAAO,CAAC,uBAAuB,CAAkB;IACjD,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,qBAAqB,CAAiB;IAC9C,OAAO,CAAC,wBAAwB,CAA+B;IAM/D,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAS;IAMpD,IAAI,wBAAwB,IAAI,MAAM,CAErC;gBASC,MAAM,EAAE,eAAe,GAAG,MAAM,EAChC,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE;QAAE,yBAAyB,CAAC,EAAE,MAAM,CAAA;KAAE;IAoI/C,uBAAuB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI;IAqBnE,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI;IAgDtD,iBAAiB,IAAI,cAAc;IA8CnC,UAAU,IAAI,OAAO;IAwBrB,YAAY,IAAI,OAAO;IAYjB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,GAAG,eAAe,CAAC;IAgDjF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA22BtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA8I3B,eAAe,IAAI,YAAY;IAwC/B,IAAI,YAAY,IAAI,YAAY,CAE/B;IAMD,IAAI,gBAAgB,IAAI,gBAAgB,CAEvC;IAYD,IAAI,iBAAiB,IAAI,iBAAiB,GAAG,IAAI,CAKhD;IAoBD,OAAO,CAAC,wBAAwB;IAqOhC,IAAI,iBAAiB,IAAI,iBAAiB,GAAG,IAAI,CAEhD;IAMD,IAAI,cAAc,IAAI,cAAc,GAAG,IAAI,CAE1C;IAMD,IAAI,cAAc,IAAI,cAAc,GAAG,IAAI,CAE1C;IASD,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;YAUzD,6BAA6B;IA2F3C,OAAO,CAAC,mBAAmB;IAkFrB,YAAY,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAsIhE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,GAAE,OAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAuDzF,SAAS,IAAI,QAAQ,EAAE;IAqCjB,UAAU,CACd,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAAuC,GAC/C,OAAO,CAAC,kBAAkB,CAAC;IAyB9B,UAAU,IAAI,SAAS,EAAE;IAiBzB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAmChC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IA0B3B,WAAW,CAAC,MAAM,EAAE;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IA+D5C,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAChD,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;QAClD,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAkCF,OAAO,CAAC,sBAAsB;IA2D9B,eAAe,IAAI,iBAAiB,EAAE;CAGvC"}