package push import "context" // Notification is a system push. Mute is decided in Deliver Worker, not gnet. type Notification struct { UserID int64 DeviceID uint64 ConversationID int64 Title string Body string Badge int CollapseKey string } type Notifier interface { Notify(ctx context.Context, n *Notification) error } // Noop satisfies V3: the interface exists; APNS/FCM can wait. type Noop struct{} func (Noop) Notify(context.Context, *Notification) error { return nil }