dequeue method
Remove and return the next request, or null if empty.
Implementation
@override
QueuedRequest? dequeue() {
if (_queue.isEmpty) return null;
final serializable = _queue.removeFirst();
_persistSync();
return _toQueuedRequest(serializable);
}