Topic
Topics are used to de-duplicate and overwrite messages on push services before they are delivered to a subscriber.
struct Topic
The topic is never delivered to your service worker, though is seen in plain text by the Push Service, so this type encodes it first to prevent leaking any information about the messages you are sending or your subscribers.