diff --git a/assets/highlight.css b/assets/highlight.css
index 959b8ca403..85726c675a 100644
--- a/assets/highlight.css
+++ b/assets/highlight.css
@@ -5,14 +5,14 @@
--dark-hl-1: #D4D4D4;
--light-hl-2: #A31515;
--dark-hl-2: #CE9178;
- --light-hl-3: #AF00DB;
- --dark-hl-3: #C586C0;
- --light-hl-4: #0000FF;
- --dark-hl-4: #569CD6;
- --light-hl-5: #0070C1;
- --dark-hl-5: #4FC1FF;
- --light-hl-6: #001080;
- --dark-hl-6: #9CDCFE;
+ --light-hl-3: #001080;
+ --dark-hl-3: #9CDCFE;
+ --light-hl-4: #0070C1;
+ --dark-hl-4: #4FC1FF;
+ --light-hl-5: #AF00DB;
+ --dark-hl-5: #C586C0;
+ --light-hl-6: #0000FF;
+ --dark-hl-6: #569CD6;
--light-hl-7: #008000;
--dark-hl-7: #6A9955;
--light-code-background: #FFFFFF;
diff --git a/assets/main.js b/assets/main.js
index f7c83669cf..01bcad55fd 100644
--- a/assets/main.js
+++ b/assets/main.js
@@ -1,7 +1,8 @@
"use strict";
-"use strict";(()=>{var Qe=Object.create;var ae=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Ce=Object.getOwnPropertyNames;var Oe=Object.getPrototypeOf,Re=Object.prototype.hasOwnProperty;var _e=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Me=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ce(e))!Re.call(t,i)&&i!==n&&ae(t,i,{get:()=>e[i],enumerable:!(r=Pe(e,i))||r.enumerable});return t};var De=(t,e,n)=>(n=t!=null?Qe(Oe(t)):{},Me(e||!t||!t.__esModule?ae(n,"default",{value:t,enumerable:!0}):n,t));var de=_e((ce,he)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(n){e.console&&console.warn&&console.warn(n)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i Overrides EventEmitter<IPeersByDiscoveryEvents>.constructor Implementation of IConnectionManager.#private Inherited from EventEmitter.#private Implementation of IConnectionManager.addEventListener Inherited from EventEmitter.addEventListener Implementation of IConnectionManager.dispatchEvent Inherited from EventEmitter.dispatchEvent Implementation of IConnectionManager.getPeersByDiscovery Implementation of IConnectionManager.getPeersByDiscovery Implementation of IConnectionManager.listenerCount Inherited from EventEmitter.listenerCount Implementation of IConnectionManager.removeEventListener Inherited from EventEmitter.removeEventListener Implementation of IConnectionManager.safeDispatchEvent Inherited from EventEmitter.safeDispatchEvent Checks if the peer is dialable based on the following conditions: Implementation of IConnectionManager.stop Implementation of IConnectionManager.stop Generated using TypeDoc Generated using TypeDoc Implementation of IDecodedMessage.pubSubTopic Implementation of IDecodedMessage.pubSubTopic Implementation of IDecodedMessage.contentTopic Implementation of IDecodedMessage.contentTopic Implementation of IDecodedMessage.ephemeral Implementation of IDecodedMessage.ephemeral Implementation of IDecodedMessage.meta Implementation of IDecodedMessage.meta Implementation of IDecodedMessage.payload Implementation of IDecodedMessage.payload Implementation of IDecodedMessage.rateLimitProof Implementation of IDecodedMessage.rateLimitProof Implementation of IDecodedMessage.timestamp Implementation of IDecodedMessage.timestamp Generated using TypeDoc Generated using TypeDoc Implementation of IDecoder.contentTopic Implementation of IDecoder.contentTopic Implementation of IDecoder.fromProtoObj Implementation of IDecoder.fromProtoObj Implementation of IDecoder.fromWireToProtoObj Implementation of IDecoder.fromWireToProtoObj Generated using TypeDoc Generated using TypeDoc Implementation of IEncoder.contentTopic Implementation of IEncoder.contentTopic Implementation of IEncoder.ephemeral Implementation of IEncoder.ephemeral Implementation of IEncoder.toProtoObj Implementation of IEncoder.toProtoObj Implementation of IEncoder.toWire Implementation of IEncoder.toWire Generated using TypeDoc Generated using TypeDoc Generated using TypeDoc Generated using TypeDoc Return a list of all connections this node has open, optionally filtering
by a PeerId Return a list of all connections this node has open, optionally filtering
by a PeerId Generated using TypeDoc Generated using TypeDoc Implementation of Waku.connectionManager Implementation of Waku.connectionManager Implementation of Waku.lightPush Implementation of Waku.lightPush Waku protocols we expect from the peer; Defaults to mounted protocols Return the local multiaddr with peer id on which libp2p is listening. if libp2p is not listening on localhost. if libp2p is not listening on localhost. Implementation of Waku.isStarted Implementation of Waku.isStarted Generated using TypeDoc Generated using TypeDoc Retrieves the TXT record stored at a location from either
this DNS tree cache or via DNS query. if the TXT Record contains non-UTF-8 values. if the TXT Record contains non-UTF-8 values. Runs a recursive, randomized descent of the DNS tree to retrieve a single
ENR record as an ENR. Returns null if parsing or DNS resolution fails. Returns a list of verified peers listed in an EIP-1459 DNS tree. Method may
return fewer peers than requested if Returns a list of verified peers listed in an EIP-1459 DNS tree. Method may
return fewer peers than requested if wantedNodeCapabilityCount requires
+ wantedNodeCapabilityCount requires
larger quantity of peers than available or the number of errors/duplicate
peers encountered by randomized search exceeds the sum of the fields of wantedNodeCapabilityCount plus the wantedNodeCapabilityCount plus the _errorTolerance factor. _errorTolerance factor. Generated using TypeDoc Generated using TypeDoc Parse options and expose function to return bootstrap peer addresses. Overrides EventEmitter<PeerDiscoveryEvents>.constructor Implementation of PeerDiscovery.#private Inherited from EventEmitter.#private Implementation of PeerDiscovery.addEventListener Inherited from EventEmitter.addEventListener Implementation of PeerDiscovery.removeEventListener Inherited from EventEmitter.removeEventListener Implementation of PeerDiscovery.safeDispatchEvent Inherited from EventEmitter.safeDispatchEvent Start discovery process Stop emitting events Generated using TypeDoc Generated using TypeDoc Inherited from RawEnr.constructor Implementation of IEnr.[toStringTag] Inherited from RawEnr.[toStringTag] Inherited from RawEnr.seq Implementation of IEnr.signature Implementation of IEnr.signature Inherited from RawEnr.signature the number of elements in the Map. Inherited from RawEnr.size Inherited from RawEnr.[species] Inherited from RawEnr.id Inherited from RawEnr.ip Inherited from RawEnr.ip Inherited from RawEnr.ip6 Inherited from RawEnr.ip6 Get the This field is used to store multiaddresses that cannot be stored with the current ENR pre-defined keys.
These can be a multiaddresses that include encapsulation (e.g. wss) or do not use If the peer information only contains information that can be represented with the ENR pre-defined keys
-(ip, tcp, etc) then the usage of getLocationMultiaddr should be preferred. The multiaddresses stored in this field are expected to be location multiaddresses, ie, peer id less. Implementation of IEnr.multiaddrs Implementation of IEnr.multiaddrs Inherited from RawEnr.multiaddrs Set the This field is used to store multiaddresses that cannot be stored with the current ENR pre-defined keys.
These can be a multiaddresses that include encapsulation (e.g. wss) or do not use If the peer information only contains information that can be represented with the ENR pre-defined keys
-(ip, tcp, etc) then the usage of setLocationMultiaddr should be preferred.
+(ip, tcp, etc) then the usage of ENR.setLocationMultiaddr should be preferred.
The multiaddresses stored in this field must be location multiaddresses,
ie, without a peer id. Implementation of IEnr.multiaddrs Implementation of IEnr.multiaddrs Inherited from RawEnr.multiaddrs Implementation of IEnr.peerInfo Implementation of IEnr.peerInfo Implementation of IEnr.publicKey Implementation of IEnr.publicKey Inherited from RawEnr.publicKey Inherited from RawEnr.tcp Inherited from RawEnr.tcp Inherited from RawEnr.tcp6 Inherited from RawEnr.tcp6 Inherited from RawEnr.udp Inherited from RawEnr.udp Inherited from RawEnr.udp6 Inherited from RawEnr.udp6 Get the Inherited from RawEnr.waku2 Set the =e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u{let n=Date.now();return(...r)=>{n+e-Date.now()<0&&(t(...r),n=Date.now())}};var re=class extends J{constructor(){super();this.scrollTop=0;this.lastY=0;this.width=0;this.height=0;this.showToolbar=!0;this.toolbar=document.querySelector(".tsd-page-toolbar"),this.navigation=document.querySelector(".col-menu"),window.addEventListener("scroll",ne(()=>this.onScroll(),10)),window.addEventListener("resize",ne(()=>this.onResize(),10)),this.searchInput=document.querySelector("#tsd-search input"),this.searchInput&&this.searchInput.addEventListener("focus",()=>{this.hideShowToolbar()}),this.onResize(),this.onScroll()}triggerResize(){let n=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(n)}onResize(){this.width=window.innerWidth||0,this.height=window.innerHeight||0;let n=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(n)}onScroll(){this.scrollTop=window.scrollY||0;let n=new CustomEvent("scroll",{detail:{scrollTop:this.scrollTop}});this.dispatchEvent(n),this.hideShowToolbar()}hideShowToolbar(){let n=this.showToolbar;this.showToolbar=this.lastY>=this.scrollTop||this.scrollTop<=0||!!this.searchInput&&this.searchInput===document.activeElement,n!==this.showToolbar&&(this.toolbar.classList.toggle("tsd-page-toolbar--hide"),this.navigation?.classList.toggle("col-menu--hide")),this.lastY=this.scrollTop}},R=re;R.instance=new re;var X=class extends I{constructor(n){super(n);this.anchors=[];this.index=-1;R.instance.addEventListener("resize",()=>this.onResize()),R.instance.addEventListener("scroll",r=>this.onScroll(r)),this.createAnchors()}createAnchors(){let n=window.location.href;n.indexOf("#")!=-1&&(n=n.substring(0,n.indexOf("#"))),this.el.querySelectorAll("a").forEach(r=>{let i=r.href;if(i.indexOf("#")==-1||i.substring(0,n.length)!=n)return;let s=i.substring(i.indexOf("#")+1),o=document.querySelector("a.tsd-anchor[name="+s+"]"),a=r.parentNode;!o||!a||this.anchors.push({link:a,anchor:o,position:0})}),this.onResize()}onResize(){let n;for(let i=0,s=this.anchors.length;ii.position-s.position);let r=new CustomEvent("scroll",{detail:{scrollTop:R.instance.scrollTop}});this.onScroll(r)}onScroll(n){let r=n.detail.scrollTop+5,i=this.anchors,s=i.length-1,o=this.index;for(;o>-1&&i[o].position>r;)o-=1;for(;o-1&&this.anchors[this.index].link.classList.remove("focus"),this.index=o,this.index>-1&&this.anchors[this.index].link.classList.add("focus"))}};var ue=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var me=De(de());function ve(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let n=document.querySelector("#tsd-search input"),r=document.querySelector("#tsd-search .results");if(!n||!r)throw new Error("The input field or the result list wrapper was not found");let i=!1;r.addEventListener("mousedown",()=>i=!0),r.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),n.addEventListener("focus",()=>t.classList.add("has-focus")),n.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Fe(t,r,n,s)}function Fe(t,e,n,r){n.addEventListener("input",ue(()=>{He(t,e,n,r)},200));let i=!1;n.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Ve(e,n):s.key=="Escape"?n.blur():s.key=="ArrowUp"?pe(e,-1):s.key==="ArrowDown"?pe(e,1):i=!1}),n.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!n.matches(":focus")&&s.key==="/"&&(n.focus(),s.preventDefault())})}function Ae(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=me.Index.load(window.searchData.index))}function He(t,e,n,r){if(Ae(r,t),!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s=i?r.index.search(`*${i}*`):[];for(let o=0;o=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),l=0;lClass ConnectionManager
Hierarchy
-
Implements
-
+ Index
Index
Constructors
-Properties
-Methods
-Constructors
-
-Private constructor
-
+Private constructor
+
Parameters
libp2p: Libp2p
libp2p: Libp2p
keepAliveOptions: KeepAliveOptions
keepAliveOptions: KeepAliveOptions
Optional relay: IRelayOptional relay: IRelayOptional options: Partial<ConnectionManagerOptions>Returns ConnectionManager
Optional options: Partial<ConnectionManagerOptions>Returns ConnectionManager
-
Properties
-
-Private current
+Private #private
-
-Private dial
+Private current
-
-Private dial
+Private dial
-
-Private keep
+Private dial
-
-Private libp2p
+Private keep
-
-Private on
    peer:connect: ((evt: CustomEvent<PeerId>) => void);
    peer:disconnect: (() => ((evt: CustomEvent<PeerId>) => void));
    peer:discovery: ((evt: CustomEvent<PeerInfo>) => void);
} = ...
+Private libp2p
+
+Private on
    peer:connect: ((evt) => void);
    peer:disconnect: (() => ((evt) => void));
    peer:discovery: ((evt) => void);
} = ...Type declaration
peer:connect: ((evt: CustomEvent<PeerId>) => void)
+peer:connect: ((evt) => void)
-
+
Parameters
evt: CustomEvent<PeerId>
evt: CustomEvent<PeerId>
Returns void
peer:disconnect: (() => ((evt: CustomEvent<PeerId>) => void))
+peer:disconnect: (() => ((evt) => void))
-
+
Returns ((evt: CustomEvent<PeerId>) => void)
+Returns ((evt) => void)
-
+
Parameters
evt: CustomEvent<PeerId>
evt: CustomEvent<PeerId>
Returns void
peer:discovery: ((evt: CustomEvent<PeerInfo>) => void)
+peer:discovery: ((evt) => void)
-
+
Parameters
evt: CustomEvent<PeerInfo>
evt: CustomEvent<PeerInfo>
Returns void
-
-Private options
+Private options
-
-Private pending
+Private pending
-
-Static Private instances
+Private Static instances
-
Methods
-
-Private attempt
-
add
+
+
Type Parameters
+
+
K extends keyof IPeersByDiscoveryEvents
Parameters
+
+
type: K
listener: null | EventHandler<IPeersByDiscoveryEvents[K]>
Optional options: boolean | AddEventListenerOptionsReturns void
+
+Private attempt
+
Parameters
peerId: PeerId
Returns Promise<void>
peerId: PeerId
Returns Promise<void>
-
-Private dial
-
+Private dial
+
Parameters
peerId: PeerId
Returns Promise<void>
peerId: PeerId
Returns Promise<void>
-
-Private dial
-
+Private dial
+
Returns Promise<void>
Returns Promise<void>
-
-Private drop
-
dispatch
+
+
+Parameters
peerId: PeerId
Returns Promise<void>
event: Event
Returns boolean
-
get
-
-
+Private drop
+
Returns Promise<PeersByDiscoveryResult>
Parameters
+
+
peerId: PeerId
Returns Promise<void>
-
-Private get
-
get
+
+
Returns Promise<PeersByDiscoveryResult>
+
+Private get
+
+Parameters
-peerId: PeerId
Returns Promise<string[]>
peerId: PeerId
Returns Promise<string[]>
+
-
-Private process
-
listener
+
+
Parameters
+
+
type: string
Returns number
+
+Private process
+
Returns void
-
-Private run
-
remove
+
+
Returns Promise<void>
Type Parameters
+
+
K extends keyof IPeersByDiscoveryEvents
Parameters
+
+
type: K
Optional listener: null | EventHandler<IPeersByDiscoveryEvents[K]>Optional options: boolean | EventListenerOptionsReturns void
-
-Private should
-
+Private run
+
Returns Promise<void>
+
safe
+
+
Type Parameters
+
+
Detail
Parameters
+
+
type: keyof IPeersByDiscoveryEvents
detail: CustomEventInit<Detail>
Returns boolean
+
+Private should
+
+
@@ -287,213 +401,127 @@
Parameters
peerId: PeerId
Returns Promise<boolean>
peerId: PeerId
Returns Promise<boolean>
+
-
-Private start
-
+Private start
+
Returns void
-
-Private start
-
+Private start
+
Returns void
-
-Private start
-
+Private start
+
Returns void
-
stop
-
-
stop
+
+
Returns void
-
-Static create
-
+Static create
+
+Parameters
peerId: string
peerId: string
libp2p: Libp2p
libp2p: Libp2p
keepAliveOptions: KeepAliveOptions
keepAliveOptions: KeepAliveOptions
Optional relay: IRelayOptional relay: IRelayOptional options: ConnectionManagerOptionsReturns ConnectionManager
Optional options: ConnectionManagerOptionsReturns ConnectionManager
-
Class DecodedMessage
Implements
-
-
+ Index
Index
Constructors
-Properties
-Accessors
-Constructors
-constructor
-
-
constructor
+
+
Parameters
pubSubTopic: string
pubSubTopic: string
proto: message.version_0.proto.WakuMessage
Returns DecodedMessage
proto: message.version_0.proto.WakuMessage
Returns DecodedMessage
-
Properties
-
-Protected proto
+Protected proto
-
pub
-pub
+
-
Accessors
-_raw
-
+
_raw
+
Returns undefined | bigint
-
content
-
+
content
+
Returns string
-
ephemeral
-
+
ephemeral
+
Returns boolean
-
meta
-
-
meta
+
+
Returns undefined | Uint8Array
Returns undefined | Uint8Array
-
payload
-
-
payload
+
+
Returns Uint8Array
Returns Uint8Array
-
rate
-
-
rate
+
+
Returns undefined | IRateLimitProof
Returns undefined | IRateLimitProof
-
timestamp
-
-
timestamp
+
+
Returns undefined | Date
Returns undefined | Date
-
version
-
+
version
+
Returns number
-
Class Decoder
Implements
-
-
+ Index
Index
Constructors
-Properties
-
+Returns Decoder
-
Properties
-content
-content
+
-
Methods
-from
-
-
from
+
+
Parameters
pubSubTopic: string
pubSubTopic: string
proto: IProtoMessage
Returns Promise<undefined | DecodedMessage>
proto: IProtoMessage
Returns Promise<undefined | DecodedMessage>
-
from
-
-
from
+
+
Parameters
bytes: Uint8Array
Returns Promise<undefined | IProtoMessage>
bytes: Uint8Array
Returns Promise<undefined | IProtoMessage>
-
Class Encoder
Implements
-
-
+ Index
Index
Constructors
-Properties
-Methods
-Constructors
-constructor
-
-
constructor
+
+
Parameters
contentTopic: string
contentTopic: string
ephemeral: boolean = false
ephemeral: boolean = false
Optional metaSetter: IMetaSetterReturns Encoder
Optional metaSetter: IMetaSetterReturns Encoder
-
Properties
-content
-content
+
-
ephemeral
-ephemeral
+
-
-Optional meta
+Optional meta
-
Methods
-to
-
-
to
+
+
Parameters
message: IMessage
Returns Promise<IProtoMessage>
message: IMessage
Returns Promise<IProtoMessage>
-
to
-
-
to
+
+
Parameters
message: IMessage
Returns Promise<Uint8Array>
message: IMessage
Returns Promise<Uint8Array>
-
Class KeepAliveManager
-
-
+ Index
Index
Constructors
-Properties
-Methods
-Constructors
-constructor
-
-
constructor
+
+
Parameters
options: KeepAliveOptions
options: KeepAliveOptions
Optional relay: IRelayReturns KeepAliveManager
Optional relay: IRelayReturns KeepAliveManager
-
Properties
-
-Private options
+Private options
-
-Private ping
+Private ping
-
-Private Optional relay
+Private Optional relay
-
-Private relay
+Private relay
-
Methods
-start
-Returns void
-
stop
-
-
stop
+Returns void
-
stop
-
-
stop
+
+
Returns void
-
Class StreamManager
-
-
+ Index
Index
Constructors
-Properties
-Methods
-Constructors
-constructor
-
-
constructor
+
+
Parameters
multicodec: string
multicodec: string
getConnections: ((peerId?: PeerId) => Connection[])
+getConnections: ((peerId?) => Connection[])
-
+
Example
for (const connection of libp2p.getConnections()) {
console.log(peerId, connection.remoteAddr.toString())
// Logs the PeerId string and the observed remote multiaddr of each Connection
}
-Parameters
Optional peerId: PeerIdReturns Connection[]
Optional peerId: PeerIdReturns Connection[]
+Example
+for (const connection of libp2p.getConnections()) {
console.log(peerId, connection.remoteAddr.toString())
// Logs the PeerId string and the observed remote multiaddr of each Connection
}
+addEventListener: (<K>(type: K, listener: null | EventHandler<Libp2pEvents<Libp2pServices>[K]>, options?: boolean | AddEventListenerOptions) => void)
+addEventListener: (<K>(type, listener, options?) => void)
-
+
Type Parameters
-
+
K extends keyof Libp2pEvents<Libp2pServices>
K extends keyof Libp2pEvents<Libp2pServices>
Parameters
type: K
type: K
listener: null | EventHandler<Libp2pEvents<Libp2pServices>[K]>
listener: null | EventHandler<Libp2pEvents<Libp2pServices>[K]>
Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsReturns void
Returns StreamManager
Returns StreamManager
-
Properties
-add
-add
+Type declaration
-
+
Type Parameters
-
+
K extends keyof Libp2pEvents<Libp2pServices>
K extends keyof Libp2pEvents<Libp2pServices>
Parameters
type: K
type: K
listener: null | EventHandler<Libp2pEvents<Libp2pServices>[K]>
listener: null | EventHandler<Libp2pEvents<Libp2pServices>[K]>
Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsReturns void
-
get
-get
+Type declaration
-
+
Example
for (const connection of libp2p.getConnections()) {
console.log(peerId, connection.remoteAddr.toString())
// Logs the PeerId string and the observed remote multiaddr of each Connection
}
-Parameters
Optional peerId: PeerIdReturns Connection[]
Optional peerId: PeerIdReturns Connection[]
+Example
+for (const connection of libp2p.getConnections()) {
console.log(peerId, connection.remoteAddr.toString())
// Logs the PeerId string and the observed remote multiaddr of each Connection
}
+
-
-Private Readonly log
+Private Readonly log
-
multicodec
-multicodec
+
-
-Private stream
+Private stream
-
Methods
-get
-Returns Promise<Stream>
-
-Private handle
-
+Private handle
+
Parameters
evt: CustomEvent<PeerUpdate>
evt: CustomEvent<PeerUpdate>
Returns void
-
-Private new
-
+Private new
+
+Parameters
peer: Peer
Returns Promise<Stream>
peer: Peer
Returns Promise<Stream>
-
-Private prepare
-
+
Private prepareReturns void
-
Implements
-
-
-
+ Index
Index
Constructors
-Properties
-Methods
-Constructors
-constructor
-
-
constructor
+
+Optional lightPush: ((libp2p: Libp2p) => ILightPush)Optional lightPush: ((libp2p) => ILightPush)
-
+
Parameters
libp2p: Libp2p
Returns ILightPush
libp2p: Libp2p
Returns ILightPush
+Optional filter: ((libp2p: Libp2p) => IFilter)Optional filter: ((libp2p) => IFilter)libp2p: Libp2p
Returns IFilter
+Optional relay: ((libp2p: Libp2p) => IRelay)Optional relay: ((libp2p) => IRelay)Returns waku.WakuNode
libp2p: Libp2p
Returns IRelay
Returns waku.WakuNode
-
Properties
-connection
-connection
+
-
-Optional filter
+Optional filter
-
libp2p
-libp2p
+
-
-Optional light
+Optional light
-
-Optional relay
+Optional relay
-
-Optional store
+Optional store
-
Methods
-dial
-
+Optional protocols: Protocols[]Optional protocols: Protocols[]Returns Promise<Stream>
Returns Promise<Stream>
+
-
get
-
-
get
+
+
Throws
Returns string
Returns string
+Throws
-
is
-
-
is
+
+
Returns boolean
-
start
-
-
start
+stop
-
-
stop
+Class DnsNodeDiscovery
-
-
+ Index
Index
Constructors
-Properties
-Methods
-Constructors
-constructor
-
-
constructor
+
+
Parameters
dns: DnsClient
Returns DnsNodeDiscovery
dns: DnsClient
Returns DnsNodeDiscovery
-
Properties
-
-Private Readonly _DNSTree
    [key: string]: string;
}
+Private Readonly _DNSTree
    [key: string]: string;
}Type declaration
[key: string]: string
[key: string]: string
-
-Private Readonly _error
+Private Readonly _error
-
-Private Readonly dns
+Private Readonly dns
-
Methods
-
-Private _getTXTRecord
-
+Private _getTXTRecord
+
Throws
Parameters
subdomain: string
subdomain: string
context: SearchContext
Returns Promise<string>
context: SearchContext
Returns Promise<string>
+Throws
-
-Private _search
-
+Private _search
+
Parameters
subdomain: string
subdomain: string
context: SearchContext
Returns Promise<null | ENR>
context: SearchContext
Returns Promise<null | ENR>
+
-
get
-
-
get
+
+
Parameters
enrTreeUrls: string[]
enrTreeUrls: string[]
wantedNodeCapabilityCount: Partial<NodeCapabilityCount>
Returns AsyncGenerator<IEnr, any, unknown>
wantedNodeCapabilityCount: Partial<NodeCapabilityCount>
Returns AsyncGenerator<IEnr, any, unknown>
+
-
get
-
-
get
+
+
Link
Parameters
+
+
enrTreeUrls: string[]
wantedNodeCapabilityCount: Partial<NodeCapabilityCount>
Returns Promise<IEnr[]>
+Link
Link
Link
Link
Parameters
-
-
enrTreeUrls: string[]
wantedNodeCapabilityCount: Partial<NodeCapabilityCount>
Returns Promise<IEnr[]>
Link
-
-Static dns
-
+Static dns
+
+Parameters
Optional dnsClient: DnsClientReturns Promise<DnsNodeDiscovery>
Optional dnsClient: DnsClientReturns Promise<DnsNodeDiscovery>
-
Class PeerDiscoveryDns
Hierarchy
-
Implements
-
-
-
+ Index
Index
Constructors
-Properties
-Accessors
-Methods
-Constructors
-constructor
-
-
constructor
+
+
Parameters
components: DnsDiscoveryComponents
components: DnsDiscoveryComponents
options: DnsDiscOptions
Returns PeerDiscoveryDns
options: DnsDiscOptions
Returns PeerDiscoveryDns
-
Properties
-
-Private _components
+Private #private
-
-Private _options
+Private _components
-
-Private _started
+Private _options
-
-Private next
+Private _started
-
+
+Private nextType declaration
+
+
Accessors
-[peer
-
+
[peer
+
Returns true
-
[to
-
+
[to
+
Returns string
-
Methods
-start
-
-
add
+
+
Type Parameters
+
+
K extends "peer"
Parameters
+
+
type: K
listener: null | EventHandler<PeerDiscoveryEvents[K]>
Optional options: boolean | AddEventListenerOptionsReturns void
+
dispatch
+listener
+remove
+
+
Type Parameters
+
+
K extends "peer"
Parameters
+
+
type: K
Optional listener: null | EventHandler<PeerDiscoveryEvents[K]>Optional options: boolean | EventListenerOptionsReturns void
+
safe
+
+
Type Parameters
+
+
Detail
Parameters
+
+
type: "peer"
detail: CustomEventInit<Detail>
Returns boolean
+
start
+
+
Returns Promise<void>
Returns Promise<void>
+
-
stop
-
-
stop
+
+
Returns void
Returns void
+
-
Class ENR
Hierarchy
-
Implements
-
-
-
+ Index
Index
Constructors
-Properties
-Accessors
-Methods
-Constructors
-
-Protected constructor
-
+Protected constructor
+
Parameters
kvs: Record<string, Uint8Array> = {}
kvs: Record<string, Uint8Array> = {}
seq: bigint = ...
seq: bigint = ...
Optional signature: Uint8ArrayReturns ENR
Optional signature: Uint8ArrayReturns ENR
-
Properties
-get
-
+Readonly [to
+
get
+Type declaration
-
+
Parameters
protocol: TransportProtocol | TransportProtocolPerIpVersion
Returns undefined | Multiaddr
protocol: TransportProtocol | TransportProtocolPerIpVersion
Returns undefined | Multiaddr
-
-Optional peer
+Optional peer
-
seq
-seq
+
-
-Optional signature
+Optional signature
-
-Static Readonly RECORD_
+Readonly sizeReturns
-
+Static Readonly RECORD_
+
+Static Readonly [species]
+
Accessors
-id
-
+
id
+
Returns string
-
ip
-
+
ip
+
+Returns undefined | string
-
Parameters
ip: undefined | string
ip: undefined | string
Returns void
-
ip6
-
+
ip6
+
+Returns undefined | string
-
Parameters
ip: undefined | string
ip: undefined | string
Returns void
-
multiaddrs
-
-
multiaddrs
+
+
+multiaddrs field from ENR.ip4 nor ip6 for the host
address (e.g. dns4, dnsaddr, etc)..Returns undefined | Multiaddr[]
Returns undefined | Multiaddr[]
+
-
multiaddrs field on the ENR.ip4 nor ip6 for the host
address (e.g. dns4, dnsaddr, etc)..Parameters
multiaddrs: undefined | Multiaddr[]
Returns void
multiaddrs: undefined | Multiaddr[]
Returns void
+
-
node
-
+
node
+
Returns undefined | string
-
peer
-
-
peer
+
+
Returns undefined | PeerInfo
Returns undefined | PeerInfo
-
public
-
-
public
+
+
Returns undefined | Uint8Array
Returns undefined | Uint8Array
-
tcp
-
+
tcp
+
+Returns undefined | number
-
Parameters
port: undefined | number
port: undefined | number
Returns void
-
tcp6
-
+
tcp6
+
+Returns undefined | number
-
Parameters
port: undefined | number
port: undefined | number
Returns void
-
udp
-
+
udp
+
+Returns undefined | number
-
Parameters
port: undefined | number
port: undefined | number
Returns void
-
udp6
-
+
udp6
+
+Returns undefined | number
-
Parameters
port: undefined | number
port: undefined | number
Returns void
-
waku2
-
-
waku2
+
+
+waku2 field from ENR.Returns undefined | Waku2
Returns undefined | Waku2
+
-
waku2 field on the ENR.
Inherited from RawEnr.waku2
Returns an iterable of entries in the map.
+Implementation of IEnr.[iterator]
+Inherited from RawEnr.[iterator]
Returns an iterable of key, value pairs for every entry in the map.
+Implementation of IEnr.entries
+Inherited from RawEnr.entries
+Executes a provided function once per each key/value pair in the Map, in insertion order.
+Optional thisArg: anyImplementation of IEnr.forEach
+Inherited from RawEnr.forEach
+Returns a specified element from the Map object. If the value that is associated to the provided key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the Map.
+Returns the element associated with the specified key. If no element is associated with the specified key, undefined is returned.
+ +Inherited from RawEnr.get
+Returns the full multiaddr from the ENR fields matching the provided
protocol parameter.
To return full multiaddrs from the multiaddrs ENR field,
-use getFullMultiaddrs.
Returns the full multiaddrs from the multiaddrs ENR field.
Implementation of IEnr.getFullMultiaddrs
+Implementation of IEnr.getFullMultiaddrs
Adds a new element with a specified key and value to the Map. If an element with the same key already exists, the element will be updated.
+Implementation of IEnr.set
+Inherited from RawEnr.set
Static createStatic createOptional signature: Uint8ArrayOptional signature: Uint8ArrayGenerated using TypeDoc
Generated using TypeDoc
Static fromStatic fromStatic fromStatic fromGenerated using TypeDoc
Generated using TypeDoc
Static fromRLPStatic fromRLPStatic fromStatic fromGenerated using TypeDoc
Generated using TypeDoc
Optional signature: Uint8ArrayOptional signature: Uint8ArrayOptional signaturePublicKey: Uint8ArrayOverrides DecodedMessage.constructor
+Optional signaturePublicKey: Uint8ArrayOverrides DecodedMessage.constructor
Private Readonly _decodedPrivate Readonly _decodedProtected protoInherited from DecodedMessage.proto
+Protected protoInherited from DecodedMessage.proto
Implementation of IDecodedMessage.pubSubTopic
-Inherited from DecodedMessage.pubSubTopic
+Implementation of IDecodedMessage.pubSubTopic
+Inherited from DecodedMessage.pubSubTopic
Optional signatureOptional signatureOptional signatureOptional signatureInherited from DecodedMessageV0._rawTimestamp
Implementation of IDecodedMessage.contentTopic
+Implementation of IDecodedMessage.contentTopic
Inherited from DecodedMessageV0.contentTopic
Implementation of IDecodedMessage.ephemeral
+Implementation of IDecodedMessage.ephemeral
Inherited from DecodedMessageV0.ephemeral
Implementation of IDecodedMessage.meta
+Implementation of IDecodedMessage.meta
Inherited from DecodedMessageV0.meta
Implementation of IDecodedMessage.payload
+Implementation of IDecodedMessage.payload
Overrides DecodedMessageV0.payload
Implementation of IDecodedMessage.rateLimitProof
+Implementation of IDecodedMessage.rateLimitProof
Inherited from DecodedMessageV0.rateLimitProof
Implementation of IDecodedMessage.timestamp
+Implementation of IDecodedMessage.timestamp
Inherited from DecodedMessageV0.timestamp
Generated using TypeDoc
Generated using TypeDoc
Overrides Decoder.constructor
+Overrides Decoder.constructor
Implementation of IDecoder.contentTopic
-Inherited from Decoder.contentTopic
+Implementation of IDecoder.contentTopic
+Inherited from Decoder.contentTopic
Private privatePrivate privateImplementation of IDecoder.fromProtoObj
-Overrides Decoder.fromProtoObj
+Implementation of IDecoder.fromProtoObj
+Overrides Decoder.fromProtoObj
Implementation of IDecoder.fromWireToProtoObj
-Inherited from Decoder.fromWireToProtoObj
+Implementation of IDecoder.fromWireToProtoObj
+Inherited from Decoder.fromWireToProtoObj
Generated using TypeDoc
Generated using TypeDoc
Optional sigPrivKey: Uint8ArrayOptional sigPrivKey: Uint8ArrayOptional metaSetter: IMetaSetterOptional metaSetter: IMetaSetterImplementation of IEncoder.contentTopic
+Implementation of IEncoder.contentTopic
Implementation of IEncoder.ephemeral
+Implementation of IEncoder.ephemeral
Optional metaOptional metaPrivate publicPrivate publicPrivate Optional sigPrivate Optional sigImplementation of IEncoder.toProtoObj
+Implementation of IEncoder.toProtoObj
Implementation of IEncoder.toWire
+Implementation of IEncoder.toWire
Generated using TypeDoc
Generated using TypeDoc
Overrides Decoder.constructor
+Overrides Decoder.constructor
Implementation of IDecoder.contentTopic
-Inherited from Decoder.contentTopic
+Implementation of IDecoder.contentTopic
+Inherited from Decoder.contentTopic
Private symPrivate symImplementation of IDecoder.fromProtoObj
-Overrides Decoder.fromProtoObj
+Implementation of IDecoder.fromProtoObj
+Overrides Decoder.fromProtoObj
Implementation of IDecoder.fromWireToProtoObj
-Inherited from Decoder.fromWireToProtoObj
+Implementation of IDecoder.fromWireToProtoObj
+Inherited from Decoder.fromWireToProtoObj
Generated using TypeDoc
Generated using TypeDoc
Optional sigPrivKey: Uint8ArrayOptional sigPrivKey: Uint8ArrayOptional metaSetter: IMetaSetterOptional metaSetter: IMetaSetterImplementation of IEncoder.contentTopic
+Implementation of IEncoder.contentTopic
Implementation of IEncoder.ephemeral
+Implementation of IEncoder.ephemeral
Optional metaOptional metaPrivate Optional sigPrivate Optional sigPrivate symPrivate symImplementation of IEncoder.toProtoObj
+Implementation of IEncoder.toProtoObj
Implementation of IEncoder.toWire
+Implementation of IEncoder.toWire
Generated using TypeDoc
Generated using TypeDoc
Overrides EventEmitter<PeerDiscoveryEvents>.constructor
Private Readonly componentsPrivate #privateImplementation of PeerDiscovery.#private
+Inherited from EventEmitter.#private
Private isPrivate Readonly componentsPrivate Readonly optionsPrivate isPrivate Readonly peerPrivate Readonly optionsPrivate queryPrivate Readonly peerPrivate queryingPrivate queryPrivate queryingPrivate abortPrivate Readonly handleOptional options: boolean | AddEventListenerOptionsImplementation of PeerDiscovery.addEventListener
+Inherited from EventEmitter.addEventListener
+Implementation of PeerDiscovery.dispatchEvent
+Inherited from EventEmitter.dispatchEvent
+Private Readonly handlePrivate queryImplementation of PeerDiscovery.listenerCount
+Inherited from EventEmitter.listenerCount
Private queryOptional listener: null | EventHandler<PeerDiscoveryEvents[K]>Optional options: boolean | EventListenerOptionsImplementation of PeerDiscovery.removeEventListener
+Inherited from EventEmitter.removeEventListener
+Implementation of PeerDiscovery.safeDispatchEvent
+Inherited from EventEmitter.safeDispatchEvent
+Private Readonly startPrivate Readonly startGenerated using TypeDoc
Generated using TypeDoc
Implementation of the Peer Exchange protocol (https://rfc.vac.dev/spec/34/)
-libp2p components
-Overrides BaseProtocol.constructor
Readonly addReadonly addOptional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsImplementation of IPeerExchange.addLibp2pEventListener
+Implementation of IPeerExchange.addLibp2pEventListener
Inherited from BaseProtocol.addLibp2pEventListener
Implementation of IPeerExchange.multicodec
+Implementation of IPeerExchange.multicodec
Inherited from BaseProtocol.multicodec
Readonly removeReadonly removeOptional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional options: boolean | EventListenerOptionsOptional options: boolean | EventListenerOptionsImplementation of IPeerExchange.removeLibp2pEventListener
+Implementation of IPeerExchange.removeLibp2pEventListener
Inherited from BaseProtocol.removeLibp2pEventListener
Protected streamProtected streamInherited from BaseProtocol.streamManager
Implementation of IPeerExchange.peerStore
+Implementation of IPeerExchange.peerStore
Inherited from BaseProtocol.peerStore
Protected getInherited from BaseProtocol.getPeer
Protected getProtected getRetrieves a list of peers based on the specified criteria.
- -A Promise that resolves to an array of peers based on the specified criteria.
Optional __namedParameters: { Optional __namedParameters: { A Promise that resolves to an array of peers based on the specified criteria.
+ +Inherited from BaseProtocol.getPeers
Protected getReturns known peers from the address book (libp2p.peerStore) that support
the class protocol. Waku may or may not be currently connected to these
peers.
Implementation of IPeerExchange.peers
+Implementation of IPeerExchange.peers
Inherited from BaseProtocol.peers
Make a peer exchange query to a peer
Implementation of IPeerExchange.query
+Implementation of IPeerExchange.query
Generated using TypeDoc
Generated using TypeDoc
Protected protoProtected protoImplementation of IDecodedMessage.pubSubTopic
Implementation of IDecodedMessage.contentTopic
Implementation of IDecodedMessage.ephemeral
Implementation of IDecodedMessage.meta
Implementation of IDecodedMessage.payload
Implementation of IDecodedMessage.rateLimitProof
Implementation of IDecodedMessage.timestamp
Generated using TypeDoc
Generated using TypeDoc
Implementation of IDecoder.contentTopic
Implementation of IDecoder.fromProtoObj
+Implementation of IDecoder.fromProtoObj
Implementation of IDecoder.fromWireToProtoObj
+Implementation of IDecoder.fromWireToProtoObj
Generated using TypeDoc
Generated using TypeDoc
Optional ephemeral: booleanOptional ephemeral: booleanOptional metaSetter: IMetaSetterOptional metaSetter: IMetaSetterImplementation of IEncoder.contentTopic
Implementation of IEncoder.ephemeral
Optional metaOptional metaImplementation of IEncoder.toProtoObj
+Implementation of IEncoder.toProtoObj
Implementation of IEncoder.toWire
+Implementation of IEncoder.toWire
Generated using TypeDoc
Generated using TypeDoc
Optional lightPush: ((libp2p: Libp2p) => ILightPush)Optional lightPush: ((libp2p) => ILightPush)Optional filter: ((libp2p: Libp2p) => IFilter)Optional filter: ((libp2p) => IFilter)Optional relay: ((libp2p: Libp2p) => IRelay)Optional relay: ((libp2p) => IRelay)Implementation of Waku.connectionManager
Optional filterOptional filterOptional lightOptional lightImplementation of Waku.lightPush
Optional relayOptional relayOptional storeOptional storeOptional protocols: Protocols[]Optional protocols: Protocols[]Waku protocols we expect from the peer; Defaults to mounted protocols
-Generated using TypeDoc
Generated using TypeDoc
Private constructorPrivate constructorOverrides EventEmitter<IPeersByDiscoveryEvents>.constructor
Private attemptPrivate #privateImplementation of IConnectionManager.#private
+Inherited from EventEmitter.#private
+Private attemptPrivate currentPrivate currentPrivate dialPrivate dialPrivate dialPrivate dialPrivate dialPrivate dialPrivate dialPrivate dialPrivate dropPrivate dropPrivate getPrivate getFetches the tag names for a given peer
-Private keepPrivate keepPrivate libp2pPrivate libp2pPrivate onPrivate onPrivate optionsPrivate optionsPrivate pendingPrivate pendingPrivate processPrivate processPrivate runPrivate runPrivate shouldPrivate shouldChecks if the peer is dialable based on the following conditions:
Private startPrivate startPrivate startPrivate startPrivate startPrivate startStatic Private instancesPrivate Static instancesImplementation of IConnectionManager.getPeersByDiscovery
-Optional options: boolean | AddEventListenerOptionsImplementation of IConnectionManager.stop
+Implementation of IConnectionManager.addEventListener
+Inherited from EventEmitter.addEventListener
Static createImplementation of IConnectionManager.dispatchEvent
+Inherited from EventEmitter.dispatchEvent
+Implementation of IConnectionManager.getPeersByDiscovery
+Implementation of IConnectionManager.listenerCount
+Inherited from EventEmitter.listenerCount
+Optional relay: IRelayOptional options: ConnectionManagerOptionsOptional listener: null | EventHandler<IPeersByDiscoveryEvents[K]>Optional options: boolean | EventListenerOptionsImplementation of IConnectionManager.removeEventListener
+Inherited from EventEmitter.removeEventListener
+Implementation of IConnectionManager.safeDispatchEvent
+Inherited from EventEmitter.safeDispatchEvent
+Implementation of IConnectionManager.stop
+Static createOptional relay: IRelayOptional options: ConnectionManagerOptionsGenerated using TypeDoc
Generated using TypeDoc
Optional relay: IRelayOptional relay: IRelayPrivate optionsPrivate optionsPrivate pingPrivate pingPrivate Optional relayPrivate Optional relayPrivate relayPrivate relayGenerated using TypeDoc
Generated using TypeDoc
Return a list of all connections this node has open, optionally filtering by a PeerId
- -for (const connection of libp2p.getConnections()) {
console.log(peerId, connection.remoteAddr.toString())
// Logs the PeerId string and the observed remote multiaddr of each Connection
}
-
Optional peerId: PeerIdOptional peerId: PeerIdfor (const connection of libp2p.getConnections()) {
console.log(peerId, connection.remoteAddr.toString())
// Logs the PeerId string and the observed remote multiaddr of each Connection
}
+
+Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsReturn a list of all connections this node has open, optionally filtering by a PeerId
- -for (const connection of libp2p.getConnections()) {
console.log(peerId, connection.remoteAddr.toString())
// Logs the PeerId string and the observed remote multiaddr of each Connection
}
-
Optional peerId: PeerIdOptional peerId: PeerIdfor (const connection of libp2p.getConnections()) {
console.log(peerId, connection.remoteAddr.toString())
// Logs the PeerId string and the observed remote multiaddr of each Connection
}
+
+Private handlePrivate handlePrivate Readonly logPrivate Readonly logPrivate newPrivate newPrivate preparePrivate preparePrivate streamPrivate streamGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Failure to protobuf decode the message. May be due to a remote peer issue, ensuring that messages are sent via several peer enable mitigation of this error..
-Failure to protobuf encode the message. This is not recoverable and needs further investigation.
-Could not determine the origin of the fault. Best to check connectivity and try again
-Failure to find a peer with suitable protocols. This may due to a connection issue.
Mitigation can be: retrying after a given time period, display connectivity issue
to user or listening for peer:connected:bootstrap or peer:connected:peer-exchange
on the connection manager before retrying.
The remote peer did not behave as expected. Mitigation for NO_PEER_AVAILABLE
or DECODE_FAILED can be used.
The remote peer rejected the message. Information provided by the remote peer
is logged. Review message validity, or mitigation for NO_PEER_AVAILABLE
or DECODE_FAILED can be used.
The message size is above the maximum message size allowed on the Waku Network. Compressing the message or using an alternative strategy for large messages is recommended.
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Failure to protobuf decode the message. May be due to a remote peer issue, ensuring that messages are sent via several peer enable mitigation of this error..
-Failure to protobuf encode the message. This is not recoverable and needs further investigation.
-Could not determine the origin of the fault. Best to check connectivity and try again
-Failure to find a peer with suitable protocols. This may due to a connection issue.
Mitigation can be: retrying after a given time period, display connectivity issue
to user or listening for peer:connected:bootstrap or peer:connected:peer-exchange
on the connection manager before retrying.
The remote peer did not behave as expected. Mitigation for NO_PEER_AVAILABLE
or DECODE_FAILED can be used.
The remote peer rejected the message. Information provided by the remote peer
is logged. Review message validity, or mitigation for NO_PEER_AVAILABLE
or DECODE_FAILED can be used.
The message size is above the maximum message size allowed on the Waku Network. Compressing the message or using an alternative strategy for large messages is recommended.
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Creates a decoder that decode messages without Waku level encryption.
A decoder is used to decode messages from the 14/WAKU2-MESSAGE format when received from the Waku network. The resulting decoder can then be -pass to @waku/interfaces.Filter.subscribe or -@waku/interfaces.Relay.subscribe to automatically decode incoming +pass to @waku/interfaces!IReceiver.subscribe to automatically decode incoming messages.
The resulting decoder will only decode messages with this content topic.
-Generated using TypeDoc
Generated using TypeDoc
Creates an encoder that encode messages without Waku level encryption or signature.
-An encoder is used to encode messages in the [`14/WAKU2-MESSAGE](https://rfc.vac.dev/spec/14/) +
An encoder is used to encode messages in the 14/WAKU2-MESSAGE format to be sent over the Waku network. The resulting encoder can then be -pass to @waku/interfaces.LightPush.push or -@waku/interfaces.Relay.send to automatically encode outgoing +pass to @waku/interfaces!ISender.send to automatically encode outgoing messages.
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Wait for a remote peer to be ready given the passed protocols. Must be used after attempting to connect to nodes, using -@waku/core.WakuNode.dial or a bootstrap method with -@waku/sdk.createLightNode.
+@waku/core!WakuNode.dial or a bootstrap method with +@waku/sdk!createLightNode.If the passed protocols is a GossipSub protocol, then it resolves only once a peer is in a mesh, to help ensure that other peers will send and receive message to us.
- -A promise that resolves if all desired protocols are fulfilled by -remote nodes, rejects if the timeoutMs is reached.
- -If passing a protocol that is not mounted
- -Wait for remote peers with protocols enabled locally and no time out is applied.
Optional protocols: Protocols[]Optional protocols: Protocols[]The protocols that need to be enabled by remote peers.
-Optional timeoutMs: numberOptional timeoutMs: numberA timeout value in milliseconds..
-A promise that resolves if all desired protocols are fulfilled by +remote nodes, rejects if the timeoutMs is reached.
+ +If passing a protocol that is not mounted
+ +Wait for remote peers with protocols enabled locally and no time out is applied.
+
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
ECDSA Sign a message with the given private key.
- -The signature and the recovery id concatenated.
The message to sign, usually a hash.
-The ECDSA private key to use to sign the message.
-The signature and the recovery id concatenated.
+ +Generated using TypeDoc
Generated using TypeDoc
Verify an ECDSA signature.
Generated using TypeDoc
Generated using TypeDoc
Creates a decoder that decrypts messages using ECIES, using the given private key as defined in 26/WAKU2-PAYLOAD.
A decoder is used to decode messages from the 14/WAKU2-MESSAGE format when received from the Waku network. The resulting decoder can then be -pass to @waku/interfaces.Filter.subscribe or -@waku/interfaces.Relay.subscribe to automatically decrypt and +pass to @waku/interfaces!IReceiver.subscribe to automatically decrypt and decode incoming messages.
The resulting decoder will only decode messages with this content topic.
-The private key used to decrypt the message.
-Generated using TypeDoc
Generated using TypeDoc
Creates an encoder that encrypts messages using ECIES for the given public, as defined in 26/WAKU2-PAYLOAD.
An encoder is used to encode messages in the [`14/WAKU2-MESSAGE](https://rfc.vac.dev/spec/14/) format to be sent over the Waku network. The resulting encoder can then be -pass to @waku/interfaces.LightPush.push or -@waku/interfaces.Relay.send to automatically encrypt +pass to @waku/interfaces!ISender.send or +@waku/interfaces!ISender.send to automatically encrypt and encode outgoing messages. The payload can optionally be signed with the given private key as defined in 26/WAKU2-PAYLOAD.
@@ -35,141 +35,39 @@ in 26/WAKU2-PAYLOAD.Generated using TypeDoc
Generated using TypeDoc
Generate a new private key to be used for asymmetric encryption.
-Use getPublicKey to get the corresponding Public Key.
+Use getPublicKey to get the corresponding Public Key.
Generated using TypeDoc
Generated using TypeDoc
Generate a new symmetric key to be used for symmetric encryption.
Generated using TypeDoc
Generated using TypeDoc
Return the public key for the given private key, to be used for asymmetric encryption.
@@ -27,142 +27,41 @@ encryption.Optional isCompressed: booleanOptional isCompressed: booleanGenerated using TypeDoc
Generated using TypeDoc
Creates a decoder that decrypts messages using symmetric encryption, using the given key as defined in 26/WAKU2-PAYLOAD.
A decoder is used to decode messages from the 14/WAKU2-MESSAGE format when received from the Waku network. The resulting decoder can then be -pass to @waku/interfaces.Filter.subscribe or -@waku/interfaces.Relay.subscribe to automatically decrypt and +pass to @waku/interfaces!IReceiver.subscribe to automatically decrypt and decode incoming messages.
The resulting decoder will only decode messages with this content topic.
-The symmetric key used to decrypt the message.
-Generated using TypeDoc
Generated using TypeDoc
Creates an encoder that encrypts messages using symmetric encryption for the given key, as defined in 26/WAKU2-PAYLOAD.
An encoder is used to encode messages in the [`14/WAKU2-MESSAGE](https://rfc.vac.dev/spec/14/) format to be sent over the Waku network. The resulting encoder can then be -pass to @waku/interfaces.LightPush.push or -@waku/interfaces.Relay.send to automatically encrypt +pass to @waku/interfaces!ISender.send to automatically encrypt and encode outgoing messages.
The payload can optionally be signed with the given private key as defined in 26/WAKU2-PAYLOAD.
@@ -35,140 +34,39 @@ in 26/WAKU2-PAYLOAD.Generated using TypeDoc
Generated using TypeDoc
Deterministic Message Hashing as defined in 14/WAKU2-MESSAGE
@@ -27,136 +27,41 @@Generated using TypeDoc
Generated using TypeDoc
A function that creates a new peer exchange protocol
-A function that creates a new peer exchange protocol
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Decode byte array to utf-8 string.
Generated using TypeDoc
Generated using TypeDoc
Creates a decoder that decode messages without Waku level encryption.
A decoder is used to decode messages from the 14/WAKU2-MESSAGE format when received from the Waku network. The resulting decoder can then be -pass to @waku/interfaces.Filter.subscribe or -@waku/interfaces.Relay.subscribe to automatically decode incoming +pass to @waku/interfaces!IReceiver.subscribe to automatically decode incoming messages.
The resulting decoder will only decode messages with this content topic.
-Generated using TypeDoc
Generated using TypeDoc
Creates an encoder that encode messages without Waku level encryption or signature.
-An encoder is used to encode messages in the [`14/WAKU2-MESSAGE](https://rfc.vac.dev/spec/14/) +
An encoder is used to encode messages in the 14/WAKU2-MESSAGE format to be sent over the Waku network. The resulting encoder can then be -pass to @waku/interfaces.LightPush.push or -@waku/interfaces.Relay.send to automatically encode outgoing +pass to @waku/interfaces!ISender.send to automatically encode outgoing messages.
Generated using TypeDoc
Generated using TypeDoc
Internal
+Create a Waku node that uses all Waku protocols.
+This helper is not recommended except if:
+If you are building a full node, it is recommended to use +nwaku and its JSON RPC API or wip REST API.
+Optional options: ProtocolCreateOptions & waku.waku.WakuOptions & Partial<relay.RelayCreateOptions>Generated using TypeDoc
Create a Waku node that uses Waku Light Push, Filter and Store to send and receive messages, enabling low resource consumption. @@ -28,209 +28,39 @@ Uses Waku Filter V2 by default.
Optional options: ProtocolCreateOptions & waku.waku.WakuOptionsOptional options: ProtocolCreateOptions & waku.waku.WakuOptionsGenerated using TypeDoc
Generated using TypeDoc
Create a Waku node that uses Waku Relay to send and receive messages, enabling some privacy preserving properties.
@@ -27,209 +27,39 @@ enabling some privacy preserving properties.Optional options: ProtocolCreateOptions & waku.waku.WakuOptions & Partial<relay.RelayCreateOptions>Optional options: ProtocolCreateOptions & waku.waku.WakuOptions & Partial<relay.RelayCreateOptions>Generated using TypeDoc
Generated using TypeDoc
Optional wakuGossipSub: ((components: Components) => GossipSub)Optional wakuGossipSub: ((components) => GossipSub)Optional options: Partial<Libp2pOptions>Optional options: Partial<Libp2pOptions>Optional userAgent: stringOptional userAgent: stringGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional init: Partial<relay.RelayCreateOptions>Optional init: Partial<relay.RelayCreateOptions>Generated using TypeDoc
Generated using TypeDoc
Optional init: Partial<ProtocolCreateOptions>Optional init: Partial<ProtocolCreateOptions>Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Function that transforms IReceiver subscription to iterable stream of data.
- -iterator and stop function to terminate it.
object that allows to be subscribed to;
-parameter to be passed to receiver for subscription;
-Optional iteratorOptions: utils.IteratorOptionsOptional iteratorOptions: utils.IteratorOptionsoptional configuration for iterator;
-iterator and stop function to terminate it.
+ +Generated using TypeDoc
Generated using TypeDoc
Wait for a remote peer to be ready given the passed protocols. Must be used after attempting to connect to nodes, using -@waku/core.WakuNode.dial or a bootstrap method with -@waku/sdk.createLightNode.
+@waku/core!WakuNode.dial or a bootstrap method with +@waku/sdk!createLightNode.If the passed protocols is a GossipSub protocol, then it resolves only once a peer is in a mesh, to help ensure that other peers will send and receive message to us.
- -A promise that resolves if all desired protocols are fulfilled by -remote nodes, rejects if the timeoutMs is reached.
- -If passing a protocol that is not mounted
- -Wait for remote peers with protocols enabled locally and no time out is applied.
Optional protocols: Protocols[]Optional protocols: Protocols[]The protocols that need to be enabled by remote peers.
-Optional timeoutMs: numberOptional timeoutMs: numberA timeout value in milliseconds..
-A promise that resolves if all desired protocols are fulfilled by +remote nodes, rejects if the timeoutMs is reached.
+ +If passing a protocol that is not mounted
+ +Wait for remote peers with protocols enabled locally and no time out is applied.
+
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional init: Partial<ProtocolCreateOptions>Optional init: Partial<ProtocolCreateOptions>Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional init: Partial<ProtocolCreateOptions>Optional init: Partial<ProtocolCreateOptions>Generated using TypeDoc
Generated using TypeDoc
Optional pubsubTopic: stringOptional pubsubTopic: stringGenerated using TypeDoc
Generated using TypeDoc
Optional init: Partial<ProtocolCreateOptions>Optional init: Partial<ProtocolCreateOptions>Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Function that transforms IReceiver subscription to iterable stream of data.
- -iterator and stop function to terminate it.
object that allows to be subscribed to;
-parameter to be passed to receiver for subscription;
-Optional iteratorOptions: IteratorOptionsOptional iteratorOptions: IteratorOptionsoptional configuration for iterator;
-iterator and stop function to terminate it.
+ +Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
- - -A TypeScript implementation of the Waku v2 protocol.
+master branch)API Documentation can also be generated locally:
git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
-
-
-
- If you encounter any bug or would like to propose new features, feel free to open an issue.
+ +If you encounter any bug or would like to propose new features, feel free to open an issue.
For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
- - -You can track progress on the project board.
- - -See CONTRIBUTING.md.
- - -Licensed and distributed under either of
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
at your option. These files may not be copied, modified, or distributed except according to those terms.
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pingOptional pingSet keep alive frequency in seconds: Waku will send a /ipfs/ping/1.0.0
request to each peer after the set number of seconds. Set to 0 to disable.
{@link @waku/core.DefaultPingKeepAliveValueSecs}
+
Optional relayOptional relaySet keep alive frequency in seconds: Waku will send a ping message over relay to each peer after the set number of seconds. Set to 0 to disable.
- -{@link @waku/core.DefaultRelayKeepAliveValueSecs}
+
Optional userOptional userSet the user agent string to be used in identification of the node.
- -{@link @waku/core.DefaultUserAgent}
+
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional cursorOptional cursorCursor as an index to start a query from. The cursor index will be exclusive (i.e. the message at the cursor index will not be included in the result). If undefined, the query will start from the beginning or end of the history, depending on the page direction.
-Optional pageOptional pageThe direction in which pages are retrieved:
Note: This does not affect the ordering of messages with the page (the oldest message is always first).
- -{ @link PageDirection.BACKWARD }
+
Optional pageOptional page{ @link DefaultPageSize }
+
Optional timeOptional timeRetrieve messages with a timestamp within the provided values.
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Max number of bootstrap peers allowed to be connected to, initially This is used to increase intention of dialing non-bootstrap peers, found using other discovery mechanisms (like Peer Exchange)
-Number of attempts before a peer is considered non-dialable This is used to not spam a peer with dial attempts when it is not dialable
-Max number of parallel dials allowed
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
ENR URL to use for DNS discovery
-Optional tagOptional tagTag a bootstrap peer with this name before "discovering" it (default: 'bootstrap')
-Optional tagTTLOptional tagTTLCause the bootstrap peer tag to be removed after this number of ms (default: 2 minutes)
-Optional tagOptional tagThe bootstrap peer tag will have this value (default: 50)
-Specifies what type of nodes are wanted from the discovery process
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
The content topic to set on outgoing messages.
-Optional ephemeralOptional ephemeralAn optional flag to mark message as ephemeral, i.e., not to be stored by Waku Store nodes.
- -false
false
Optional metaOptional metaA function called when encoding messages to set the meta field.
- -The message encoded for wire, without the meta field. +
The message encoded for wire, without the meta field.
If encryption is used, metaSetter only accesses encrypted payload.
Generated using TypeDoc
Generated using TypeDoc
Inherited from Waku.connectionManager
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsOptional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional options: boolean | EventListenerOptionsOptional options: boolean | EventListenerOptionsGenerated using TypeDoc
Generated using TypeDoc
Private #privateInherited from EventEmitter.#private
Optional options: boolean | AddEventListenerOptionsInherited from EventEmitter.addEventListener
+Optional listener: null | EventHandler<IPeersByDiscoveryEvents[K]>Optional options: boolean | EventListenerOptionsInherited from EventEmitter.removeEventListener
+Inherited from EventEmitter.safeDispatchEvent
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Readonly [toInherited from Map.[toStringTag]
Optional ipOptional ip6Optional ipOptional multiaddrsOptional ip6Optional nodeOptional multiaddrsOptional peerOptional nodeOptional peerOptional publicOptional publicOptional signatureOptional tcpOptional signatureOptional tcp6Readonly sizethe number of elements in the Map.
+Inherited from Map.size
Optional udpOptional tcpOptional udp6Optional tcp6Optional waku2Optional udpOptional udp6Optional waku2@deprecated: use peerInfo instead.
+Returns an iterable of entries in the map.
Inherited from Map.[iterator]
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Interface for messages to encode and send.
-Optional rateOptional rateOptional timestampOptional timestampGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsInherited from IBaseProtocol.addLibp2pEventListener
Inherited from IBaseProtocol.multicodec
Inherited from IBaseProtocol.peerStore
Inherited from IBaseProtocol.peers
Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional options: boolean | EventListenerOptionsOptional options: boolean | EventListenerOptionsInherited from IBaseProtocol.removeLibp2pEventListener
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Interface matching the protobuf library. Field types matches the protobuf type over the wire
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Interface representing the Relay API, providing control and information about the GossipSub protocol.
- -The GossipSub instance used for managing pub/sub behavior.
- -Function to start the relay, returning a Promise that resolves when initialization is complete.
- -Function to retrieve the mesh peers for a given topic or all topics if none is specified. Returns an array of peer IDs as strings.
-Function to retrieve the mesh peers for a given topic or all topics if none is specified. Returns an array of peer IDs as strings.
+Optional topic: stringOptional topic: stringReadonly gossipReadonly gossipThe GossipSub instance used for managing pub/sub behavior.
+Function to start the relay, returning a Promise that resolves when initialization is complete.
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsInherited from IBaseProtocol.addLibp2pEventListener
Inherited from IBaseProtocol.multicodec
Inherited from IBaseProtocol.peerStore
Inherited from IBaseProtocol.peers
Optional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional options: boolean | EventListenerOptionsOptional options: boolean | EventListenerOptionsInherited from IBaseProtocol.removeLibp2pEventListener
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Inherited from Waku.connectionManager
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional peerOptional peerGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional ENROptional ENRGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Inherited from Waku.connectionManager
Generated using TypeDoc
Generated using TypeDoc
Optional errorsOptional errorsGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional filterOptional filterOptional lightOptional lightOptional relayOptional relayOptional storeOptional storeGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
The content topic to set on outgoing messages.
-Inherited from EncoderOptions.contentTopic
+Inherited from EncoderOptions.contentTopic
Optional ephemeralOptional ephemeralAn optional flag to mark message as ephemeral, i.e., not to be stored by Waku Store nodes.
- -false
false
Inherited from EncoderOptions.ephemeral
+Inherited from EncoderOptions.ephemeral
Optional metaOptional metaA function called when encoding messages to set the meta field.
- -The message encoded for wire, without the meta field. +
The message encoded for wire, without the meta field.
If encryption is used, metaSetter only accesses encrypted payload.
Inherited from EncoderOptions.metaSetter
+Inherited from EncoderOptions.metaSetter
The public key to encrypt the payload for.
-Optional sigOptional sigAn optional private key to be used to sign the payload before encryption.
-Generated using TypeDoc
Generated using TypeDoc
The content topic to set on outgoing messages.
-Inherited from EncoderOptions.contentTopic
+Inherited from EncoderOptions.contentTopic
Optional ephemeralOptional ephemeralAn optional flag to mark message as ephemeral, i.e., not to be stored by Waku Store nodes.
- -false
false
Inherited from EncoderOptions.ephemeral
+Inherited from EncoderOptions.ephemeral
Optional metaOptional metaA function called when encoding messages to set the meta field.
- -The message encoded for wire, without the meta field. +
The message encoded for wire, without the meta field.
If encryption is used, metaSetter only accesses encrypted payload.
Inherited from EncoderOptions.metaSetter
+Inherited from EncoderOptions.metaSetter
Optional sigOptional sigAn optional private key to be used to sign the payload before encryption.
-The symmetric key to encrypt the payload with.
-Generated using TypeDoc
Generated using TypeDoc
Optional queryOptional queryThe interval between queries to a peer (default: 10 seconds) The interval will increase by a factor of an incrementing number (starting at 1) until it reaches the maximum attempts before backoff
-Optional tagOptional tagTag a bootstrap peer with this name before "discovering" it (default: 'bootstrap')
-Optional tagTTLOptional tagTTLCause the bootstrap peer tag to be removed after this number of ms (default: 2 minutes)
-Optional tagOptional tagThe bootstrap peer tag will have this value (default: 50)
-Generated using TypeDoc
Generated using TypeDoc
Optional ephemeralOptional ephemeralOptional metaOptional metaOptional rateOptional rateOptional timestampOptional timestampOptional versionOptional versionGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pushOptional pushOptional requestOptional requestGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pubsubOptional pubsubGenerated using TypeDoc
Generated using TypeDoc
Optional statusOptional statusGenerated using TypeDoc
Generated using TypeDoc
Optional pubsubOptional pubsubOptional wakuOptional wakuGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional ephemeralOptional ephemeralOptional metaOptional metaOptional rateOptional rateOptional timestampOptional timestampOptional versionOptional versionGenerated using TypeDoc
Generated using TypeDoc
Optional messageOptional messageGenerated using TypeDoc
Generated using TypeDoc
Optional infoOptional infoGenerated using TypeDoc
Generated using TypeDoc
Optional requestOptional requestOptional responseOptional responseGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional ephemeralOptional ephemeralOptional metaOptional metaOptional rateOptional rateOptional timestampOptional timestampOptional versionOptional versionGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional ephemeralOptional ephemeralOptional metaOptional metaOptional rateOptional rateOptional timestampOptional timestampOptional versionOptional versionGenerated using TypeDoc
Generated using TypeDoc
Optional numOptional numGenerated using TypeDoc
Generated using TypeDoc
Optional queryOptional queryOptional responseOptional responseGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional enrOptional enrGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional endOptional endOptional pagingOptional pagingOptional pubsubOptional pubsubOptional startOptional startGenerated using TypeDoc
Generated using TypeDoc
Optional pagingOptional pagingGenerated using TypeDoc
Generated using TypeDoc
Optional queryOptional queryOptional responseOptional responseGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional cursorOptional cursorOptional directionOptional directionOptional pageOptional pageGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional ephemeralOptional ephemeralOptional metaOptional metaOptional rateOptional rateOptional timestampOptional timestampOptional versionOptional versionGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Max number of bootstrap peers allowed to be connected to, initially This is used to increase intention of dialing non-bootstrap peers, found using other discovery mechanisms (like Peer Exchange)
-Number of attempts before a peer is considered non-dialable This is used to not spam a peer with dial attempts when it is not dialable
-Max number of parallel dials allowed
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional tagOptional tagTag a bootstrap peer with this name before "discovering" it (default: 'bootstrap')
-Optional tagTTLOptional tagTTLCause the bootstrap peer tag to be removed after this number of ms (default: 2 minutes)
-Optional tagOptional tagThe bootstrap peer tag will have this value (default: 50)
-Specifies what type of nodes are wanted from the discovery process
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional ephemeralOptional ephemeralAn optional flag to mark message as ephemeral, i.e., not to be stored by Waku Store nodes.
- -false
false
Optional metaOptional metaA function called when encoding messages to set the meta field.
- -The message encoded for wire, without the meta field. +
The message encoded for wire, without the meta field.
If encryption is used, metaSetter only accesses encrypted payload.
Generated using TypeDoc
Generated using TypeDoc
Inherited from Waku.connectionManager
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsOptional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional options: boolean | EventListenerOptionsOptional options: boolean | EventListenerOptionsGenerated using TypeDoc
Generated using TypeDoc
Private #privateInherited from EventEmitter.#private
+Optional options: boolean | AddEventListenerOptionsInherited from EventEmitter.addEventListener
+Optional listener: null | EventHandler<IPeersByDiscoveryEvents[K]>Optional options: boolean | EventListenerOptionsInherited from EventEmitter.removeEventListener
+Inherited from EventEmitter.safeDispatchEvent
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Readonly [toInherited from Map.[toStringTag]
+Optional ipOptional ipOptional ip6Optional ip6Optional multiaddrsOptional multiaddrsOptional nodeOptional nodeOptional peerOptional peerOptional publicOptional publicOptional signatureOptional signatureOptional tcpReadonly sizethe number of elements in the Map.
+Inherited from Map.size
+Optional tcpOptional tcp6Optional tcp6Optional udpOptional udpOptional udp6Optional udp6Optional waku2Optional waku2@deprecated: use peerInfo instead.
+Returns an iterable of entries in the map.
Inherited from Map.[iterator]
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Interface for messages to encode and send.
-Optional rateOptional rateOptional timestampOptional timestampGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsInherited from IBaseProtocol.addLibp2pEventListener
Inherited from IBaseProtocol.multicodec
Inherited from IBaseProtocol.peerStore
Inherited from IBaseProtocol.peers
Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional options: boolean | EventListenerOptionsOptional options: boolean | EventListenerOptionsInherited from IBaseProtocol.removeLibp2pEventListener
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Interface matching the protobuf library. Field types matches the protobuf type over the wire
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Interface representing the Relay API, providing control and information about the GossipSub protocol.
- -The GossipSub instance used for managing pub/sub behavior.
- -Function to start the relay, returning a Promise that resolves when initialization is complete.
- -Function to retrieve the mesh peers for a given topic or all topics if none is specified. Returns an array of peer IDs as strings.
-Function to retrieve the mesh peers for a given topic or all topics if none is specified. Returns an array of peer IDs as strings.
+Optional topic: stringOptional topic: stringReadonly gossipReadonly gossipThe GossipSub instance used for managing pub/sub behavior.
+Function to start the relay, returning a Promise that resolves when initialization is complete.
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional options: boolean | AddEventListenerOptionsOptional options: boolean | AddEventListenerOptionsInherited from IBaseProtocol.addLibp2pEventListener
Inherited from IBaseProtocol.multicodec
Inherited from IBaseProtocol.peerStore
Inherited from IBaseProtocol.peers
Optional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional options: StoreQueryOptionsOptional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional listener: null | EventHandler<Libp2pEvents<ServiceMap>[K]>Optional options: boolean | EventListenerOptionsOptional options: boolean | EventListenerOptionsInherited from IBaseProtocol.removeLibp2pEventListener
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Inherited from Waku.connectionManager
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Inherited from Waku.connectionManager
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional filterOptional filterOptional lightOptional lightOptional relayOptional relayOptional storeOptional storeGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Core components of js-waku, a TypeScript implementation of the Waku v2 protocol.
- - -Core components of js-waku, a TypeScript implementation of the Waku v2 protocol.
+master branch)API Documentation can also be generated locally:
git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
-
-
-
- Release changelog can be found in CHANGELOG.md.
- - -If you encounter any bug or would like to propose new features, feel free to open an issue.
+ +Release changelog can be found in CHANGELOG.md.
+If you encounter any bug or would like to propose new features, feel free to open an issue.
For general discussion, get help or latest news, join #js-waku on Vac Discord or the Waku Telegram Group.
- - -You can track progress on the project board.
- - -See CONTRIBUTING.md.
- - -Licensed and distributed under either of
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
at your option. These files may not be copied, modified, or distributed except according to those terms.
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
+API Documentation can also be generated locally:
+git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
+
+If you encounter any bug or would like to propose new features, feel free to open an issue.
+For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
or
+at your option. These files may not be copied, modified, or distributed except according to those terms.
+Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
+API Documentation can also be generated locally:
+git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
+
+If you encounter any bug or would like to propose new features, feel free to open an issue.
+For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
or
+at your option. These files may not be copied, modified, or distributed except according to those terms.
+Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
+API Documentation can also be generated locally:
+git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
+
+If you encounter any bug or would like to propose new features, feel free to open an issue.
+For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
or
+at your option. These files may not be copied, modified, or distributed except according to those terms.
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
@waku/message-encryptionProvide Waku Message Version 1 payload encryption as defined in 26/WAKU2-PAYLOAD.
- - -Symmetric encryption uses a unique key to encrypt and decrypt messages.
-import {
createDecoder,
createEncoder,
generateSymmetricKey
} from "@waku/message-encryption/symmetric";
// Generate a random key
const key = generateSymmetricKey();
// To send messages, create an encoder
const encoder = createEncoder(contentTopic, key);
// For example
waku.lightPush.push(encoder, { payload });
// To receive messages, create a decoder
const decoder = createDecoder(contentTopic, key);
// For example
await waku.store.queryOrderedCallback([decoder], (msg) => {
// ...
});
-
-
-
- ECIES encryption enables encryption for a public key and decryption using a private key.
-import {
createDecoder,
createEncoder,
generatePrivateKey,
getPublicKey
} from "@waku/message-encryption/ecies";
// Generate a random private key
const privateKey = generatePrivateKey();
// Keep the private key secure, provide the public key to the sender
const publicKey = getPublicKey(privateKey);
// To send messages, create an encoder
const encoder = createEncoder(contentTopic, publicKey);
// For example
waku.lightPush.push(encoder, { payload });
// To receive messages, create a decoder
const decoder = createDecoder(contentTopic, privateKey);
// For example
await waku.store.queryOrderedCallback([decoder], (msg) => {
// ...
});
-
-@waku/message-encryptionProvide Waku Message Version 1 payload encryption as defined in 26/WAKU2-PAYLOAD.
+Symmetric encryption uses a unique key to encrypt and decrypt messages.
+import {
createDecoder,
createEncoder,
generateSymmetricKey
} from "@waku/message-encryption/symmetric";
// Generate a random key
const key = generateSymmetricKey();
// To send messages, create an encoder
const encoder = createEncoder(contentTopic, key);
// For example
waku.lightPush.push(encoder, { payload });
// To receive messages, create a decoder
const decoder = createDecoder(contentTopic, key);
// For example
await waku.store.queryOrderedCallback([decoder], (msg) => {
// ...
});
+
+ECIES encryption enables encryption for a public key and decryption using a private key.
+import {
createDecoder,
createEncoder,
generatePrivateKey,
getPublicKey
} from "@waku/message-encryption/ecies";
// Generate a random private key
const privateKey = generatePrivateKey();
// Keep the private key secure, provide the public key to the sender
const publicKey = getPublicKey(privateKey);
// To send messages, create an encoder
const encoder = createEncoder(contentTopic, publicKey);
// For example
waku.lightPush.push(encoder, { payload });
// To receive messages, create a decoder
const decoder = createDecoder(contentTopic, privateKey);
// For example
await waku.store.queryOrderedCallback([decoder], (msg) => {
// ...
});
+
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
TypeScript implementation of the Deterministic Message Hashing as specified in 14/WAKU2-MESSAGE.
+TypeScript implementation of the Deterministic Message Hashing as specified in 14/WAKU2-MESSAGE.
See JS-Waku README for more information.
- - -See CONTRIBUTING.md.
- - -Licensed and distributed under either of
+See CONTRIBUTING.md.
+Licensed and distributed under either of
at your option. These files may not be copied, modified, or distributed except according to those terms.
-Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
+API Documentation can also be generated locally:
+git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
+
+If you encounter any bug or would like to propose new features, feel free to open an issue.
+For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
or
+at your option. These files may not be copied, modified, or distributed except according to those terms.
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
+API Documentation can also be generated locally:
+git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
+
+If you encounter any bug or would like to propose new features, feel free to open an issue.
+For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
or
+at your option. These files may not be copied, modified, or distributed except according to those terms.
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
+API Documentation can also be generated locally:
+git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
+
+If you encounter any bug or would like to propose new features, feel free to open an issue.
+For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
or
+at your option. These files may not be copied, modified, or distributed except according to those terms.
+Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
+API Documentation can also be generated locally:
+git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
+
+If you encounter any bug or would like to propose new features, feel free to open an issue.
+For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
or
+at your option. These files may not be copied, modified, or distributed except according to those terms.
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
A TypeScript implementation of the Waku v2 protocol.
+API Documentation can also be generated locally:
+git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
+
+If you encounter any bug or would like to propose new features, feel free to open an issue.
+For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
+You can track progress on the project board.
+See CONTRIBUTING.md.
+Licensed and distributed under either of
or
+at your option. These files may not be copied, modified, or distributed except according to those terms.
+Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pubSubTopic: stringOptional peerId: PeerIdGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pubsub?: GossipSubOptional pubsub?: GossipSubGenerated using TypeDoc
Generated using TypeDoc
We represent NodeId as a hex string, since node equality is used very heavily and it is convenient to index data by NodeId
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional defaultOptional defaultUse recommended bootstrap method to discovery and connect to new nodes.
-Optional libp2p?: Partial<Libp2pOptions>You can pass options to the Libp2p instance used by @waku/core.WakuNode using the libp2p property.
+
Optional libp2p?: Partial<Libp2pOptions>You can pass options to the Libp2p instance used by @waku/core!WakuNode using the libp2p property.
This property is the same type as the one passed to Libp2p.create
apart that we made the modules property optional and partial,
allowing its omission and letting Waku set good defaults.
-Notes that some values are overridden by @waku/core.WakuNode to ensure it implements the Waku protocol.
Optional pubThe PubSub Topic to use. Defaults to @waku/core.DefaultPubSubTopic.
+Optional pubThe PubSub Topic to use. Defaults to @waku/core!DefaultPubSubTopic.
One and only one pubsub topic is used by Waku. This is used by:
Optional staticOptional staticByte array used as key for the noise protocol used for connection encryption
by Libp2p.create
This is only used for test purposes to not run out of entropy during CI runs.
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pageOptional pageThe direction in which pages are retrieved:
Note: This does not affect the ordering of messages with the page (the oldest message is always first).
- -{ @link PageDirection.BACKWARD }
+
Optional pageOptional pageThe number of message per page.
-Optional timeOptional timeRetrieve messages with a timestamp within the provided values.
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pubSubTopic: stringOptional peerId: PeerIdGenerated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pubsub?: GossipSubOptional pubsub?: GossipSubGenerated using TypeDoc
Generated using TypeDoc
We represent NodeId as a hex string, since node equality is used very heavily and it is convenient to index data by NodeId
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional defaultOptional defaultUse recommended bootstrap method to discovery and connect to new nodes.
-Optional libp2p?: Partial<Libp2pOptions>You can pass options to the Libp2p instance used by @waku/core.WakuNode using the libp2p property.
+
Optional libp2p?: Partial<Libp2pOptions>You can pass options to the Libp2p instance used by @waku/core!WakuNode using the libp2p property.
This property is the same type as the one passed to Libp2p.create
apart that we made the modules property optional and partial,
allowing its omission and letting Waku set good defaults.
-Notes that some values are overridden by @waku/core.WakuNode to ensure it implements the Waku protocol.
Optional pubThe PubSub Topic to use. Defaults to @waku/core.DefaultPubSubTopic.
+Optional pubThe PubSub Topic to use. Defaults to @waku/core!DefaultPubSubTopic.
One and only one pubsub topic is used by Waku. This is used by:
The usage of the default pubsub topic is recommended. See Waku v2 Topic Usage Recommendations for details.
-Optional staticOptional staticByte array used as key for the noise protocol used for connection encryption
by Libp2p.create
This is only used for test purposes to not run out of entropy during CI runs.
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Optional pageOptional pageThe direction in which pages are retrieved:
Note: This does not affect the ordering of messages with the page (the oldest message is always first).
- -{ @link PageDirection.BACKWARD }
+
Optional pageOptional pageThe number of message per page.
-Optional timeOptional timeRetrieve messages with a timestamp within the provided values.
-Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Generated using TypeDoc
Options for configuring the behavior of an iterator.
- -Optional timeout in milliseconds. If specified, the iterator will terminate after this time period.
- -Optional delay in milliseconds between each iteration. Can be used to control the rate of iteration.
Optional iteratorOptional iteratorOptional timeoutOptional timeoutGenerated using TypeDoc
Generated using TypeDoc
Options for configuring the behavior of an iterator.
- -Optional timeout in milliseconds. If specified, the iterator will terminate after this time period.
- -Optional delay in milliseconds between each iteration. Can be used to control the rate of iteration.
Optional iteratorOptional iteratorOptional timeoutOptional timeoutGenerated using TypeDoc
Generated using TypeDoc
Const DefaultPubSubTopic is the default gossipsub topic to use for Waku.
-Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const DefaultPubSubTopic is the default gossipsub topic to use for Waku.
-Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Const Generated using TypeDoc
Generated using TypeDoc
Fetches the tag names for a given peer