// components/visitedlink/common/visitedlink.mojom-test-utils.h is auto generated by mojom_bindings_generator.py, do not edit

// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef COMPONENTS_VISITEDLINK_COMMON_VISITEDLINK_MOJOM_TEST_UTILS_H_
#define COMPONENTS_VISITEDLINK_COMMON_VISITEDLINK_MOJOM_TEST_UTILS_H_

#include "components/visitedlink/common/visitedlink.mojom.h"


namespace visitedlink::mojom {


class  VisitedLinkNotificationSinkInterceptorForTesting : public VisitedLinkNotificationSink {
  virtual VisitedLinkNotificationSink* GetForwardingInterface() = 0;
  void UpdateVisitedLinks(::base::ReadOnlySharedMemoryRegion table_region) override;
  void AddVisitedLinks(const std::vector<uint64_t>& link_hashes) override;
  void ResetVisitedLinks(bool invalidate_cached_hashes) override;
  void UpdateOriginSalts(const base::flat_map<::url::Origin, uint64_t>& origin_salts) override;
};
class  VisitedLinkNotificationSinkAsyncWaiter {
 public:
  explicit VisitedLinkNotificationSinkAsyncWaiter(VisitedLinkNotificationSink* proxy);

  VisitedLinkNotificationSinkAsyncWaiter(const VisitedLinkNotificationSinkAsyncWaiter&) = delete;
  VisitedLinkNotificationSinkAsyncWaiter& operator=(const VisitedLinkNotificationSinkAsyncWaiter&) = delete;

  ~VisitedLinkNotificationSinkAsyncWaiter();

 private:
  VisitedLinkNotificationSink* const proxy_;
};




}  // visitedlink::mojom

#endif  // COMPONENTS_VISITEDLINK_COMMON_VISITEDLINK_MOJOM_TEST_UTILS_H_