/// <inheritdoc />
        public async Task Unsubscribe(PushSubscription subscription)
        {
            if (!await _context.PushSubscription.AnyAsync(s => s.P256Dh == subscription.P256Dh))
            {
                return;
            }

            _context.PushSubscription.Remove(subscription);
            await _context.SaveChangesAsync();
        }
        /// <inheritdoc />
        public async Task <PushSubscription> Subscribe(PushSubscription subscription)
        {
            if (await _context.PushSubscription.AnyAsync(s => s.P256Dh == subscription.P256Dh))
            {
                return(await _context.PushSubscription.FindAsync(subscription.P256Dh));
            }

            await _context.PushSubscription.AddAsync(subscription);

            await _context.SaveChangesAsync();

            return(subscription);
        }