#ifndef COMPONENTS_COMMERCE_CORE_WEBUI_SHOPPING_SERVICE_HANDLER_H_
#define COMPONENTS_COMMERCE_CORE_WEBUI_SHOPPING_SERVICE_HANDLER_H_
#include <string>
#include <vector>
#include "base/memory/raw_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/scoped_observation.h"
#include "base/values.h"
#include "components/bookmarks/browser/base_bookmark_model_observer.h"
#include "components/bookmarks/browser/bookmark_model.h"
#include "components/commerce/core/product_specifications/product_specifications_set.h"
#include "components/commerce/core/subscriptions/subscriptions_manager.h"
#include "components/commerce/core/subscriptions/subscriptions_observer.h"
#include "components/optimization_guide/core/model_quality/model_quality_log_entry.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "services/metrics/public/cpp/ukm_source_id.h"
#include "ui/webui/resources/cr_components/commerce/shopping_service.mojom.h"
class PrefService;
namespace optimization_guide {
class ModelQualityLogsUploaderService;
}
namespace base {
class Uuid;
}
namespace bookmarks {
class BookmarkNode;
}
namespace feature_engagement {
class Tracker;
}
namespace commerce {
class ShoppingService;
struct PriceInsightsInfo;
struct ProductSpecifications;
class ShoppingServiceHandler
: public shopping_service::mojom::ShoppingServiceHandler,
public SubscriptionsObserver,
public bookmarks::BaseBookmarkModelObserver,
public ProductSpecificationsSet::Observer { … };
}
#endif