@libp2p/interface 2.1.0 → 2.1.1

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.
@@ -109,7 +109,7 @@ export interface Stream extends Duplex<AsyncGenerator<Uint8ArrayList>, Source<Ui
109
109
  *
110
110
  * This will cause a `RESET` message to be sent to the remote, *unless* the sink has already ended.
111
111
  *
112
- * The sink will return and the source will throw if an error is passed or return normally if not.
112
+ * The sink will return and the source will throw.
113
113
  */
114
114
  abort(err: Error): void;
115
115
  /**
@@ -1,3 +1,5 @@
1
- /** Noop for browser compatibility */
1
+ /**
2
+ * Noop for browser compatibility
3
+ */
2
4
  export declare function setMaxListeners(): void;
3
5
  //# sourceMappingURL=events.browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.browser.d.ts","sourceRoot":"","sources":["../../src/events.browser.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,wBAAgB,eAAe,IAAK,IAAI,CAAG"}
1
+ {"version":3,"file":"events.browser.d.ts","sourceRoot":"","sources":["../../src/events.browser.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,eAAe,IAAK,IAAI,CAAG"}
@@ -1,3 +1,5 @@
1
- /** Noop for browser compatibility */
1
+ /**
2
+ * Noop for browser compatibility
3
+ */
2
4
  export function setMaxListeners() { }
3
5
  //# sourceMappingURL=events.browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.browser.js","sourceRoot":"","sources":["../../src/events.browser.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,MAAM,UAAU,eAAe,KAAW,CAAC"}
1
+ {"version":3,"file":"events.browser.js","sourceRoot":"","sources":["../../src/events.browser.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,eAAe,KAAW,CAAC"}
@@ -1,4 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  import { setMaxListeners as nodeSetMaxListeners } from 'events';
3
+ /**
4
+ * Create a setMaxListeners that doesn't break browser usage
5
+ */
3
6
  export declare const setMaxListeners: typeof nodeSetMaxListeners;
4
7
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAG/D,eAAO,MAAM,eAAe,EAAE,OAAO,mBAMpC,CAAA"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAE/D;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAAO,mBAMpC,CAAA"}
@@ -1,5 +1,7 @@
1
1
  import { setMaxListeners as nodeSetMaxListeners } from 'events';
2
- // create a setMaxListeners that doesn't break browser usage
2
+ /**
3
+ * Create a setMaxListeners that doesn't break browser usage
4
+ */
3
5
  export const setMaxListeners = (n, ...eventTargets) => {
4
6
  try {
5
7
  nodeSetMaxListeners(n, ...eventTargets);
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAE/D,4DAA4D;AAC5D,MAAM,CAAC,MAAM,eAAe,GAA+B,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,EAAE;IAChF,IAAI,CAAC;QACH,mBAAmB,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,CAAA;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAE/D;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAA+B,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,EAAE;IAChF,IAAI,CAAC;QACH,mBAAmB,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,CAAA;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;AACH,CAAC,CAAA"}
@@ -2,14 +2,13 @@ import type { CID } from 'multiformats/cid';
2
2
  import type { MultihashDigest } from 'multiformats/hashes/interface';
3
3
  import type { Uint8ArrayList } from 'uint8arraylist';
4
4
  export type KeyType = 'RSA' | 'Ed25519' | 'secp256k1';
5
- interface PublicKeyBase<KeyType extends string, DigestCode extends number = number> {
5
+ export interface RSAPublicKey {
6
6
  /**
7
7
  * The type of this key
8
8
  */
9
- readonly type: KeyType;
9
+ readonly type: 'RSA';
10
10
  /**
11
- * The raw public key bytes (for Ed25519 and secp256k1 keys) or PKIX in ASN1
12
- * DER format (for RSA keys)
11
+ * PKIX in ASN1 DER format
13
12
  */
14
13
  readonly raw: Uint8Array;
15
14
  /**
@@ -19,19 +18,16 @@ interface PublicKeyBase<KeyType extends string, DigestCode extends number = numb
19
18
  /**
20
19
  * Returns this public key as a Multihash digest.
21
20
  *
22
- * It contains either an identity hash containing the protobuf version of the
23
- * public key (for Ed25519 and secp256k1 keys) or a sha256 hash of the
24
- * protobuf version of the public key (RSA keys).
21
+ * It contains a sha256 hash of the protobuf version of the public key.
25
22
  */
26
- toMultihash(): MultihashDigest<DigestCode>;
23
+ toMultihash(): MultihashDigest<0x12>;
27
24
  /**
28
25
  * Return this public key as a CID encoded with the `libp2p-key` codec
29
26
  *
30
- * The digest contains either an identity hash containing the protobuf version
31
- * of the public key (for Ed25519 and secp256k1 keys) or a sha256 hash of the
32
- * protobuf version of the public key (RSA keys).
27
+ * The digest contains a sha256 hash of the protobuf version of the public
28
+ * key.
33
29
  */
34
- toCID(): CID<unknown, 0x72, DigestCode, 1>;
30
+ toCID(): CID<unknown, 0x72, 0x12, 1>;
35
31
  /**
36
32
  * Verify the passed data was signed by the private key corresponding to this
37
33
  * public key
@@ -42,11 +38,75 @@ interface PublicKeyBase<KeyType extends string, DigestCode extends number = numb
42
38
  */
43
39
  toString(): string;
44
40
  }
45
- export interface RSAPublicKey extends PublicKeyBase<'RSA', 0x12> {
46
- }
47
- export interface Ed25519PublicKey extends PublicKeyBase<'Ed25519', 0x0> {
41
+ export interface Ed25519PublicKey {
42
+ /**
43
+ * The type of this key
44
+ */
45
+ readonly type: 'Ed25519';
46
+ /**
47
+ * The raw public key bytes
48
+ */
49
+ readonly raw: Uint8Array;
50
+ /**
51
+ * Returns `true` if the passed object matches this key
52
+ */
53
+ equals(key?: any): boolean;
54
+ /**
55
+ * Returns this public key as an identity hash containing the protobuf wrapped
56
+ * public key
57
+ */
58
+ toMultihash(): MultihashDigest<0x0>;
59
+ /**
60
+ * Return this public key as a CID encoded with the `libp2p-key` codec
61
+ *
62
+ * The digest contains an identity hash containing the protobuf wrapped
63
+ * version of the public key.
64
+ */
65
+ toCID(): CID<unknown, 0x72, 0x0, 1>;
66
+ /**
67
+ * Verify the passed data was signed by the private key corresponding to this
68
+ * public key
69
+ */
70
+ verify(data: Uint8Array | Uint8ArrayList, sig: Uint8Array): boolean | Promise<boolean>;
71
+ /**
72
+ * Returns this key as a multihash with base58btc encoding
73
+ */
74
+ toString(): string;
48
75
  }
49
- export interface Secp256k1PublicKey extends PublicKeyBase<'secp256k1', 0x0> {
76
+ export interface Secp256k1PublicKey {
77
+ /**
78
+ * The type of this key
79
+ */
80
+ readonly type: 'secp256k1';
81
+ /**
82
+ * The raw public key bytes
83
+ */
84
+ readonly raw: Uint8Array;
85
+ /**
86
+ * Returns `true` if the passed object matches this key
87
+ */
88
+ equals(key?: any): boolean;
89
+ /**
90
+ * Returns this public key as an identity hash containing the protobuf wrapped
91
+ * public key
92
+ */
93
+ toMultihash(): MultihashDigest<0x0>;
94
+ /**
95
+ * Return this public key as a CID encoded with the `libp2p-key` codec
96
+ *
97
+ * The digest contains an identity hash containing the protobuf wrapped
98
+ * version of the public key.
99
+ */
100
+ toCID(): CID<unknown, 0x72, 0x0, 1>;
101
+ /**
102
+ * Verify the passed data was signed by the private key corresponding to this
103
+ * public key
104
+ */
105
+ verify(data: Uint8Array | Uint8ArrayList, sig: Uint8Array): boolean | Promise<boolean>;
106
+ /**
107
+ * Returns this key as a multihash with base58btc encoding
108
+ */
109
+ toString(): string;
50
110
  }
51
111
  export type PublicKey = RSAPublicKey | Ed25519PublicKey | Secp256k1PublicKey;
52
112
  /**
@@ -57,18 +117,17 @@ export declare function isPublicKey(key?: any): key is PublicKey;
57
117
  /**
58
118
  * Generic private key interface
59
119
  */
60
- interface PrivateKeyBase<KeyType extends string, PublicKeyType extends PublicKeyBase<KeyType>> {
120
+ export interface RSAPrivateKey {
61
121
  /**
62
122
  * The type of this key
63
123
  */
64
- readonly type: KeyType;
124
+ readonly type: 'RSA';
65
125
  /**
66
126
  * The public key that corresponds to this private key
67
127
  */
68
- readonly publicKey: PublicKeyType;
128
+ readonly publicKey: RSAPublicKey;
69
129
  /**
70
- * The raw public key bytes (for Ed25519 and secp256k1 keys) or PKIX in ASN1
71
- * DER format (for RSA keys)
130
+ * PKIX in ASN1 DER format
72
131
  */
73
132
  readonly raw: Uint8Array;
74
133
  /**
@@ -81,11 +140,51 @@ interface PrivateKeyBase<KeyType extends string, PublicKeyType extends PublicKey
81
140
  */
82
141
  sign(data: Uint8Array | Uint8ArrayList): Uint8Array | Promise<Uint8Array>;
83
142
  }
84
- export interface RSAPrivateKey extends PrivateKeyBase<'RSA', RSAPublicKey> {
85
- }
86
- export interface Ed25519PrivateKey extends PrivateKeyBase<'Ed25519', Ed25519PublicKey> {
143
+ export interface Ed25519PrivateKey {
144
+ /**
145
+ * The type of this key
146
+ */
147
+ readonly type: 'Ed25519';
148
+ /**
149
+ * The public key that corresponds to this private key
150
+ */
151
+ readonly publicKey: Ed25519PublicKey;
152
+ /**
153
+ * The raw public key bytes
154
+ */
155
+ readonly raw: Uint8Array;
156
+ /**
157
+ * Returns `true` if the passed object matches this key
158
+ */
159
+ equals(key?: any): boolean;
160
+ /**
161
+ * Sign the passed data with this private key and return the signature for
162
+ * later verification
163
+ */
164
+ sign(data: Uint8Array | Uint8ArrayList): Uint8Array | Promise<Uint8Array>;
87
165
  }
88
- export interface Secp256k1PrivateKey extends PrivateKeyBase<'secp256k1', Secp256k1PublicKey> {
166
+ export interface Secp256k1PrivateKey {
167
+ /**
168
+ * The type of this key
169
+ */
170
+ readonly type: 'secp256k1';
171
+ /**
172
+ * The public key that corresponds to this private key
173
+ */
174
+ readonly publicKey: Secp256k1PublicKey;
175
+ /**
176
+ * The raw public key bytes
177
+ */
178
+ readonly raw: Uint8Array;
179
+ /**
180
+ * Returns `true` if the passed object matches this key
181
+ */
182
+ equals(key?: any): boolean;
183
+ /**
184
+ * Sign the passed data with this private key and return the signature for
185
+ * later verification
186
+ */
187
+ sign(data: Uint8Array | Uint8ArrayList): Uint8Array | Promise<Uint8Array>;
89
188
  }
90
189
  export type PrivateKey = RSAPrivateKey | Ed25519PrivateKey | Secp256k1PrivateKey;
91
190
  /**
@@ -93,5 +192,4 @@ export type PrivateKey = RSAPrivateKey | Ed25519PrivateKey | Secp256k1PrivateKey
93
192
  * interface. Can be used to disambiguate object types.
94
193
  */
95
194
  export declare function isPrivateKey(key?: any): key is PrivateKey;
96
- export {};
97
195
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/keys/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,MAAM,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,WAAW,CAAA;AAErD,UAAU,aAAa,CAAC,OAAO,SAAS,MAAM,EAAE,UAAU,SAAS,MAAM,GAAG,MAAM;IAChF;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IAEtB;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;IAExB;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,OAAO,CAAA;IAE1B;;;;;;OAMG;IACH,WAAW,IAAI,eAAe,CAAC,UAAU,CAAC,CAAA;IAE1C;;;;;;OAMG;IACH,KAAK,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;IAE1C;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,cAAc,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEtF;;OAEG;IACH,QAAQ,IAAI,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,YAAa,SAAQ,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC;CAAG;AACnE,MAAM,WAAW,gBAAiB,SAAQ,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC;CAAG;AAC1E,MAAM,WAAW,kBAAmB,SAAQ,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC;CAAG;AAC9E,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,gBAAgB,GAAG,kBAAkB,CAAA;AAE5E;;;GAGG;AACH,wBAAgB,WAAW,CAAE,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,SAAS,CAWxD;AAED;;GAEG;AACH,UAAU,cAAc,CAAC,OAAO,SAAS,MAAM,EAAE,aAAa,SAAS,aAAa,CAAC,OAAO,CAAC;IAC3F;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IAEtB;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAA;IAEjC;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;IAExB;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,OAAO,CAAA;IAE1B;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,cAAc,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CAC1E;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,KAAK,EAAE,YAAY,CAAC;CAAG;AAC7E,MAAM,WAAW,iBAAkB,SAAQ,cAAc,CAAC,SAAS,EAAE,gBAAgB,CAAC;CAAG;AACzF,MAAM,WAAW,mBAAoB,SAAQ,cAAc,CAAC,WAAW,EAAE,kBAAkB,CAAC;CAAG;AAC/F,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,iBAAiB,GAAG,mBAAmB,CAAA;AAEhF;;;GAGG;AACH,wBAAgB,YAAY,CAAE,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,UAAU,CAU1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/keys/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/keys/index.ts"],"names":[],"mappings":"AA0DA;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAE,GAAS;IACpC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,CAAC;QAC/E,GAAG,CAAC,GAAG,YAAY,UAAU;QAC7B,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU;QAChC,OAAO,GAAG,CAAC,WAAW,KAAK,UAAU;QACrC,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU;QAC/B,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU,CAAA;AACpC,CAAC;AAuCD;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAE,GAAS;IACrC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,CAAC;QAC/E,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC;QAC1B,GAAG,CAAC,GAAG,YAAY,UAAU;QAC7B,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU;QAChC,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU,CAAA;AAClC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/keys/index.ts"],"names":[],"mappings":"AAuIA;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAE,GAAS;IACpC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,CAAC;QAC/E,GAAG,CAAC,GAAG,YAAY,UAAU;QAC7B,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU;QAChC,OAAO,GAAG,CAAC,WAAW,KAAK,UAAU;QACrC,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU;QAC/B,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU,CAAA;AACpC,CAAC;AA2FD;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAE,GAAS;IACrC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,CAAC;QAC/E,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC;QAC1B,GAAG,CAAC,GAAG,YAAY,UAAU;QAC7B,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU;QAChC,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU,CAAA;AAClC,CAAC"}
@@ -95,7 +95,7 @@ export interface PubSubInit {
95
95
  */
96
96
  maxOutboundStreams?: number;
97
97
  }
98
- interface Subscription {
98
+ export interface Subscription {
99
99
  topic: string;
100
100
  subscribe: boolean;
101
101
  }
@@ -242,5 +242,4 @@ export declare const pubSubSymbol: unique symbol;
242
242
  * Returns true if the passed argument is a PubSub implementation
243
243
  */
244
244
  export declare function isPubSub(obj?: any): obj is PubSub;
245
- export {};
246
245
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pubsub/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pubsub/index.ts"],"names":[],"mappings":"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"}
@@ -8,11 +8,15 @@ export interface StreamHandler {
8
8
  }
9
9
  export interface StreamHandlerOptions {
10
10
  /**
11
- * How many incoming streams can be open for this protocol at the same time on each connection (default: 32)
11
+ * How many incoming streams can be open for this protocol at the same time on each connection
12
+ *
13
+ * @default 32
12
14
  */
13
15
  maxInboundStreams?: number;
14
16
  /**
15
- * How many outgoing streams can be open for this protocol at the same time on each connection (default: 64)
17
+ * How many outgoing streams can be open for this protocol at the same time on each connection
18
+ *
19
+ * @default 64
16
20
  */
17
21
  maxOutboundStreams?: number;
18
22
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/stream-handler/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEhE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAA;CACjC;AAED,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;;OAGG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAA;CACjC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,aAAa,CAAA;IACtB,OAAO,EAAE,oBAAoB,CAAA;CAC9B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/stream-handler/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEhE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAA;CACjC;AAED,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;;OAGG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAA;CACjC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,aAAa,CAAA;IACtB,OAAO,EAAE,oBAAoB,CAAA;CAC9B"}
@@ -142,6 +142,7 @@
142
142
  "StreamMuxerFactory": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_interface.StreamMuxerFactory.html",
143
143
  "StreamMuxerInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_interface.StreamMuxerInit.html",
144
144
  "StreamTimeline": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_interface.StreamTimeline.html",
145
+ "Subscription": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_interface.Subscription.html",
145
146
  "SubscriptionChangeData": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_interface.SubscriptionChangeData.html",
146
147
  "Summary": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_interface.Summary.html",
147
148
  "SummaryGroup": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_interface.SummaryGroup.html",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/interface",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "description": "The interface implemented by a libp2p node",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/interface#readme",
@@ -126,7 +126,7 @@ export interface Stream extends Duplex<AsyncGenerator<Uint8ArrayList>, Source<Ui
126
126
  *
127
127
  * This will cause a `RESET` message to be sent to the remote, *unless* the sink has already ended.
128
128
  *
129
- * The sink will return and the source will throw if an error is passed or return normally if not.
129
+ * The sink will return and the source will throw.
130
130
  */
131
131
  abort(err: Error): void
132
132
 
@@ -1,2 +1,4 @@
1
- /** Noop for browser compatibility */
1
+ /**
2
+ * Noop for browser compatibility
3
+ */
2
4
  export function setMaxListeners (): void {}
package/src/events.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import { setMaxListeners as nodeSetMaxListeners } from 'events'
2
2
 
3
- // create a setMaxListeners that doesn't break browser usage
3
+ /**
4
+ * Create a setMaxListeners that doesn't break browser usage
5
+ */
4
6
  export const setMaxListeners: typeof nodeSetMaxListeners = (n, ...eventTargets) => {
5
7
  try {
6
8
  nodeSetMaxListeners(n, ...eventTargets)
package/src/keys/index.ts CHANGED
@@ -4,15 +4,14 @@ import type { Uint8ArrayList } from 'uint8arraylist'
4
4
 
5
5
  export type KeyType = 'RSA' | 'Ed25519' | 'secp256k1'
6
6
 
7
- interface PublicKeyBase<KeyType extends string, DigestCode extends number = number> {
7
+ export interface RSAPublicKey {
8
8
  /**
9
9
  * The type of this key
10
10
  */
11
- readonly type: KeyType
11
+ readonly type: 'RSA'
12
12
 
13
13
  /**
14
- * The raw public key bytes (for Ed25519 and secp256k1 keys) or PKIX in ASN1
15
- * DER format (for RSA keys)
14
+ * PKIX in ASN1 DER format
16
15
  */
17
16
  readonly raw: Uint8Array
18
17
 
@@ -24,20 +23,101 @@ interface PublicKeyBase<KeyType extends string, DigestCode extends number = numb
24
23
  /**
25
24
  * Returns this public key as a Multihash digest.
26
25
  *
27
- * It contains either an identity hash containing the protobuf version of the
28
- * public key (for Ed25519 and secp256k1 keys) or a sha256 hash of the
29
- * protobuf version of the public key (RSA keys).
26
+ * It contains a sha256 hash of the protobuf version of the public key.
30
27
  */
31
- toMultihash(): MultihashDigest<DigestCode>
28
+ toMultihash(): MultihashDigest<0x12>
32
29
 
33
30
  /**
34
31
  * Return this public key as a CID encoded with the `libp2p-key` codec
35
32
  *
36
- * The digest contains either an identity hash containing the protobuf version
37
- * of the public key (for Ed25519 and secp256k1 keys) or a sha256 hash of the
38
- * protobuf version of the public key (RSA keys).
33
+ * The digest contains a sha256 hash of the protobuf version of the public
34
+ * key.
39
35
  */
40
- toCID(): CID<unknown, 0x72, DigestCode, 1>
36
+ toCID(): CID<unknown, 0x72, 0x12, 1>
37
+
38
+ /**
39
+ * Verify the passed data was signed by the private key corresponding to this
40
+ * public key
41
+ */
42
+ verify(data: Uint8Array | Uint8ArrayList, sig: Uint8Array): boolean | Promise<boolean>
43
+
44
+ /**
45
+ * Returns this key as a multihash with base58btc encoding
46
+ */
47
+ toString(): string
48
+ }
49
+
50
+ export interface Ed25519PublicKey {
51
+ /**
52
+ * The type of this key
53
+ */
54
+ readonly type: 'Ed25519'
55
+
56
+ /**
57
+ * The raw public key bytes
58
+ */
59
+ readonly raw: Uint8Array
60
+
61
+ /**
62
+ * Returns `true` if the passed object matches this key
63
+ */
64
+ equals(key?: any): boolean
65
+
66
+ /**
67
+ * Returns this public key as an identity hash containing the protobuf wrapped
68
+ * public key
69
+ */
70
+ toMultihash(): MultihashDigest<0x0>
71
+
72
+ /**
73
+ * Return this public key as a CID encoded with the `libp2p-key` codec
74
+ *
75
+ * The digest contains an identity hash containing the protobuf wrapped
76
+ * version of the public key.
77
+ */
78
+ toCID(): CID<unknown, 0x72, 0x0, 1>
79
+
80
+ /**
81
+ * Verify the passed data was signed by the private key corresponding to this
82
+ * public key
83
+ */
84
+ verify(data: Uint8Array | Uint8ArrayList, sig: Uint8Array): boolean | Promise<boolean>
85
+
86
+ /**
87
+ * Returns this key as a multihash with base58btc encoding
88
+ */
89
+ toString(): string
90
+ }
91
+
92
+ export interface Secp256k1PublicKey {
93
+ /**
94
+ * The type of this key
95
+ */
96
+ readonly type: 'secp256k1'
97
+
98
+ /**
99
+ * The raw public key bytes
100
+ */
101
+ readonly raw: Uint8Array
102
+
103
+ /**
104
+ * Returns `true` if the passed object matches this key
105
+ */
106
+ equals(key?: any): boolean
107
+
108
+ /**
109
+ * Returns this public key as an identity hash containing the protobuf wrapped
110
+ * public key
111
+ */
112
+ toMultihash(): MultihashDigest<0x0>
113
+
114
+ /**
115
+ * Return this public key as a CID encoded with the `libp2p-key` codec
116
+ *
117
+ * The digest contains an identity hash containing the protobuf wrapped
118
+ * version of the public key.
119
+ */
120
+ toCID(): CID<unknown, 0x72, 0x0, 1>
41
121
 
42
122
  /**
43
123
  * Verify the passed data was signed by the private key corresponding to this
@@ -51,9 +131,6 @@ interface PublicKeyBase<KeyType extends string, DigestCode extends number = numb
51
131
  toString(): string
52
132
  }
53
133
 
54
- export interface RSAPublicKey extends PublicKeyBase<'RSA', 0x12> {}
55
- export interface Ed25519PublicKey extends PublicKeyBase<'Ed25519', 0x0> {}
56
- export interface Secp256k1PublicKey extends PublicKeyBase<'secp256k1', 0x0> {}
57
134
  export type PublicKey = RSAPublicKey | Ed25519PublicKey | Secp256k1PublicKey
58
135
 
59
136
  /**
@@ -76,20 +153,75 @@ export function isPublicKey (key?: any): key is PublicKey {
76
153
  /**
77
154
  * Generic private key interface
78
155
  */
79
- interface PrivateKeyBase<KeyType extends string, PublicKeyType extends PublicKeyBase<KeyType>> {
156
+ export interface RSAPrivateKey {
157
+ /**
158
+ * The type of this key
159
+ */
160
+ readonly type: 'RSA'
161
+
162
+ /**
163
+ * The public key that corresponds to this private key
164
+ */
165
+ readonly publicKey: RSAPublicKey
166
+
167
+ /**
168
+ * PKIX in ASN1 DER format
169
+ */
170
+ readonly raw: Uint8Array
171
+
172
+ /**
173
+ * Returns `true` if the passed object matches this key
174
+ */
175
+ equals(key?: any): boolean
176
+
177
+ /**
178
+ * Sign the passed data with this private key and return the signature for
179
+ * later verification
180
+ */
181
+ sign(data: Uint8Array | Uint8ArrayList): Uint8Array | Promise<Uint8Array>
182
+ }
183
+
184
+ export interface Ed25519PrivateKey {
185
+ /**
186
+ * The type of this key
187
+ */
188
+ readonly type: 'Ed25519'
189
+
190
+ /**
191
+ * The public key that corresponds to this private key
192
+ */
193
+ readonly publicKey: Ed25519PublicKey
194
+
195
+ /**
196
+ * The raw public key bytes
197
+ */
198
+ readonly raw: Uint8Array
199
+
200
+ /**
201
+ * Returns `true` if the passed object matches this key
202
+ */
203
+ equals(key?: any): boolean
204
+
205
+ /**
206
+ * Sign the passed data with this private key and return the signature for
207
+ * later verification
208
+ */
209
+ sign(data: Uint8Array | Uint8ArrayList): Uint8Array | Promise<Uint8Array>
210
+ }
211
+
212
+ export interface Secp256k1PrivateKey {
80
213
  /**
81
214
  * The type of this key
82
215
  */
83
- readonly type: KeyType
216
+ readonly type: 'secp256k1'
84
217
 
85
218
  /**
86
219
  * The public key that corresponds to this private key
87
220
  */
88
- readonly publicKey: PublicKeyType
221
+ readonly publicKey: Secp256k1PublicKey
89
222
 
90
223
  /**
91
- * The raw public key bytes (for Ed25519 and secp256k1 keys) or PKIX in ASN1
92
- * DER format (for RSA keys)
224
+ * The raw public key bytes
93
225
  */
94
226
  readonly raw: Uint8Array
95
227
 
@@ -105,9 +237,6 @@ interface PrivateKeyBase<KeyType extends string, PublicKeyType extends PublicKey
105
237
  sign(data: Uint8Array | Uint8ArrayList): Uint8Array | Promise<Uint8Array>
106
238
  }
107
239
 
108
- export interface RSAPrivateKey extends PrivateKeyBase<'RSA', RSAPublicKey> {}
109
- export interface Ed25519PrivateKey extends PrivateKeyBase<'Ed25519', Ed25519PublicKey> {}
110
- export interface Secp256k1PrivateKey extends PrivateKeyBase<'secp256k1', Secp256k1PublicKey> {}
111
240
  export type PrivateKey = RSAPrivateKey | Ed25519PrivateKey | Secp256k1PrivateKey
112
241
 
113
242
  /**
@@ -115,7 +115,7 @@ export interface PubSubInit {
115
115
  maxOutboundStreams?: number
116
116
  }
117
117
 
118
- interface Subscription {
118
+ export interface Subscription {
119
119
  topic: string
120
120
  subscribe: boolean
121
121
  }
@@ -11,12 +11,16 @@ export interface StreamHandler {
11
11
 
12
12
  export interface StreamHandlerOptions {
13
13
  /**
14
- * How many incoming streams can be open for this protocol at the same time on each connection (default: 32)
14
+ * How many incoming streams can be open for this protocol at the same time on each connection
15
+ *
16
+ * @default 32
15
17
  */
16
18
  maxInboundStreams?: number
17
19
 
18
20
  /**
19
- * How many outgoing streams can be open for this protocol at the same time on each connection (default: 64)
21
+ * How many outgoing streams can be open for this protocol at the same time on each connection
22
+ *
23
+ * @default 64
20
24
  */
21
25
  maxOutboundStreams?: number
22
26