package p2p import ( "source.quilibrium.com/quilibrium/monorepo/go-libp2p-blossomsub/pb" "source.quilibrium.com/quilibrium/monorepo/node/protobufs" ) type PubSub interface { PublishToBitmask(bitmask []byte, data []byte) error Publish(address []byte, data []byte) error Subscribe(bitmask []byte, handler func(message *pb.Message) error) error Unsubscribe(bitmask []byte, raw bool) GetPeerID() []byte GetBitmaskPeers() map[string][]string GetPeerstoreCount() int GetNetworkPeersCount() int GetNetworkInfo() *protobufs.NetworkInfoResponse SignMessage(msg []byte) ([]byte, error) GetPublicKey() []byte GetPeerScore(peerId []byte) int64 SetPeerScore(peerId []byte, score int64) }