#ifndef COMPONENTS_INVALIDATION_IMPL_FCM_INVALIDATION_SERVICE_H_
#define COMPONENTS_INVALIDATION_IMPL_FCM_INVALIDATION_SERVICE_H_
#include <memory>
#include <optional>
#include <string>
#include "base/functional/callback.h"
#include "base/memory/raw_ptr.h"
#include "base/sequence_checker.h"
#include "components/gcm_driver/instance_id/instance_id.h"
#include "components/invalidation/impl/fcm_invalidation_listener.h"
#include "components/invalidation/impl/invalidator_registrar_with_memory.h"
#include "components/invalidation/public/invalidation_handler.h"
#include "components/invalidation/public/invalidation_service.h"
class PrefService;
class PrefRegistrySimple;
namespace instance_id {
class InstanceIDDriver;
}
namespace invalidation {
class FCMNetworkHandler;
class PerUserTopicSubscriptionManager;
FCMNetworkHandlerCallback;
PerUserTopicSubscriptionManagerCallback;
FCMInvalidationListenerCallback;
class FCMInvalidationService : public InvalidationService,
public IdentityProvider::Observer,
public FCMInvalidationListener::Delegate { … };
}
#endif