an code terseness nit - remove() returns the value that it removed. So,:

    Completer<ServiceActionEvent> completer = _serviceCallCompleters[event.callId];