libp2p 0.36.2-64bfcee → 0.36.2-c64a586

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 (66) hide show
  1. package/dist/src/circuit/circuit/hop.d.ts +3 -3
  2. package/dist/src/circuit/circuit/hop.d.ts.map +1 -1
  3. package/dist/src/circuit/circuit/hop.js +1 -1
  4. package/dist/src/circuit/circuit/hop.js.map +1 -1
  5. package/dist/src/circuit/circuit/stop.d.ts +3 -3
  6. package/dist/src/circuit/circuit/stop.d.ts.map +1 -1
  7. package/dist/src/circuit/circuit/stop.js.map +1 -1
  8. package/dist/src/circuit/circuit/stream-handler.d.ts +4 -4
  9. package/dist/src/circuit/circuit/stream-handler.d.ts.map +1 -1
  10. package/dist/src/circuit/circuit/stream-handler.js +2 -3
  11. package/dist/src/circuit/circuit/stream-handler.js.map +1 -1
  12. package/dist/src/circuit/circuit/utils.d.ts +2 -2
  13. package/dist/src/circuit/circuit/utils.d.ts.map +1 -1
  14. package/dist/src/circuit/circuit/utils.js.map +1 -1
  15. package/dist/src/circuit/pb/index.d.ts +42 -164
  16. package/dist/src/circuit/pb/index.d.ts.map +1 -0
  17. package/dist/src/circuit/pb/index.js +67 -523
  18. package/dist/src/circuit/pb/index.js.map +1 -0
  19. package/dist/src/fetch/index.d.ts.map +1 -1
  20. package/dist/src/fetch/index.js +5 -6
  21. package/dist/src/fetch/index.js.map +1 -1
  22. package/dist/src/fetch/pb/proto.d.ts +20 -128
  23. package/dist/src/fetch/pb/proto.d.ts.map +1 -0
  24. package/dist/src/fetch/pb/proto.js +44 -331
  25. package/dist/src/fetch/pb/proto.js.map +1 -0
  26. package/dist/src/identify/index.d.ts +4 -2
  27. package/dist/src/identify/index.d.ts.map +1 -1
  28. package/dist/src/identify/index.js +8 -8
  29. package/dist/src/identify/index.js.map +1 -1
  30. package/dist/src/identify/pb/message.d.ts +13 -108
  31. package/dist/src/identify/pb/message.d.ts.map +1 -0
  32. package/dist/src/identify/pb/message.js +21 -366
  33. package/dist/src/identify/pb/message.js.map +1 -0
  34. package/dist/src/insecure/index.d.ts.map +1 -1
  35. package/dist/src/insecure/index.js +5 -2
  36. package/dist/src/insecure/index.js.map +1 -1
  37. package/dist/src/insecure/pb/proto.d.ts +24 -130
  38. package/dist/src/insecure/pb/proto.d.ts.map +1 -0
  39. package/dist/src/insecure/pb/proto.js +46 -388
  40. package/dist/src/insecure/pb/proto.js.map +1 -0
  41. package/dist/src/keychain/index.d.ts +2 -2
  42. package/dist/src/keychain/index.js +2 -2
  43. package/dist/src/keychain/util.d.ts +1 -1
  44. package/dist/src/keychain/util.d.ts.map +1 -1
  45. package/package.json +24 -22
  46. package/src/circuit/circuit/hop.ts +4 -4
  47. package/src/circuit/circuit/stop.ts +3 -3
  48. package/src/circuit/circuit/stream-handler.ts +5 -6
  49. package/src/circuit/circuit/utils.ts +2 -2
  50. package/src/circuit/pb/index.proto +1 -1
  51. package/src/circuit/pb/index.ts +88 -0
  52. package/src/fetch/index.ts +6 -7
  53. package/src/fetch/pb/proto.ts +58 -0
  54. package/src/identify/index.ts +10 -10
  55. package/src/identify/pb/message.ts +36 -0
  56. package/src/insecure/index.ts +8 -4
  57. package/src/insecure/pb/proto.ts +61 -0
  58. package/src/keychain/index.ts +2 -2
  59. package/src/circuit/pb/index.d.ts +0 -173
  60. package/src/circuit/pb/index.js +0 -528
  61. package/src/fetch/pb/proto.d.ts +0 -134
  62. package/src/fetch/pb/proto.js +0 -331
  63. package/src/identify/pb/message.d.ts +0 -110
  64. package/src/identify/pb/message.js +0 -369
  65. package/src/insecure/pb/proto.d.ts +0 -134
  66. package/src/insecure/pb/proto.js +0 -388
@@ -1,12 +1,12 @@
1
1
  import { StreamHandler } from './stream-handler.js';
2
- import { ICircuitRelay } from '../pb/index.js';
2
+ import { CircuitRelay as CircuitPB } from '../pb/index.js';
3
3
  import type { Connection } from '@libp2p/interfaces/connection';
4
4
  import type { Duplex } from 'it-stream-types';
5
5
  import type { Circuit } from '../transport.js';
6
6
  import type { ConnectionManager } from '@libp2p/interfaces/registrar';
7
7
  export interface HopRequest {
8
8
  connection: Connection;
9
- request: ICircuitRelay;
9
+ request: CircuitPB;
10
10
  streamHandler: StreamHandler;
11
11
  circuit: Circuit;
12
12
  connectionManager: ConnectionManager;
@@ -14,7 +14,7 @@ export interface HopRequest {
14
14
  export declare function handleHop(hopRequest: HopRequest): Promise<void>;
15
15
  export interface HopConfig {
16
16
  connection: Connection;
17
- request: ICircuitRelay;
17
+ request: CircuitPB;
18
18
  }
19
19
  /**
20
20
  * Performs a HOP request to a relay peer, to request a connection to another
@@ -1 +1 @@
1
- {"version":3,"file":"hop.d.ts","sourceRoot":"","sources":["../../../../src/circuit/circuit/hop.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAA6B,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAKzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAIrE,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,aAAa,CAAA;IACtB,aAAa,EAAE,aAAa,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,iBAAiB,EAAE,iBAAiB,CAAA;CACrC;AAED,wBAAsB,SAAS,CAAE,UAAU,EAAE,UAAU,iBA6FtD;AAED,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,aAAa,CAAA;CACvB;AAED;;;GAGG;AACH,wBAAsB,GAAG,CAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CA2B1E;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,UAAU,CAAA;CACvB;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAE,OAAO,EAAE,aAAa,oBAsBnD;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,aAAa,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAE,OAAO,EAAE,mBAAmB,QAYzD"}
1
+ {"version":3,"file":"hop.d.ts","sourceRoot":"","sources":["../../../../src/circuit/circuit/hop.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,YAAY,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAK1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAIrE,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,SAAS,CAAA;IAClB,aAAa,EAAE,aAAa,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,iBAAiB,EAAE,iBAAiB,CAAA;CACrC;AAED,wBAAsB,SAAS,CAAE,UAAU,EAAE,UAAU,iBA6FtD;AAED,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,SAAS,CAAA;CACnB;AAED;;;GAGG;AACH,wBAAsB,GAAG,CAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CA2B1E;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,UAAU,CAAA;CACvB;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAE,OAAO,EAAE,aAAa,oBAsBnD;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,aAAa,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAE,OAAO,EAAE,mBAAmB,QAYzD"}
@@ -102,7 +102,7 @@ export async function hop(options) {
102
102
  }
103
103
  log('hop request failed with code %d, closing stream', response.code);
104
104
  streamHandler.close();
105
- throw errCode(new Error(`HOP request failed with code ${response.code}`), Errors.ERR_HOP_REQUEST_FAILED);
105
+ throw errCode(new Error(`HOP request failed with code "${response.code ?? 'unknown'}"`), Errors.ERR_HOP_REQUEST_FAILED);
106
106
  }
107
107
  /**
108
108
  * Performs a CAN_HOP request to a relay peer, in order to understand its capabilities
@@ -1 +1 @@
1
- {"version":3,"file":"hop.js","sourceRoot":"","sources":["../../../../src/circuit/circuit/hop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hop.js","sourceRoot":"","sources":["../../../../src/circuit/circuit/hop.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import { ICircuitRelay } from '../pb/index.js';
1
+ import { CircuitRelay as CircuitPB } from '../pb/index.js';
2
2
  import { StreamHandler } from './stream-handler.js';
3
3
  import type { Connection } from '@libp2p/interfaces/connection';
4
4
  import type { Duplex } from 'it-stream-types';
5
5
  export interface HandleStopOptions {
6
6
  connection: Connection;
7
- request: ICircuitRelay;
7
+ request: CircuitPB;
8
8
  streamHandler: StreamHandler;
9
9
  }
10
10
  /**
@@ -13,7 +13,7 @@ export interface HandleStopOptions {
13
13
  export declare function handleStop(options: HandleStopOptions): Duplex<Uint8Array> | undefined;
14
14
  export interface StopOptions {
15
15
  connection: Connection;
16
- request: ICircuitRelay;
16
+ request: CircuitPB;
17
17
  }
18
18
  /**
19
19
  * Creates a STOP request
@@ -1 +1 @@
1
- {"version":3,"file":"stop.d.ts","sourceRoot":"","sources":["../../../../src/circuit/circuit/stop.ts"],"names":[],"mappings":"AACA,OAAO,EAA6B,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEzE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAI7C,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,aAAa,CAAA;IACtB,aAAa,EAAE,aAAa,CAAA;CAC7B;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAE,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS,CAuBtF;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,aAAa,CAAA;CACvB;AAED;;GAEG;AACH,wBAAsB,IAAI,CAAE,OAAO,EAAE,WAAW,sEAyB/C"}
1
+ {"version":3,"file":"stop.d.ts","sourceRoot":"","sources":["../../../../src/circuit/circuit/stop.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAI7C,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,SAAS,CAAA;IAClB,aAAa,EAAE,aAAa,CAAA;CAC7B;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAE,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS,CAuBtF;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,SAAS,CAAA;CACnB;AAED;;GAEG;AACH,wBAAsB,IAAI,CAAE,OAAO,EAAE,WAAW,sEAyB/C"}
@@ -1 +1 @@
1
- {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../../../src/circuit/circuit/stop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,YAAY,IAAI,SAAS,EAAiB,MAAM,gBAAgB,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAI1C,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAA;AAQzC;;GAEG;AACH,MAAM,UAAU,UAAU,CAAE,OAA0B;IACpD,MAAM,EACJ,UAAU,EACV,OAAO,EACP,aAAa,EACd,GAAG,OAAO,CAAA;IAEX,mDAAmD;IACnD,IAAI;QACF,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;KACtC;IAAC,OAAO,GAAQ,EAAE;QACjB,GAAG,CAAC,KAAK,CAAC,qCAAqC,EAAE,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;QAC5E,OAAM;KACP;IAED,uBAAuB;IACvB,GAAG,CAAC,uBAAuB,CAAC,CAAA;IAC5B,aAAa,CAAC,KAAK,CAAC;QAClB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM;QAC3B,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO;KAC/B,CAAC,CAAA;IAEF,OAAO,aAAa,CAAC,IAAI,EAAE,CAAA;AAC7B,CAAC;AAOD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAE,OAAoB;IAC9C,MAAM,EACJ,UAAU,EACV,OAAO,EACR,GAAG,OAAO,CAAA;IAEX,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;IAC5D,GAAG,CAAC,6BAA6B,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;IACzD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAEnD,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC5B,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAA;IAE3C,IAAI,QAAQ,IAAI,IAAI,EAAE;QACpB,aAAa,CAAC,KAAK,EAAE,CAAA;QACrB,OAAM;KACP;IAED,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE;QAC9C,GAAG,CAAC,mCAAmC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;QAC/D,OAAO,aAAa,CAAC,IAAI,EAAE,CAAA;KAC5B;IAED,GAAG,CAAC,kCAAkC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IACtD,aAAa,CAAC,KAAK,EAAE,CAAA;AACvB,CAAC"}
1
+ {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../../../src/circuit/circuit/stop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,YAAY,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAI1C,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAA;AAQzC;;GAEG;AACH,MAAM,UAAU,UAAU,CAAE,OAA0B;IACpD,MAAM,EACJ,UAAU,EACV,OAAO,EACP,aAAa,EACd,GAAG,OAAO,CAAA;IAEX,mDAAmD;IACnD,IAAI;QACF,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;KACtC;IAAC,OAAO,GAAQ,EAAE;QACjB,GAAG,CAAC,KAAK,CAAC,qCAAqC,EAAE,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;QAC5E,OAAM;KACP;IAED,uBAAuB;IACvB,GAAG,CAAC,uBAAuB,CAAC,CAAA;IAC5B,aAAa,CAAC,KAAK,CAAC;QAClB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM;QAC3B,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO;KAC/B,CAAC,CAAA;IAEF,OAAO,aAAa,CAAC,IAAI,EAAE,CAAA;AAC7B,CAAC;AAOD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAE,OAAoB;IAC9C,MAAM,EACJ,UAAU,EACV,OAAO,EACR,GAAG,OAAO,CAAA;IAEX,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;IAC5D,GAAG,CAAC,6BAA6B,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;IACzD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAEnD,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC5B,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAA;IAE3C,IAAI,QAAQ,IAAI,IAAI,EAAE;QACpB,aAAa,CAAC,KAAK,EAAE,CAAA;QACrB,OAAM;KACP;IAED,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE;QAC9C,GAAG,CAAC,mCAAmC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;QAC/D,OAAO,aAAa,CAAC,IAAI,EAAE,CAAA;KAC5B;IAED,GAAG,CAAC,kCAAkC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IACtD,aAAa,CAAC,KAAK,EAAE,CAAA;AACvB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { CircuitRelay, ICircuitRelay } from '../pb/index.js';
1
+ import { CircuitRelay } from '../pb/index.js';
2
2
  import type { Stream } from '@libp2p/interfaces/connection';
3
3
  export interface StreamHandlerOptions {
4
4
  /**
@@ -22,15 +22,15 @@ export declare class StreamHandler {
22
22
  /**
23
23
  * Encode and write array of buffers
24
24
  */
25
- write(msg: ICircuitRelay): void;
25
+ write(msg: CircuitRelay): void;
26
26
  /**
27
27
  * Return the handshake rest stream and invalidate handler
28
28
  */
29
29
  rest(): import("it-stream-types").Duplex<Uint8Array, Uint8Array, Promise<void>>;
30
30
  /**
31
- * @param {ICircuitRelay} msg - An unencoded CircuitRelay protobuf message
31
+ * @param {CircuitRelay} msg - An unencoded CircuitRelay protobuf message
32
32
  */
33
- end(msg: ICircuitRelay): void;
33
+ end(msg: CircuitRelay): void;
34
34
  /**
35
35
  * Close the stream
36
36
  */
@@ -1 +1 @@
1
- {"version":3,"file":"stream-handler.d.ts","sourceRoot":"","sources":["../../../../src/circuit/circuit/stream-handler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAK3D,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAE/B,OAAO,EAAE,oBAAoB;IAQ1C;;OAEG;IACG,IAAI;IAeV;;OAEG;IACH,KAAK,CAAE,GAAG,EAAE,aAAa;IAMzB;;OAEG;IACH,IAAI;IAKJ;;OAEG;IACH,GAAG,CAAE,GAAG,EAAE,aAAa;IAKvB;;OAEG;IACH,KAAK;CAMN"}
1
+ {"version":3,"file":"stream-handler.d.ts","sourceRoot":"","sources":["../../../../src/circuit/circuit/stream-handler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAK3D,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAE/B,OAAO,EAAE,oBAAoB;IAQ1C;;OAEG;IACG,IAAI;IAeV;;OAEG;IACH,KAAK,CAAE,GAAG,EAAE,YAAY;IAKxB;;OAEG;IACH,IAAI;IAKJ;;OAEG;IACH,GAAG,CAAE,GAAG,EAAE,YAAY;IAKtB;;OAEG;IACH,KAAK;CAMN"}
@@ -30,8 +30,7 @@ export class StreamHandler {
30
30
  */
31
31
  write(msg) {
32
32
  log('write message type %s', msg.type);
33
- // @ts-expect-error lp.encode expects type type 'Buffer | BufferList', not 'Uint8Array'
34
- this.shake.write(lp.encode.single(CircuitRelay.encode(msg).finish()));
33
+ this.shake.write(lp.encode.single(CircuitRelay.encode(msg)).slice());
35
34
  }
36
35
  /**
37
36
  * Return the handshake rest stream and invalidate handler
@@ -41,7 +40,7 @@ export class StreamHandler {
41
40
  return this.shake.stream;
42
41
  }
43
42
  /**
44
- * @param {ICircuitRelay} msg - An unencoded CircuitRelay protobuf message
43
+ * @param {CircuitRelay} msg - An unencoded CircuitRelay protobuf message
45
44
  */
46
45
  end(msg) {
47
46
  this.write(msg);
@@ -1 +1 @@
1
- {"version":3,"file":"stream-handler.js","sourceRoot":"","sources":["../../../../src/circuit/circuit/stream-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,EAAa,SAAS,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,YAAY,EAAiB,MAAM,gBAAgB,CAAA;AAI5D,MAAM,GAAG,GAAG,MAAM,CAAC,+BAA+B,CAAC,CAAA;AAcnD,MAAM,OAAO,aAAa;IAKxB,YAAa,OAA6B;QACxC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;QAE5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAA;IACtF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,8DAA8D;QAC9D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QAErC,IAAI,GAAG,CAAC,KAAK,IAAI,IAAI,EAAE;YACrB,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;YACpD,GAAG,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YACpC,OAAO,KAAK,CAAA;SACb;QAED,GAAG,CAAC,wCAAwC,CAAC,CAAA;QAC7C,qCAAqC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAE,GAAkB;QACvB,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QACtC,uFAAuF;QACvF,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACvE,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,GAAG,CAAE,GAAkB;QACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACf,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAED;;OAEG;IACH,KAAK;QACH,GAAG,CAAC,oBAAoB,CAAC,CAAA;QACzB,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACpC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC,CAAC,CAAA;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"stream-handler.js","sourceRoot":"","sources":["../../../../src/circuit/circuit/stream-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,EAAa,SAAS,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAI7C,MAAM,GAAG,GAAG,MAAM,CAAC,+BAA+B,CAAC,CAAA;AAcnD,MAAM,OAAO,aAAa;IAKxB,YAAa,OAA6B;QACxC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;QAE5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAA;IACtF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,8DAA8D;QAC9D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QAErC,IAAI,GAAG,CAAC,KAAK,IAAI,IAAI,EAAE;YACrB,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;YACpD,GAAG,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YACpC,OAAO,KAAK,CAAA;SACb;QAED,GAAG,CAAC,wCAAwC,CAAC,CAAA;QAC7C,qCAAqC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAE,GAAiB;QACtB,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QACtC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;IACtE,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,GAAG,CAAE,GAAiB;QACpB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACf,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAED;;OAEG;IACH,KAAK;QACH,GAAG,CAAC,oBAAoB,CAAC,CAAA;QACzB,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACpC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
- import { ICircuitRelay } from '../pb/index.js';
1
+ import { CircuitRelay } from '../pb/index.js';
2
2
  import type { StreamHandler } from './stream-handler.js';
3
3
  /**
4
4
  * Validate incomming HOP/STOP message
5
5
  */
6
- export declare function validateAddrs(msg: ICircuitRelay, streamHandler: StreamHandler): void;
6
+ export declare function validateAddrs(msg: CircuitRelay, streamHandler: StreamHandler): void;
7
7
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/circuit/circuit/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAYxD;;GAEG;AACH,wBAAgB,aAAa,CAAE,GAAG,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,QA0B9E"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/circuit/circuit/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAYxD;;GAEG;AACH,wBAAgB,aAAa,CAAE,GAAG,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,QA0B7E"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/circuit/circuit/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAiB,MAAM,gBAAgB,CAAA;AAG5D;;GAEG;AACH,SAAS,aAAa,CAAE,aAA4B,EAAE,MAA2B;IAC/E,aAAa,CAAC,KAAK,CAAC;QAClB,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM;QAC9B,IAAI,EAAE,MAAM;KACb,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAE,GAAkB,EAAE,aAA4B;IAC7E,IAAI;QACF,IAAI,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE;YAC9B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACjC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,CAAA;YAC5B,CAAC,CAAC,CAAA;SACH;KACF;IAAC,OAAO,GAAQ,EAAE;QACjB,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,GAAG;YAC7D,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,yBAAyB;YAC/C,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAA;QACnD,MAAM,GAAG,CAAA;KACV;IAED,IAAI;QACF,IAAI,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE;YAC9B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACjC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,CAAA;YAC5B,CAAC,CAAC,CAAA;SACH;KACF;IAAC,OAAO,GAAQ,EAAE;QACjB,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,GAAG;YAC7D,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,yBAAyB;YAC/C,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAA;QACnD,MAAM,GAAG,CAAA;KACV;AACH,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/circuit/circuit/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C;;GAEG;AACH,SAAS,aAAa,CAAE,aAA4B,EAAE,MAA2B;IAC/E,aAAa,CAAC,KAAK,CAAC;QAClB,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM;QAC9B,IAAI,EAAE,MAAM;KACb,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAE,GAAiB,EAAE,aAA4B;IAC5E,IAAI;QACF,IAAI,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE;YAC9B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACjC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,CAAA;YAC5B,CAAC,CAAC,CAAA;SACH;KACF;IAAC,OAAO,GAAQ,EAAE;QACjB,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,GAAG;YAC7D,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,yBAAyB;YAC/C,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAA;QACnD,MAAM,GAAG,CAAA;KACV;IAED,IAAI;QACF,IAAI,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE;YAC9B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACjC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,CAAA;YAC5B,CAAC,CAAC,CAAA;SACH;KACF;IAAC,OAAO,GAAQ,EAAE;QACjB,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,GAAG;YAC7D,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,yBAAyB;YAC/C,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAA;QACnD,MAAM,GAAG,CAAA;KACV;AACH,CAAC"}
@@ -1,173 +1,51 @@
1
- import * as $protobuf from "protobufjs";
2
- /** Properties of a CircuitRelay. */
3
- export interface ICircuitRelay {
4
-
5
- /** CircuitRelay type */
6
- type?: (CircuitRelay.Type|null);
7
-
8
- /** CircuitRelay srcPeer */
9
- srcPeer?: (CircuitRelay.IPeer|null);
10
-
11
- /** CircuitRelay dstPeer */
12
- dstPeer?: (CircuitRelay.IPeer|null);
13
-
14
- /** CircuitRelay code */
15
- code?: (CircuitRelay.Status|null);
1
+ export interface CircuitRelay {
2
+ type?: CircuitRelay.Type;
3
+ srcPeer?: CircuitRelay.Peer;
4
+ dstPeer?: CircuitRelay.Peer;
5
+ code?: CircuitRelay.Status;
16
6
  }
17
-
18
- /** Represents a CircuitRelay. */
19
- export class CircuitRelay implements ICircuitRelay {
20
-
21
- /**
22
- * Constructs a new CircuitRelay.
23
- * @param [p] Properties to set
24
- */
25
- constructor(p?: ICircuitRelay);
26
-
27
- /** CircuitRelay type. */
28
- public type: CircuitRelay.Type;
29
-
30
- /** CircuitRelay srcPeer. */
31
- public srcPeer?: (CircuitRelay.IPeer|null);
32
-
33
- /** CircuitRelay dstPeer. */
34
- public dstPeer?: (CircuitRelay.IPeer|null);
35
-
36
- /** CircuitRelay code. */
37
- public code: CircuitRelay.Status;
38
-
39
- /**
40
- * Encodes the specified CircuitRelay message. Does not implicitly {@link CircuitRelay.verify|verify} messages.
41
- * @param m CircuitRelay message or plain object to encode
42
- * @param [w] Writer to encode to
43
- * @returns Writer
44
- */
45
- public static encode(m: ICircuitRelay, w?: $protobuf.Writer): $protobuf.Writer;
46
-
47
- /**
48
- * Decodes a CircuitRelay 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 CircuitRelay
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): CircuitRelay;
56
-
57
- /**
58
- * Creates a CircuitRelay message from a plain object. Also converts values to their respective internal types.
59
- * @param d Plain object
60
- * @returns CircuitRelay
61
- */
62
- public static fromObject(d: { [k: string]: any }): CircuitRelay;
63
-
64
- /**
65
- * Creates a plain object from a CircuitRelay message. Also converts values to other types if specified.
66
- * @param m CircuitRelay
67
- * @param [o] Conversion options
68
- * @returns Plain object
69
- */
70
- public static toObject(m: CircuitRelay, o?: $protobuf.IConversionOptions): { [k: string]: any };
71
-
72
- /**
73
- * Converts this CircuitRelay to JSON.
74
- * @returns JSON object
75
- */
76
- public toJSON(): { [k: string]: any };
77
- }
78
-
79
- export namespace CircuitRelay {
80
-
81
- /** Status enum. */
7
+ export declare namespace CircuitRelay {
82
8
  enum Status {
83
- SUCCESS = 100,
84
- HOP_SRC_ADDR_TOO_LONG = 220,
85
- HOP_DST_ADDR_TOO_LONG = 221,
86
- HOP_SRC_MULTIADDR_INVALID = 250,
87
- HOP_DST_MULTIADDR_INVALID = 251,
88
- HOP_NO_CONN_TO_DST = 260,
89
- HOP_CANT_DIAL_DST = 261,
90
- HOP_CANT_OPEN_DST_STREAM = 262,
91
- HOP_CANT_SPEAK_RELAY = 270,
92
- HOP_CANT_RELAY_TO_SELF = 280,
93
- STOP_SRC_ADDR_TOO_LONG = 320,
94
- STOP_DST_ADDR_TOO_LONG = 321,
95
- STOP_SRC_MULTIADDR_INVALID = 350,
96
- STOP_DST_MULTIADDR_INVALID = 351,
97
- STOP_RELAY_REFUSED = 390,
98
- MALFORMED_MESSAGE = 400
9
+ SUCCESS = "SUCCESS",
10
+ HOP_SRC_ADDR_TOO_LONG = "HOP_SRC_ADDR_TOO_LONG",
11
+ HOP_DST_ADDR_TOO_LONG = "HOP_DST_ADDR_TOO_LONG",
12
+ HOP_SRC_MULTIADDR_INVALID = "HOP_SRC_MULTIADDR_INVALID",
13
+ HOP_DST_MULTIADDR_INVALID = "HOP_DST_MULTIADDR_INVALID",
14
+ HOP_NO_CONN_TO_DST = "HOP_NO_CONN_TO_DST",
15
+ HOP_CANT_DIAL_DST = "HOP_CANT_DIAL_DST",
16
+ HOP_CANT_OPEN_DST_STREAM = "HOP_CANT_OPEN_DST_STREAM",
17
+ HOP_CANT_SPEAK_RELAY = "HOP_CANT_SPEAK_RELAY",
18
+ HOP_CANT_RELAY_TO_SELF = "HOP_CANT_RELAY_TO_SELF",
19
+ STOP_SRC_ADDR_TOO_LONG = "STOP_SRC_ADDR_TOO_LONG",
20
+ STOP_DST_ADDR_TOO_LONG = "STOP_DST_ADDR_TOO_LONG",
21
+ STOP_SRC_MULTIADDR_INVALID = "STOP_SRC_MULTIADDR_INVALID",
22
+ STOP_DST_MULTIADDR_INVALID = "STOP_DST_MULTIADDR_INVALID",
23
+ STOP_RELAY_REFUSED = "STOP_RELAY_REFUSED",
24
+ MALFORMED_MESSAGE = "MALFORMED_MESSAGE"
25
+ }
26
+ namespace Status {
27
+ const codec: () => import("protons-runtime/dist/src/codecs/codec").Codec<typeof Status>;
99
28
  }
100
-
101
- /** Type enum. */
102
29
  enum Type {
103
- HOP = 1,
104
- STOP = 2,
105
- STATUS = 3,
106
- CAN_HOP = 4
30
+ HOP = "HOP",
31
+ STOP = "STOP",
32
+ STATUS = "STATUS",
33
+ CAN_HOP = "CAN_HOP"
34
+ }
35
+ namespace Type {
36
+ const codec: () => import("protons-runtime/dist/src/codecs/codec").Codec<typeof Type>;
107
37
  }
108
-
109
- /** Properties of a Peer. */
110
- interface IPeer {
111
-
112
- /** Peer id */
38
+ interface Peer {
113
39
  id: Uint8Array;
114
-
115
- /** Peer addrs */
116
- addrs?: (Uint8Array[]|null);
40
+ addrs: Uint8Array[];
117
41
  }
118
-
119
- /** Represents a Peer. */
120
- class Peer implements IPeer {
121
-
122
- /**
123
- * Constructs a new Peer.
124
- * @param [p] Properties to set
125
- */
126
- constructor(p?: CircuitRelay.IPeer);
127
-
128
- /** Peer id. */
129
- public id: Uint8Array;
130
-
131
- /** Peer addrs. */
132
- public addrs: Uint8Array[];
133
-
134
- /**
135
- * Encodes the specified Peer message. Does not implicitly {@link CircuitRelay.Peer.verify|verify} messages.
136
- * @param m Peer message or plain object to encode
137
- * @param [w] Writer to encode to
138
- * @returns Writer
139
- */
140
- public static encode(m: CircuitRelay.IPeer, w?: $protobuf.Writer): $protobuf.Writer;
141
-
142
- /**
143
- * Decodes a Peer message from the specified reader or buffer.
144
- * @param r Reader or buffer to decode from
145
- * @param [l] Message length if known beforehand
146
- * @returns Peer
147
- * @throws {Error} If the payload is not a reader or valid buffer
148
- * @throws {$protobuf.util.ProtocolError} If required fields are missing
149
- */
150
- public static decode(r: ($protobuf.Reader|Uint8Array), l?: number): CircuitRelay.Peer;
151
-
152
- /**
153
- * Creates a Peer message from a plain object. Also converts values to their respective internal types.
154
- * @param d Plain object
155
- * @returns Peer
156
- */
157
- public static fromObject(d: { [k: string]: any }): CircuitRelay.Peer;
158
-
159
- /**
160
- * Creates a plain object from a Peer message. Also converts values to other types if specified.
161
- * @param m Peer
162
- * @param [o] Conversion options
163
- * @returns Plain object
164
- */
165
- public static toObject(m: CircuitRelay.Peer, o?: $protobuf.IConversionOptions): { [k: string]: any };
166
-
167
- /**
168
- * Converts this Peer to JSON.
169
- * @returns JSON object
170
- */
171
- public toJSON(): { [k: string]: any };
42
+ namespace Peer {
43
+ const codec: () => import("protons-runtime/dist/src/codecs/codec").Codec<Peer>;
44
+ const encode: (obj: Peer) => Uint8Array;
45
+ const decode: (buf: Uint8Array) => Peer;
172
46
  }
47
+ const codec: () => import("protons-runtime/dist/src/codecs/codec").Codec<CircuitRelay>;
48
+ const encode: (obj: CircuitRelay) => Uint8Array;
49
+ const decode: (buf: Uint8Array) => CircuitRelay;
173
50
  }
51
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/circuit/pb/index.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,YAAY,CAAC,IAAI,CAAA;IACxB,OAAO,CAAC,EAAE,YAAY,CAAC,IAAI,CAAA;IAC3B,OAAO,CAAC,EAAE,YAAY,CAAC,IAAI,CAAA;IAC3B,IAAI,CAAC,EAAE,YAAY,CAAC,MAAM,CAAA;CAC3B;AAED,yBAAiB,YAAY,CAAC;IAC5B,KAAY,MAAM;QAChB,OAAO,YAAY;QACnB,qBAAqB,0BAA0B;QAC/C,qBAAqB,0BAA0B;QAC/C,yBAAyB,8BAA8B;QACvD,yBAAyB,8BAA8B;QACvD,kBAAkB,uBAAuB;QACzC,iBAAiB,sBAAsB;QACvC,wBAAwB,6BAA6B;QACrD,oBAAoB,yBAAyB;QAC7C,sBAAsB,2BAA2B;QACjD,sBAAsB,2BAA2B;QACjD,sBAAsB,2BAA2B;QACjD,0BAA0B,+BAA+B;QACzD,0BAA0B,+BAA+B;QACzD,kBAAkB,uBAAuB;QACzC,iBAAiB,sBAAsB;KACxC;IAED,UAAiB,MAAM,CAAC;QACf,MAAM,KAAK,4EAEjB,CAAA;KACF;IACD,KAAY,IAAI;QACd,GAAG,QAAQ;QACX,IAAI,SAAS;QACb,MAAM,WAAW;QACjB,OAAO,YAAY;KACpB;IAED,UAAiB,IAAI,CAAC;QACb,MAAM,KAAK,0EAEjB,CAAA;KACF;IACD,UAAiB,IAAI;QACnB,EAAE,EAAE,UAAU,CAAA;QACd,KAAK,EAAE,UAAU,EAAE,CAAA;KACpB;IAED,UAAiB,IAAI,CAAC;QACb,MAAM,KAAK,mEAKjB,CAAA;QAEM,MAAM,MAAM,QAAS,IAAI,KAAG,UAElC,CAAA;QAEM,MAAM,MAAM,QAAS,UAAU,KAAG,IAExC,CAAA;KACF;IAEM,MAAM,KAAK,2EAOjB,CAAA;IAEM,MAAM,MAAM,QAAS,YAAY,KAAG,UAE1C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,KAAG,YAExC,CAAA;CACF"}