// Copyright 2021 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_HISTORY_CLUSTERS_CORE_HISTORY_CLUSTERS_TYPES_H_ #define COMPONENTS_HISTORY_CLUSTERS_CORE_HISTORY_CLUSTERS_TYPES_H_ #include <string> #include <vector> #include "base/containers/flat_set.h" #include "base/functional/callback.h" #include "components/history/core/browser/history_types.h" namespace history_clusters { // These values are persisted to logs. Entries should not be renumbered and // numeric values should never be reused. enum class ClusteringRequestSource { … }; struct QueryClustersFilterParams { … }; struct QueryClustersContinuationParams { … }; QueryClustersCallback; // Tracks which fields have been or are pending recording. This helps 1) avoid // re-recording fields and 2) determine whether a visit is complete (i.e. has // all expected fields recorded). struct RecordingStatus { … }; // A partially built VisitContextAnnotations with its state of completeness and // associated `URLRow` and `VisitRow` which are necessary to build it. struct IncompleteVisitContextAnnotations { … }; // Used to track incomplete, unpersisted visits. IncompleteVisitMap; } // namespace history_clusters #endif // COMPONENTS_HISTORY_CLUSTERS_CORE_HISTORY_CLUSTERS_TYPES_H_