MaxMessageSizeuint32`toml:",omitempty"`// Maximal message length allowed by the waku node
Hoststring`toml:",omitempty"`
Portint`toml:",omitempty"`
EnablePeerExchangeServerbool`toml:",omitempty"`// PeerExchange server makes sense only when discv5 is running locally as it will have a cache of peers that it can respond to in case a PeerExchange request comes from the PeerExchangeClient
EnablePeerExchangeClientbool`toml:",omitempty"`
KeepAliveIntervalint`toml:",omitempty"`
MinPeersForRelayint`toml:",omitempty"`// Indicates the minimum number of peers required for using Relay Protocol
MinPeersForFilterint`toml:",omitempty"`// Indicates the minimum number of peers required for using Filter Protocol
LightClientbool`toml:",omitempty"`// Indicates if the node is a light client
WakuNodes[]string`toml:",omitempty"`
Rendezvousbool`toml:",omitempty"`
DiscV5BootstrapNodes[]string`toml:",omitempty"`
Nameserverstring`toml:",omitempty"`// Optional nameserver to use for dns discovery
Resolverethdisc.Resolver`toml:",omitempty"`// Optional resolver to use for dns discovery
EnableDiscV5bool`toml:",omitempty"`// Indicates whether discv5 is enabled or not
DiscoveryLimitint`toml:",omitempty"`// Indicates the number of nodes to discover with peer exchange client
AutoUpdatebool`toml:",omitempty"`
UDPPortint`toml:",omitempty"`
EnableStorebool`toml:",omitempty"`
StoreCapacityint`toml:",omitempty"`
StoreSecondsint`toml:",omitempty"`
TelemetryServerURLstring`toml:",omitempty"`
DefaultShardPubsubTopicstring`toml:",omitempty"`// Pubsub topic to be used by default for messages that do not have a topic assigned (depending whether sharding is used or not)
returnerrors.New("bad configuration for a light client: either peer exchange server or discv5 must be disabled, and the peer exchange client must be enabled")