libp2p 0.36.0 → 0.36.2-199395d

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 (398) hide show
  1. package/LICENSE +3 -21
  2. package/README.md +13 -10
  3. package/dist/src/address-manager/index.d.ts +33 -52
  4. package/dist/src/address-manager/index.d.ts.map +1 -1
  5. package/dist/src/address-manager/index.js +81 -0
  6. package/dist/src/address-manager/index.js.map +1 -0
  7. package/dist/src/circuit/auto-relay.d.ts +24 -85
  8. package/dist/src/circuit/auto-relay.d.ts.map +1 -1
  9. package/dist/src/circuit/auto-relay.js +215 -0
  10. package/dist/src/circuit/auto-relay.js.map +1 -0
  11. package/dist/src/circuit/circuit/hop.d.ts +25 -52
  12. package/dist/src/circuit/circuit/hop.d.ts.map +1 -1
  13. package/dist/src/circuit/circuit/hop.js +138 -0
  14. package/dist/src/circuit/circuit/hop.js.map +1 -0
  15. package/dist/src/circuit/circuit/stop.d.ts +16 -8
  16. package/dist/src/circuit/circuit/stop.d.ts.map +1 -1
  17. package/dist/src/circuit/circuit/stop.js +49 -0
  18. package/dist/src/circuit/circuit/stop.js.map +1 -0
  19. package/dist/src/circuit/circuit/stream-handler.d.ts +16 -35
  20. package/dist/src/circuit/circuit/stream-handler.d.ts.map +1 -1
  21. package/dist/src/circuit/circuit/stream-handler.js +60 -0
  22. package/dist/src/circuit/circuit/stream-handler.js.map +1 -0
  23. package/dist/src/circuit/circuit/utils.d.ts +3 -6
  24. package/dist/src/circuit/circuit/utils.d.ts.map +1 -1
  25. package/dist/src/circuit/circuit/utils.js +43 -0
  26. package/dist/src/circuit/circuit/utils.js.map +1 -0
  27. package/dist/src/circuit/constants.d.ts +24 -6
  28. package/dist/src/circuit/constants.d.ts.map +1 -1
  29. package/dist/src/circuit/constants.js +26 -0
  30. package/dist/src/circuit/constants.js.map +1 -0
  31. package/dist/src/circuit/index.d.ts +41 -74
  32. package/dist/src/circuit/index.d.ts.map +1 -1
  33. package/dist/src/circuit/index.js +69 -0
  34. package/dist/src/circuit/index.js.map +1 -0
  35. package/dist/src/circuit/listener.d.ts +8 -3
  36. package/dist/src/circuit/listener.d.ts.map +1 -1
  37. package/dist/src/circuit/listener.js +54 -0
  38. package/dist/src/circuit/listener.js.map +1 -0
  39. package/dist/src/circuit/multicodec.d.ts +1 -1
  40. package/dist/src/circuit/multicodec.d.ts.map +1 -1
  41. package/dist/src/circuit/multicodec.js +2 -0
  42. package/dist/src/circuit/multicodec.js.map +1 -0
  43. package/dist/src/circuit/{protocol → pb}/index.d.ts +0 -0
  44. package/{src/circuit/protocol → dist/src/circuit/pb}/index.js +7 -9
  45. package/dist/src/circuit/transport.d.ts +18 -78
  46. package/dist/src/circuit/transport.d.ts.map +1 -1
  47. package/dist/src/circuit/transport.js +190 -0
  48. package/dist/src/circuit/transport.js.map +1 -0
  49. package/dist/src/circuit/utils.d.ts +5 -2
  50. package/dist/src/circuit/utils.d.ts.map +1 -1
  51. package/dist/src/circuit/utils.js +11 -0
  52. package/dist/src/circuit/utils.js.map +1 -0
  53. package/dist/src/config.d.ts +3 -85
  54. package/dist/src/config.d.ts.map +1 -1
  55. package/dist/src/config.js +93 -0
  56. package/dist/src/config.js.map +1 -0
  57. package/dist/src/connection-manager/auto-dialler.d.ts +24 -41
  58. package/dist/src/connection-manager/auto-dialler.d.ts.map +1 -1
  59. package/dist/src/connection-manager/auto-dialler.js +105 -0
  60. package/dist/src/connection-manager/auto-dialler.js.map +1 -0
  61. package/dist/src/connection-manager/index.d.ts +79 -144
  62. package/dist/src/connection-manager/index.d.ts.map +1 -1
  63. package/dist/src/connection-manager/index.js +295 -0
  64. package/dist/src/connection-manager/index.js.map +1 -0
  65. package/dist/src/connection-manager/latency-monitor.d.ts +72 -97
  66. package/dist/src/connection-manager/latency-monitor.d.ts.map +1 -1
  67. package/dist/src/connection-manager/latency-monitor.js +220 -0
  68. package/dist/src/connection-manager/latency-monitor.js.map +1 -0
  69. package/dist/src/connection-manager/visibility-change-emitter.d.ts +15 -16
  70. package/dist/src/connection-manager/visibility-change-emitter.d.ts.map +1 -1
  71. package/dist/src/connection-manager/visibility-change-emitter.js +118 -0
  72. package/dist/src/connection-manager/visibility-change-emitter.js.map +1 -0
  73. package/dist/src/constants.d.ts +22 -10
  74. package/dist/src/constants.d.ts.map +1 -1
  75. package/dist/src/constants.js +27 -0
  76. package/dist/src/constants.js.map +1 -0
  77. package/dist/src/content-routing/index.d.ts +26 -81
  78. package/dist/src/content-routing/index.d.ts.map +1 -1
  79. package/dist/src/content-routing/index.js +99 -0
  80. package/dist/src/content-routing/index.js.map +1 -0
  81. package/dist/src/content-routing/utils.d.ts +6 -49
  82. package/dist/src/content-routing/utils.d.ts.map +1 -1
  83. package/dist/src/content-routing/utils.js +42 -0
  84. package/dist/src/content-routing/utils.js.map +1 -0
  85. package/dist/src/dht/dht-content-routing.d.ts +10 -24
  86. package/dist/src/dht/dht-content-routing.d.ts.map +1 -1
  87. package/dist/src/dht/dht-content-routing.js +32 -0
  88. package/dist/src/dht/dht-content-routing.js.map +1 -0
  89. package/dist/src/dht/dht-peer-routing.d.ts +9 -24
  90. package/dist/src/dht/dht-peer-routing.d.ts.map +1 -1
  91. package/dist/src/dht/dht-peer-routing.js +26 -0
  92. package/dist/src/dht/dht-peer-routing.js.map +1 -0
  93. package/dist/src/dialer/auto-dialer.d.ts +14 -0
  94. package/dist/src/dialer/auto-dialer.d.ts.map +1 -0
  95. package/dist/src/dialer/auto-dialer.js +24 -0
  96. package/dist/src/dialer/auto-dialer.js.map +1 -0
  97. package/dist/src/dialer/dial-request.d.ts +18 -46
  98. package/dist/src/dialer/dial-request.d.ts.map +1 -1
  99. package/dist/src/dialer/dial-request.js +83 -0
  100. package/dist/src/dialer/dial-request.js.map +1 -0
  101. package/dist/src/dialer/index.d.ts +41 -148
  102. package/dist/src/dialer/index.d.ts.map +1 -1
  103. package/dist/src/dialer/index.js +281 -0
  104. package/dist/src/dialer/index.js.map +1 -0
  105. package/dist/src/errors.d.ts +68 -63
  106. package/dist/src/errors.d.ts.map +1 -1
  107. package/dist/src/errors.js +73 -0
  108. package/dist/src/errors.js.map +1 -0
  109. package/dist/src/fetch/constants.d.ts +1 -1
  110. package/dist/src/fetch/constants.d.ts.map +1 -1
  111. package/dist/src/fetch/constants.js +3 -0
  112. package/dist/src/fetch/constants.js.map +1 -0
  113. package/dist/src/fetch/index.d.ts +30 -49
  114. package/dist/src/fetch/index.d.ts.map +1 -1
  115. package/dist/src/fetch/index.js +130 -0
  116. package/dist/src/fetch/index.js.map +1 -0
  117. package/dist/src/fetch/{proto.d.ts → pb/proto.d.ts} +0 -0
  118. package/{src/fetch → dist/src/fetch/pb}/proto.js +7 -9
  119. package/dist/src/get-peer.d.ts +4 -11
  120. package/dist/src/get-peer.d.ts.map +1 -1
  121. package/dist/src/get-peer.js +43 -0
  122. package/dist/src/get-peer.js.map +1 -0
  123. package/dist/src/identify/consts.d.ts +9 -9
  124. package/dist/src/identify/consts.d.ts.map +1 -1
  125. package/dist/src/identify/consts.js +11 -0
  126. package/dist/src/identify/consts.js.map +1 -0
  127. package/dist/src/identify/index.d.ts +40 -96
  128. package/dist/src/identify/index.d.ts.map +1 -1
  129. package/dist/src/identify/index.js +322 -0
  130. package/dist/src/identify/index.js.map +1 -0
  131. package/{src/identify → dist/src/identify/pb}/message.d.ts +20 -5
  132. package/{src/identify → dist/src/identify/pb}/message.js +83 -42
  133. package/dist/src/index.d.ts +157 -583
  134. package/dist/src/index.d.ts.map +1 -1
  135. package/dist/src/index.js +9 -0
  136. package/dist/src/index.js.map +1 -0
  137. package/dist/src/insecure/index.d.ts +9 -0
  138. package/dist/src/insecure/index.d.ts.map +1 -0
  139. package/dist/src/insecure/index.js +78 -0
  140. package/dist/src/insecure/index.js.map +1 -0
  141. package/dist/src/insecure/{proto.d.ts → pb/proto.d.ts} +7 -1
  142. package/{src/insecure → dist/src/insecure/pb}/proto.js +39 -22
  143. package/dist/src/keychain/cms.d.ts +6 -14
  144. package/dist/src/keychain/cms.d.ts.map +1 -1
  145. package/dist/src/keychain/cms.js +129 -0
  146. package/dist/src/keychain/cms.js.map +1 -0
  147. package/dist/src/keychain/index.d.ts +62 -82
  148. package/dist/src/keychain/index.d.ts.map +1 -1
  149. package/dist/src/keychain/index.js +493 -0
  150. package/dist/src/keychain/index.js.map +1 -0
  151. package/dist/src/keychain/util.d.ts +3 -6
  152. package/dist/src/keychain/util.d.ts.map +1 -1
  153. package/dist/src/keychain/util.js +79 -0
  154. package/dist/src/keychain/util.js.map +1 -0
  155. package/dist/src/libp2p.d.ts +75 -0
  156. package/dist/src/libp2p.d.ts.map +1 -0
  157. package/dist/src/libp2p.js +368 -0
  158. package/dist/src/libp2p.js.map +1 -0
  159. package/dist/src/metrics/index.d.ts +47 -104
  160. package/dist/src/metrics/index.d.ts.map +1 -1
  161. package/dist/src/metrics/index.js +231 -0
  162. package/dist/src/metrics/index.js.map +1 -0
  163. package/dist/src/metrics/moving-average.d.ts +14 -0
  164. package/dist/src/metrics/moving-average.d.ts.map +1 -0
  165. package/dist/src/metrics/moving-average.js +40 -0
  166. package/dist/src/metrics/moving-average.js.map +1 -0
  167. package/dist/src/metrics/stats.d.ts +45 -93
  168. package/dist/src/metrics/stats.d.ts.map +1 -1
  169. package/dist/src/metrics/stats.js +183 -0
  170. package/dist/src/metrics/stats.js.map +1 -0
  171. package/dist/src/nat-manager.d.ts +42 -99
  172. package/dist/src/nat-manager.d.ts.map +1 -1
  173. package/dist/src/nat-manager.js +114 -0
  174. package/dist/src/nat-manager.js.map +1 -0
  175. package/dist/src/peer-record-updater.d.ts +15 -0
  176. package/dist/src/peer-record-updater.d.ts.map +1 -0
  177. package/dist/src/peer-record-updater.js +44 -0
  178. package/dist/src/peer-record-updater.js.map +1 -0
  179. package/dist/src/peer-routing.d.ts +39 -84
  180. package/dist/src/peer-routing.d.ts.map +1 -1
  181. package/dist/src/peer-routing.js +108 -0
  182. package/dist/src/peer-routing.js.map +1 -0
  183. package/dist/src/ping/constants.d.ts +4 -4
  184. package/dist/src/ping/constants.d.ts.map +1 -1
  185. package/dist/src/ping/constants.js +5 -0
  186. package/dist/src/ping/constants.js.map +1 -0
  187. package/dist/src/ping/index.d.ts +26 -33
  188. package/dist/src/ping/index.d.ts.map +1 -1
  189. package/dist/src/ping/index.js +56 -0
  190. package/dist/src/ping/index.js.map +1 -0
  191. package/dist/src/pnet/crypto.d.ts +15 -5
  192. package/dist/src/pnet/crypto.d.ts.map +1 -1
  193. package/dist/src/pnet/crypto.js +60 -0
  194. package/dist/src/pnet/crypto.js.map +1 -0
  195. package/dist/src/pnet/errors.d.ts +5 -5
  196. package/dist/src/pnet/errors.d.ts.map +1 -1
  197. package/dist/src/pnet/errors.js +6 -0
  198. package/dist/src/pnet/errors.js.map +1 -0
  199. package/dist/src/pnet/index.d.ts +11 -20
  200. package/dist/src/pnet/index.d.ts.map +1 -1
  201. package/dist/src/pnet/index.js +66 -0
  202. package/dist/src/pnet/index.js.map +1 -0
  203. package/dist/src/pnet/key-generator.d.ts +3 -7
  204. package/dist/src/pnet/key-generator.d.ts.map +1 -1
  205. package/dist/src/pnet/key-generator.js +25 -0
  206. package/dist/src/pnet/key-generator.js.map +1 -0
  207. package/dist/src/registrar.d.ts +27 -65
  208. package/dist/src/registrar.d.ts.map +1 -1
  209. package/dist/src/registrar.js +159 -0
  210. package/dist/src/registrar.js.map +1 -0
  211. package/dist/src/transport-manager.d.ts +34 -82
  212. package/dist/src/transport-manager.d.ts.map +1 -1
  213. package/dist/src/transport-manager.js +223 -0
  214. package/dist/src/transport-manager.js.map +1 -0
  215. package/dist/src/upgrader.d.ts +49 -129
  216. package/dist/src/upgrader.d.ts.map +1 -1
  217. package/dist/src/upgrader.js +402 -0
  218. package/dist/src/upgrader.js.map +1 -0
  219. package/dist/src/version.d.ts +3 -0
  220. package/dist/src/version.d.ts.map +1 -0
  221. package/dist/src/version.js +3 -0
  222. package/dist/src/version.js.map +1 -0
  223. package/package.json +145 -197
  224. package/src/address-manager/index.ts +129 -0
  225. package/src/circuit/README.md +16 -11
  226. package/src/circuit/auto-relay.ts +284 -0
  227. package/src/circuit/circuit/hop.ts +211 -0
  228. package/src/circuit/circuit/stop.ts +78 -0
  229. package/src/circuit/circuit/stream-handler.ts +87 -0
  230. package/src/circuit/circuit/{utils.js → utils.ts} +9 -25
  231. package/src/circuit/constants.ts +31 -0
  232. package/src/circuit/index.ts +120 -0
  233. package/src/circuit/{listener.js → listener.ts} +21 -27
  234. package/src/circuit/multicodec.ts +2 -0
  235. package/src/circuit/{protocol → pb}/index.d.ts +0 -0
  236. package/src/circuit/pb/index.js +528 -0
  237. package/src/circuit/{protocol → pb}/index.proto +0 -0
  238. package/src/circuit/transport.ts +216 -0
  239. package/src/circuit/utils.ts +12 -0
  240. package/src/config.ts +101 -0
  241. package/src/connection-manager/auto-dialler.ts +154 -0
  242. package/src/connection-manager/index.ts +422 -0
  243. package/src/connection-manager/latency-monitor.ts +319 -0
  244. package/src/connection-manager/{visibility-change-emitter.js → visibility-change-emitter.ts} +48 -38
  245. package/src/constants.ts +31 -0
  246. package/src/content-routing/index.ts +143 -0
  247. package/src/content-routing/utils.ts +54 -0
  248. package/src/dht/dht-content-routing.ts +43 -0
  249. package/src/dht/dht-peer-routing.ts +35 -0
  250. package/src/dialer/auto-dialer.ts +40 -0
  251. package/src/dialer/{dial-request.js → dial-request.ts} +60 -51
  252. package/src/dialer/index.ts +374 -0
  253. package/src/errors.ts +71 -0
  254. package/src/fetch/README.md +1 -1
  255. package/src/fetch/constants.ts +3 -0
  256. package/src/fetch/{index.js → index.ts} +79 -70
  257. package/src/fetch/{proto.d.ts → pb/proto.d.ts} +0 -0
  258. package/src/fetch/pb/proto.js +331 -0
  259. package/src/fetch/{proto.proto → pb/proto.proto} +0 -0
  260. package/src/get-peer.ts +57 -0
  261. package/src/identify/consts.ts +13 -0
  262. package/src/identify/index.ts +445 -0
  263. package/{dist/src/identify → src/identify/pb}/message.d.ts +20 -5
  264. package/src/identify/pb/message.js +369 -0
  265. package/src/identify/{message.proto → pb/message.proto} +0 -0
  266. package/src/index.ts +234 -0
  267. package/src/insecure/index.ts +97 -0
  268. package/src/insecure/{proto.d.ts → pb/proto.d.ts} +7 -1
  269. package/src/insecure/pb/proto.js +388 -0
  270. package/src/insecure/{proto.proto → pb/proto.proto} +0 -0
  271. package/src/keychain/{cms.js → cms.ts} +62 -58
  272. package/src/keychain/index.ts +588 -0
  273. package/src/keychain/{util.js → util.ts} +7 -17
  274. package/src/libp2p.ts +501 -0
  275. package/src/metrics/index.ts +310 -0
  276. package/src/metrics/moving-average.ts +53 -0
  277. package/src/metrics/stats.ts +243 -0
  278. package/src/nat-manager.ts +194 -0
  279. package/src/peer-record-updater.ts +55 -0
  280. package/src/peer-routing.ts +185 -0
  281. package/src/ping/README.md +1 -1
  282. package/src/ping/constants.ts +5 -0
  283. package/src/ping/index.ts +83 -0
  284. package/src/pnet/README.md +2 -2
  285. package/src/pnet/crypto.ts +67 -0
  286. package/src/pnet/errors.ts +5 -0
  287. package/src/pnet/index.ts +95 -0
  288. package/src/pnet/key-generator.ts +28 -0
  289. package/src/registrar.ts +205 -0
  290. package/src/transport-manager.ts +279 -0
  291. package/src/upgrader.ts +499 -0
  292. package/src/version.ts +3 -0
  293. package/dist/index.min.js +0 -55
  294. package/dist/src/insecure/plaintext.d.ts +0 -12
  295. package/dist/src/insecure/plaintext.d.ts.map +0 -1
  296. package/dist/src/metrics/old-peers.d.ts +0 -3
  297. package/dist/src/metrics/old-peers.d.ts.map +0 -1
  298. package/dist/src/metrics/tracked-map.d.ts +0 -8
  299. package/dist/src/metrics/tracked-map.d.ts.map +0 -1
  300. package/dist/src/peer-store/address-book.d.ts +0 -67
  301. package/dist/src/peer-store/address-book.d.ts.map +0 -1
  302. package/dist/src/peer-store/index.d.ts +0 -58
  303. package/dist/src/peer-store/index.d.ts.map +0 -1
  304. package/dist/src/peer-store/key-book.d.ts +0 -40
  305. package/dist/src/peer-store/key-book.d.ts.map +0 -1
  306. package/dist/src/peer-store/metadata-book.d.ts +0 -58
  307. package/dist/src/peer-store/metadata-book.d.ts.map +0 -1
  308. package/dist/src/peer-store/pb/peer.d.ts +0 -222
  309. package/dist/src/peer-store/proto-book.d.ts +0 -43
  310. package/dist/src/peer-store/proto-book.d.ts.map +0 -1
  311. package/dist/src/peer-store/store.d.ts +0 -73
  312. package/dist/src/peer-store/store.d.ts.map +0 -1
  313. package/dist/src/peer-store/types.d.ts +0 -202
  314. package/dist/src/peer-store/types.d.ts.map +0 -1
  315. package/dist/src/ping/util.d.ts +0 -5
  316. package/dist/src/ping/util.d.ts.map +0 -1
  317. package/dist/src/pubsub-adapter.d.ts +0 -22
  318. package/dist/src/pubsub-adapter.d.ts.map +0 -1
  319. package/dist/src/record/envelope/envelope.d.ts +0 -77
  320. package/dist/src/record/envelope/index.d.ts +0 -80
  321. package/dist/src/record/envelope/index.d.ts.map +0 -1
  322. package/dist/src/record/peer-record/consts.d.ts +0 -4
  323. package/dist/src/record/peer-record/consts.d.ts.map +0 -1
  324. package/dist/src/record/peer-record/index.d.ts +0 -60
  325. package/dist/src/record/peer-record/index.d.ts.map +0 -1
  326. package/dist/src/record/peer-record/peer-record.d.ts +0 -133
  327. package/dist/src/record/utils.d.ts +0 -12
  328. package/dist/src/record/utils.d.ts.map +0 -1
  329. package/dist/src/types.d.ts +0 -90
  330. package/dist/src/types.d.ts.map +0 -1
  331. package/src/address-manager/index.js +0 -96
  332. package/src/circuit/auto-relay.js +0 -302
  333. package/src/circuit/circuit/hop.js +0 -205
  334. package/src/circuit/circuit/stop.js +0 -81
  335. package/src/circuit/circuit/stream-handler.js +0 -94
  336. package/src/circuit/constants.js +0 -12
  337. package/src/circuit/index.js +0 -102
  338. package/src/circuit/multicodec.js +0 -5
  339. package/src/circuit/transport.js +0 -229
  340. package/src/circuit/utils.js +0 -17
  341. package/src/config.js +0 -114
  342. package/src/connection-manager/auto-dialler.js +0 -132
  343. package/src/connection-manager/index.js +0 -363
  344. package/src/connection-manager/latency-monitor.js +0 -264
  345. package/src/constants.js +0 -18
  346. package/src/content-routing/index.js +0 -163
  347. package/src/content-routing/utils.js +0 -89
  348. package/src/dht/dht-content-routing.js +0 -44
  349. package/src/dht/dht-peer-routing.js +0 -51
  350. package/src/dialer/index.js +0 -376
  351. package/src/errors.js +0 -66
  352. package/src/fetch/constants.js +0 -6
  353. package/src/get-peer.js +0 -49
  354. package/src/identify/consts.js +0 -15
  355. package/src/identify/index.js +0 -384
  356. package/src/index.js +0 -811
  357. package/src/insecure/plaintext.js +0 -95
  358. package/src/keychain/index.js +0 -561
  359. package/src/metrics/index.js +0 -290
  360. package/src/metrics/old-peers.js +0 -16
  361. package/src/metrics/stats.js +0 -270
  362. package/src/metrics/tracked-map.js +0 -94
  363. package/src/nat-manager.js +0 -197
  364. package/src/peer-routing.js +0 -176
  365. package/src/peer-store/README.md +0 -145
  366. package/src/peer-store/address-book.js +0 -382
  367. package/src/peer-store/index.js +0 -121
  368. package/src/peer-store/key-book.js +0 -141
  369. package/src/peer-store/metadata-book.js +0 -250
  370. package/src/peer-store/pb/peer.d.ts +0 -222
  371. package/src/peer-store/pb/peer.js +0 -643
  372. package/src/peer-store/pb/peer.proto +0 -31
  373. package/src/peer-store/proto-book.js +0 -237
  374. package/src/peer-store/store.js +0 -263
  375. package/src/peer-store/types.ts +0 -245
  376. package/src/ping/constants.js +0 -8
  377. package/src/ping/index.js +0 -85
  378. package/src/ping/util.js +0 -18
  379. package/src/pnet/crypto.js +0 -84
  380. package/src/pnet/errors.js +0 -7
  381. package/src/pnet/index.js +0 -86
  382. package/src/pnet/key-generator.js +0 -33
  383. package/src/pubsub-adapter.js +0 -61
  384. package/src/record/README.md +0 -130
  385. package/src/record/envelope/envelope.d.ts +0 -77
  386. package/src/record/envelope/envelope.js +0 -243
  387. package/src/record/envelope/envelope.proto +0 -19
  388. package/src/record/envelope/index.js +0 -183
  389. package/src/record/peer-record/consts.js +0 -14
  390. package/src/record/peer-record/index.js +0 -113
  391. package/src/record/peer-record/peer-record.d.ts +0 -133
  392. package/src/record/peer-record/peer-record.js +0 -367
  393. package/src/record/peer-record/peer-record.proto +0 -18
  394. package/src/record/utils.js +0 -25
  395. package/src/registrar.js +0 -127
  396. package/src/transport-manager.js +0 -269
  397. package/src/types.ts +0 -98
  398. package/src/upgrader.js +0 -492
@@ -1,202 +0,0 @@
1
- import type PeerId from 'peer-id';
2
- import type { Multiaddr } from 'multiaddr';
3
- import type Envelope from '../record/envelope';
4
- import type { PublicKey } from 'libp2p-interfaces/src/keys/types';
5
- export interface Address {
6
- /**
7
- * Peer multiaddr
8
- */
9
- multiaddr: Multiaddr;
10
- /**
11
- * Obtained from a signed peer record
12
- */
13
- isCertified: boolean;
14
- }
15
- export interface Peer {
16
- /**
17
- * Peer's peer-id instance
18
- */
19
- id: PeerId;
20
- /**
21
- * Peer's addresses containing its multiaddrs and metadata
22
- */
23
- addresses: Address[];
24
- /**
25
- * Peer's supported protocols
26
- */
27
- protocols: string[];
28
- /**
29
- * Peer's metadata map
30
- */
31
- metadata: Map<string, Uint8Array>;
32
- /**
33
- * May be set if the key that this Peer has is an RSA key
34
- */
35
- pubKey?: PublicKey;
36
- /**
37
- * The last peer record envelope received
38
- */
39
- peerRecordEnvelope?: Uint8Array;
40
- }
41
- export interface CertifiedRecord {
42
- raw: Uint8Array;
43
- seqNumber: number;
44
- }
45
- export interface AddressBookEntry {
46
- addresses: Address[];
47
- record: CertifiedRecord;
48
- }
49
- export interface Book<Type> {
50
- /**
51
- * Get the known data of a peer
52
- */
53
- get: (peerId: PeerId) => Promise<Type>;
54
- /**
55
- * Set the known data of a peer
56
- */
57
- set: (peerId: PeerId, data: Type) => Promise<void>;
58
- /**
59
- * Remove the known data of a peer
60
- */
61
- delete: (peerId: PeerId) => Promise<void>;
62
- }
63
- /**
64
- * AddressBook containing a map of peerIdStr to Address.
65
- */
66
- export interface AddressBook {
67
- /**
68
- * ConsumePeerRecord adds addresses from a signed peer record contained in a record envelope.
69
- * This will return a boolean that indicates if the record was successfully processed and added
70
- * into the AddressBook
71
- */
72
- consumePeerRecord: (envelope: Envelope) => Promise<boolean>;
73
- /**
74
- * Get the raw Envelope for a peer. Returns
75
- * undefined if no Envelope is found
76
- */
77
- getRawEnvelope: (peerId: PeerId) => Promise<Uint8Array | undefined>;
78
- /**
79
- * Get an Envelope containing a PeerRecord for the given peer.
80
- * Returns undefined if no record exists.
81
- */
82
- getPeerRecord: (peerId: PeerId) => Promise<Envelope | undefined>;
83
- /**
84
- * Add known addresses of a provided peer.
85
- * If the peer is not known, it is set with the given addresses.
86
- */
87
- add: (peerId: PeerId, multiaddrs: Multiaddr[]) => Promise<void>;
88
- /**
89
- * Set the known addresses of a peer
90
- */
91
- set: (peerId: PeerId, data: Multiaddr[]) => Promise<void>;
92
- /**
93
- * Return the known addresses of a peer
94
- */
95
- get: (peerId: PeerId) => Promise<Address[]>;
96
- /**
97
- * Get the known multiaddrs for a given peer. All returned multiaddrs
98
- * will include the encapsulated `PeerId` of the peer.
99
- */
100
- getMultiaddrsForPeer: (peerId: PeerId, addressSorter?: (ms: Address[]) => Address[]) => Promise<Multiaddr[]>;
101
- }
102
- /**
103
- * KeyBook containing a map of peerIdStr to their PeerId with public keys.
104
- */
105
- export interface KeyBook {
106
- /**
107
- * Get the known data of a peer
108
- */
109
- get: (peerId: PeerId) => Promise<PublicKey | undefined>;
110
- /**
111
- * Set the known data of a peer
112
- */
113
- set: (peerId: PeerId, data: PublicKey) => Promise<void>;
114
- /**
115
- * Remove the known data of a peer
116
- */
117
- delete: (peerId: PeerId) => Promise<void>;
118
- }
119
- /**
120
- * MetadataBook containing a map of peerIdStr to their metadata Map.
121
- */
122
- export interface MetadataBook extends Book<Map<string, Uint8Array>> {
123
- /**
124
- * Set a specific metadata value
125
- */
126
- setValue: (peerId: PeerId, key: string, value: Uint8Array) => Promise<void>;
127
- /**
128
- * Get specific metadata value, if it exists
129
- */
130
- getValue: (peerId: PeerId, key: string) => Promise<Uint8Array | undefined>;
131
- /**
132
- * Deletes the provided peer metadata key from the book
133
- */
134
- deleteValue: (peerId: PeerId, key: string) => Promise<void>;
135
- }
136
- /**
137
- * ProtoBook containing a map of peerIdStr to supported protocols.
138
- */
139
- export interface ProtoBook extends Book<string[]> {
140
- /**
141
- * Adds known protocols of a provided peer.
142
- * If the peer was not known before, it will be added.
143
- */
144
- add: (peerId: PeerId, protocols: string[]) => Promise<void>;
145
- /**
146
- * Removes known protocols of a provided peer.
147
- * If the protocols did not exist before, nothing will be done.
148
- */
149
- remove: (peerId: PeerId, protocols: string[]) => Promise<void>;
150
- }
151
- export interface PeerProtocolsChangeEvent {
152
- peerId: PeerId;
153
- protocols: string[];
154
- }
155
- export interface PeerMultiaddrsChangeEvent {
156
- peerId: PeerId;
157
- multiaddrs: Multiaddr[];
158
- }
159
- export interface PeerPublicKeyChangeEvent {
160
- peerId: PeerId;
161
- pubKey?: PublicKey;
162
- }
163
- export interface PeerMetadataChangeEvent {
164
- peerId: PeerId;
165
- metadata: Map<string, Uint8Array>;
166
- }
167
- export declare type EventName = 'peer' | 'change:protocols' | 'change:multiaddrs' | 'change:pubkey' | 'change:metadata';
168
- export interface PeerStoreEvents {
169
- 'peer': (event: PeerId) => void;
170
- 'change:protocols': (event: PeerProtocolsChangeEvent) => void;
171
- 'change:multiaddrs': (event: PeerMultiaddrsChangeEvent) => void;
172
- 'change:pubkey': (event: PeerPublicKeyChangeEvent) => void;
173
- 'change:metadata': (event: PeerMetadataChangeEvent) => void;
174
- }
175
- export interface PeerStore {
176
- addressBook: AddressBook;
177
- keyBook: KeyBook;
178
- metadataBook: MetadataBook;
179
- protoBook: ProtoBook;
180
- getPeers: () => AsyncIterable<Peer>;
181
- delete: (peerId: PeerId) => Promise<void>;
182
- has: (peerId: PeerId) => Promise<boolean>;
183
- get: (peerId: PeerId) => Promise<Peer>;
184
- on: <U extends keyof PeerStoreEvents>(event: U, listener: PeerStoreEvents[U]) => this;
185
- once: <U extends keyof PeerStoreEvents>(event: U, listener: PeerStoreEvents[U]) => this;
186
- emit: <U extends keyof PeerStoreEvents>(event: U, ...args: Parameters<PeerStoreEvents[U]>) => boolean;
187
- }
188
- export interface Store {
189
- has: (peerId: PeerId) => Promise<boolean>;
190
- save: (peer: Peer) => Promise<Peer>;
191
- load: (peerId: PeerId) => Promise<Peer>;
192
- merge: (peerId: PeerId, data: Partial<Peer>) => Promise<Peer>;
193
- mergeOrCreate: (peerId: PeerId, data: Partial<Peer>) => Promise<Peer>;
194
- patch: (peerId: PeerId, data: Partial<Peer>) => Promise<Peer>;
195
- patchOrCreate: (peerId: PeerId, data: Partial<Peer>) => Promise<Peer>;
196
- all: () => AsyncIterable<Peer>;
197
- lock: {
198
- readLock: () => Promise<() => void>;
199
- writeLock: () => Promise<() => void>;
200
- };
201
- }
202
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/peer-store/types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @param {number} length
3
- */
4
- export function rnd(length: number): Uint8Array;
5
- //# sourceMappingURL=util.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/ping/util.js"],"names":[],"mappings":"AAKA;;GAEG;AACH,4BAFW,MAAM,cAOhB"}
@@ -1,22 +0,0 @@
1
- export = pubsubAdapter;
2
- /**
3
- * @typedef {import('libp2p-interfaces/src/pubsub').InMessage} InMessage
4
- * @typedef {import('libp2p-interfaces/src/pubsub')} PubsubRouter
5
- */
6
- /**
7
- * @param {{new(...args: any[]): PubsubRouter}} PubsubRouter
8
- * @param {import('.')} libp2p
9
- * @param {{ enabled: boolean; } & import(".").PubsubLocalOptions & import("libp2p-interfaces/src/pubsub").PubsubOptions} options
10
- */
11
- declare function pubsubAdapter(PubsubRouter: new (...args: any[]) => PubsubRouter, libp2p: import('.'), options: {
12
- enabled: boolean;
13
- } & import(".").PubsubLocalOptions & import("libp2p-interfaces/src/pubsub").PubsubOptions): import("libp2p-interfaces/src/pubsub") & {
14
- _subscribeAdapter: (topic: string) => void;
15
- _unsubscribeAdapter: (topic: string) => void;
16
- };
17
- declare namespace pubsubAdapter {
18
- export { InMessage, PubsubRouter };
19
- }
20
- type PubsubRouter = import('libp2p-interfaces/src/pubsub');
21
- type InMessage = import('libp2p-interfaces/src/pubsub').InMessage;
22
- //# sourceMappingURL=pubsub-adapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pubsub-adapter.d.ts","sourceRoot":"","sources":["../../src/pubsub-adapter.js"],"names":[],"mappings":";AAGA;;;GAGG;AAEH;;;;GAIG;AACH,2DAJyB,GAAG,EAAE,KAAG,YAAY,UAClC,OAAO,GAAG,CAAC,WACX;IAAE,OAAO,EAAE,OAAO,CAAC;CAAE,GAAG,OAAO,GAAG,EAAE,kBAAkB,GAAG,OAAO,8BAA8B,EAAE,aAAa;;;EA+CvH;;;;oBArDY,OAAO,8BAA8B,CAAC;iBADtC,OAAO,8BAA8B,EAAE,SAAS"}
@@ -1,77 +0,0 @@
1
- import * as $protobuf from "protobufjs";
2
- /** Properties of an Envelope. */
3
- export interface IEnvelope {
4
-
5
- /** Envelope publicKey */
6
- publicKey?: (Uint8Array|null);
7
-
8
- /** Envelope payloadType */
9
- payloadType?: (Uint8Array|null);
10
-
11
- /** Envelope payload */
12
- payload?: (Uint8Array|null);
13
-
14
- /** Envelope signature */
15
- signature?: (Uint8Array|null);
16
- }
17
-
18
- /** Represents an Envelope. */
19
- export class Envelope implements IEnvelope {
20
-
21
- /**
22
- * Constructs a new Envelope.
23
- * @param [p] Properties to set
24
- */
25
- constructor(p?: IEnvelope);
26
-
27
- /** Envelope publicKey. */
28
- public publicKey: Uint8Array;
29
-
30
- /** Envelope payloadType. */
31
- public payloadType: Uint8Array;
32
-
33
- /** Envelope payload. */
34
- public payload: Uint8Array;
35
-
36
- /** Envelope signature. */
37
- public signature: Uint8Array;
38
-
39
- /**
40
- * Encodes the specified Envelope message. Does not implicitly {@link Envelope.verify|verify} messages.
41
- * @param m Envelope message or plain object to encode
42
- * @param [w] Writer to encode to
43
- * @returns Writer
44
- */
45
- public static encode(m: IEnvelope, w?: $protobuf.Writer): $protobuf.Writer;
46
-
47
- /**
48
- * Decodes an Envelope message from the specified reader or buffer.
49
- * @param r Reader or buffer to decode from
50
- * @param [l] Message length if known beforehand
51
- * @returns Envelope
52
- * @throws {Error} If the payload is not a reader or valid buffer
53
- * @throws {$protobuf.util.ProtocolError} If required fields are missing
54
- */
55
- public static decode(r: ($protobuf.Reader|Uint8Array), l?: number): Envelope;
56
-
57
- /**
58
- * Creates an Envelope message from a plain object. Also converts values to their respective internal types.
59
- * @param d Plain object
60
- * @returns Envelope
61
- */
62
- public static fromObject(d: { [k: string]: any }): Envelope;
63
-
64
- /**
65
- * Creates a plain object from an Envelope message. Also converts values to other types if specified.
66
- * @param m Envelope
67
- * @param [o] Conversion options
68
- * @returns Plain object
69
- */
70
- public static toObject(m: Envelope, o?: $protobuf.IConversionOptions): { [k: string]: any };
71
-
72
- /**
73
- * Converts this Envelope to JSON.
74
- * @returns JSON object
75
- */
76
- public toJSON(): { [k: string]: any };
77
- }
@@ -1,80 +0,0 @@
1
- export = Envelope;
2
- /**
3
- * @typedef {import('libp2p-interfaces/src/record/types').Record} Record
4
- */
5
- declare class Envelope {
6
- /**
7
- * The Envelope is responsible for keeping an arbitrary signed record
8
- * by a libp2p peer.
9
- *
10
- * @class
11
- * @param {object} params
12
- * @param {PeerId} params.peerId
13
- * @param {Uint8Array} params.payloadType
14
- * @param {Uint8Array} params.payload - marshaled record
15
- * @param {Uint8Array} params.signature - signature of the domain string :: type hint :: payload.
16
- */
17
- constructor({ peerId, payloadType, payload, signature }: {
18
- peerId: PeerId;
19
- payloadType: Uint8Array;
20
- payload: Uint8Array;
21
- signature: Uint8Array;
22
- });
23
- peerId: PeerId;
24
- payloadType: Uint8Array;
25
- payload: Uint8Array;
26
- signature: Uint8Array;
27
- _marshal: Uint8Array | undefined;
28
- /**
29
- * Marshal the envelope content.
30
- *
31
- * @returns {Uint8Array}
32
- */
33
- marshal(): Uint8Array;
34
- /**
35
- * Verifies if the other Envelope is identical to this one.
36
- *
37
- * @param {Envelope} other
38
- * @returns {boolean}
39
- */
40
- equals(other: Envelope): boolean;
41
- /**
42
- * Validate envelope data signature for the given domain.
43
- *
44
- * @param {string} domain
45
- * @returns {Promise<boolean>}
46
- */
47
- validate(domain: string): Promise<boolean>;
48
- }
49
- declare namespace Envelope {
50
- export { createFromProtobuf, seal, openAndCertify, Record };
51
- }
52
- import PeerId = require("peer-id");
53
- /**
54
- * Unmarshal a serialized Envelope protobuf message.
55
- *
56
- * @param {Uint8Array} data
57
- * @returns {Promise<Envelope>}
58
- */
59
- declare function createFromProtobuf(data: Uint8Array): Promise<Envelope>;
60
- /**
61
- * Seal marshals the given Record, places the marshaled bytes inside an Envelope
62
- * and signs it with the given peerId's private key.
63
- *
64
- * @async
65
- * @param {Record} record
66
- * @param {PeerId} peerId
67
- * @returns {Promise<Envelope>}
68
- */
69
- declare function seal(record: Record, peerId: PeerId): Promise<Envelope>;
70
- /**
71
- * Open and certify a given marshalled envelope.
72
- * Data is unmarshalled and the signature validated for the given domain.
73
- *
74
- * @param {Uint8Array} data
75
- * @param {string} domain
76
- * @returns {Promise<Envelope>}
77
- */
78
- declare function openAndCertify(data: Uint8Array, domain: string): Promise<Envelope>;
79
- type Record = import('libp2p-interfaces/src/record/types').Record;
80
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/record/envelope/index.js"],"names":[],"mappings":";AAcA;;GAEG;AAEH;IACE;;;;;;;;;;OAUG;IACH;QAL0B,MAAM,EAArB,MAAM;QACa,WAAW,EAA9B,UAAU;QACS,OAAO,EAA1B,UAAU;QACS,SAAS,EAA5B,UAAU;OAUpB;IAPC,eAAoB;IACpB,wBAA8B;IAC9B,oBAAsB;IACtB,sBAA0B;IAG1B,iCAAyB;IAG3B;;;;OAIG;IACH,WAFa,UAAU,CAiBtB;IAED;;;;;OAKG;IACH,cAHW,QAAQ,GACN,OAAO,CAOnB;IAED;;;;;OAKG;IACH,iBAHW,MAAM,GACJ,QAAQ,OAAO,CAAC,CAM5B;CACF;;;;;AAkCD;;;;;GAKG;AACH,0CAHW,UAAU,GACR,QAAQ,QAAQ,CAAC,CAY7B;AAED;;;;;;;;GAQG;AACH,8BAJW,MAAM,UACN,MAAM,GACJ,QAAQ,QAAQ,CAAC,CAgB7B;AAED;;;;;;;GAOG;AACH,sCAJW,UAAU,UACV,MAAM,GACJ,QAAQ,QAAQ,CAAC,CAW7B;cArKY,OAAO,oCAAoC,EAAE,MAAM"}
@@ -1,4 +0,0 @@
1
- declare const domain: "libp2p-peer-record";
2
- declare const payloadType: Uint8Array;
3
- export { domain as ENVELOPE_DOMAIN_PEER_RECORD, payloadType as ENVELOPE_PAYLOAD_TYPE_PEER_RECORD };
4
- //# sourceMappingURL=consts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../../src/record/peer-record/consts.js"],"names":[],"mappings":"AAGA,2CAAmC;AAKnC,sCAA2C"}
@@ -1,60 +0,0 @@
1
- export = PeerRecord;
2
- /**
3
- * @typedef {import('../../peer-store/types').Address} Address
4
- * @typedef {import('libp2p-interfaces/src/record/types').Record} Record
5
- */
6
- /**
7
- * @implements {Record}
8
- */
9
- declare class PeerRecord implements Record {
10
- /**
11
- * The PeerRecord is used for distributing peer routing records across the network.
12
- * It contains the peer's reachable listen addresses.
13
- *
14
- * @class
15
- * @param {Object} params
16
- * @param {PeerId} params.peerId
17
- * @param {Multiaddr[]} params.multiaddrs - addresses of the associated peer.
18
- * @param {number} [params.seqNumber] - monotonically-increasing sequence counter that's used to order PeerRecords in time.
19
- */
20
- constructor({ peerId, multiaddrs, seqNumber }: {
21
- peerId: PeerId;
22
- multiaddrs: Multiaddr[];
23
- seqNumber?: number | undefined;
24
- });
25
- domain: string;
26
- codec: Uint8Array;
27
- peerId: PeerId;
28
- multiaddrs: Multiaddr[];
29
- seqNumber: number;
30
- _marshal: Uint8Array | undefined;
31
- /**
32
- * Marshal a record to be used in an envelope.
33
- *
34
- * @returns {Uint8Array}
35
- */
36
- marshal(): Uint8Array;
37
- /**
38
- * Returns true if `this` record equals the `other`.
39
- *
40
- * @param {unknown} other
41
- * @returns {boolean}
42
- */
43
- equals(other: unknown): boolean;
44
- }
45
- declare namespace PeerRecord {
46
- export { createFromProtobuf, ENVELOPE_DOMAIN_PEER_RECORD as DOMAIN, Address, Record };
47
- }
48
- type Record = import('libp2p-interfaces/src/record/types').Record;
49
- import PeerId = require("peer-id");
50
- import { Multiaddr } from "multiaddr";
51
- /**
52
- * Unmarshal Peer Record Protobuf.
53
- *
54
- * @param {Uint8Array} buf - marshaled peer record.
55
- * @returns {PeerRecord}
56
- */
57
- declare function createFromProtobuf(buf: Uint8Array): PeerRecord;
58
- import { ENVELOPE_DOMAIN_PEER_RECORD } from "./consts";
59
- type Address = import('../../peer-store/types').Address;
60
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/record/peer-record/index.js"],"names":[],"mappings":";AAYA;;;GAGG;AAEH;;GAEG;AACH;IACE;;;;;;;;;OASG;IACH;QAJ0B,MAAM,EAArB,MAAM;QACc,UAAU,EAA9B,SAAS,EAAE;QACK,SAAS;OAYnC;IATC,eAAyC;IACzC,kBAA8C;IAE9C,eAAoB;IACpB,wBAA4B;IAC5B,kBAA0B;IAG1B,iCAAyB;IAG3B;;;;OAIG;IACH,WAFa,UAAU,CAgBtB;IAED;;;;;OAKG;IACH,cAHW,OAAO,GACL,OAAO,CAuBnB;CACF;;;;cA9EY,OAAO,oCAAoC,EAAE,MAAM;;;AAgFhE;;;;;GAKG;AACH,yCAHW,UAAU,GACR,UAAU,CAUtB;;eA/FY,OAAO,wBAAwB,EAAE,OAAO"}
@@ -1,133 +0,0 @@
1
- import * as $protobuf from "protobufjs";
2
- /** Properties of a PeerRecord. */
3
- export interface IPeerRecord {
4
-
5
- /** PeerRecord peerId */
6
- peerId?: (Uint8Array|null);
7
-
8
- /** PeerRecord seq */
9
- seq?: (number|null);
10
-
11
- /** PeerRecord addresses */
12
- addresses?: (PeerRecord.IAddressInfo[]|null);
13
- }
14
-
15
- /** Represents a PeerRecord. */
16
- export class PeerRecord implements IPeerRecord {
17
-
18
- /**
19
- * Constructs a new PeerRecord.
20
- * @param [p] Properties to set
21
- */
22
- constructor(p?: IPeerRecord);
23
-
24
- /** PeerRecord peerId. */
25
- public peerId: Uint8Array;
26
-
27
- /** PeerRecord seq. */
28
- public seq: number;
29
-
30
- /** PeerRecord addresses. */
31
- public addresses: PeerRecord.IAddressInfo[];
32
-
33
- /**
34
- * Encodes the specified PeerRecord message. Does not implicitly {@link PeerRecord.verify|verify} messages.
35
- * @param m PeerRecord message or plain object to encode
36
- * @param [w] Writer to encode to
37
- * @returns Writer
38
- */
39
- public static encode(m: IPeerRecord, w?: $protobuf.Writer): $protobuf.Writer;
40
-
41
- /**
42
- * Decodes a PeerRecord message from the specified reader or buffer.
43
- * @param r Reader or buffer to decode from
44
- * @param [l] Message length if known beforehand
45
- * @returns PeerRecord
46
- * @throws {Error} If the payload is not a reader or valid buffer
47
- * @throws {$protobuf.util.ProtocolError} If required fields are missing
48
- */
49
- public static decode(r: ($protobuf.Reader|Uint8Array), l?: number): PeerRecord;
50
-
51
- /**
52
- * Creates a PeerRecord message from a plain object. Also converts values to their respective internal types.
53
- * @param d Plain object
54
- * @returns PeerRecord
55
- */
56
- public static fromObject(d: { [k: string]: any }): PeerRecord;
57
-
58
- /**
59
- * Creates a plain object from a PeerRecord message. Also converts values to other types if specified.
60
- * @param m PeerRecord
61
- * @param [o] Conversion options
62
- * @returns Plain object
63
- */
64
- public static toObject(m: PeerRecord, o?: $protobuf.IConversionOptions): { [k: string]: any };
65
-
66
- /**
67
- * Converts this PeerRecord to JSON.
68
- * @returns JSON object
69
- */
70
- public toJSON(): { [k: string]: any };
71
- }
72
-
73
- export namespace PeerRecord {
74
-
75
- /** Properties of an AddressInfo. */
76
- interface IAddressInfo {
77
-
78
- /** AddressInfo multiaddr */
79
- multiaddr?: (Uint8Array|null);
80
- }
81
-
82
- /** Represents an AddressInfo. */
83
- class AddressInfo implements IAddressInfo {
84
-
85
- /**
86
- * Constructs a new AddressInfo.
87
- * @param [p] Properties to set
88
- */
89
- constructor(p?: PeerRecord.IAddressInfo);
90
-
91
- /** AddressInfo multiaddr. */
92
- public multiaddr: Uint8Array;
93
-
94
- /**
95
- * Encodes the specified AddressInfo message. Does not implicitly {@link PeerRecord.AddressInfo.verify|verify} messages.
96
- * @param m AddressInfo message or plain object to encode
97
- * @param [w] Writer to encode to
98
- * @returns Writer
99
- */
100
- public static encode(m: PeerRecord.IAddressInfo, w?: $protobuf.Writer): $protobuf.Writer;
101
-
102
- /**
103
- * Decodes an AddressInfo message from the specified reader or buffer.
104
- * @param r Reader or buffer to decode from
105
- * @param [l] Message length if known beforehand
106
- * @returns AddressInfo
107
- * @throws {Error} If the payload is not a reader or valid buffer
108
- * @throws {$protobuf.util.ProtocolError} If required fields are missing
109
- */
110
- public static decode(r: ($protobuf.Reader|Uint8Array), l?: number): PeerRecord.AddressInfo;
111
-
112
- /**
113
- * Creates an AddressInfo message from a plain object. Also converts values to their respective internal types.
114
- * @param d Plain object
115
- * @returns AddressInfo
116
- */
117
- public static fromObject(d: { [k: string]: any }): PeerRecord.AddressInfo;
118
-
119
- /**
120
- * Creates a plain object from an AddressInfo message. Also converts values to other types if specified.
121
- * @param m AddressInfo
122
- * @param [o] Conversion options
123
- * @returns Plain object
124
- */
125
- public static toObject(m: PeerRecord.AddressInfo, o?: $protobuf.IConversionOptions): { [k: string]: any };
126
-
127
- /**
128
- * Converts this AddressInfo to JSON.
129
- * @returns JSON object
130
- */
131
- public toJSON(): { [k: string]: any };
132
- }
133
- }
@@ -1,12 +0,0 @@
1
- export type Libp2p = import('../');
2
- /**
3
- * @typedef {import('../')} Libp2p
4
- */
5
- /**
6
- * Create (or update if existing) self peer record and store it in the AddressBook.
7
- *
8
- * @param {Libp2p} libp2p
9
- * @returns {Promise<void>}
10
- */
11
- export function updateSelfPeerRecord(libp2p: Libp2p): Promise<void>;
12
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/record/utils.js"],"names":[],"mappings":"qBAMa,OAAO,KAAK,CAAC;AAD1B;;GAEG;AAEH;;;;;GAKG;AACH,6CAHW,MAAM,GACJ,QAAQ,IAAI,CAAC,CASzB"}