#ifndef COMPONENTS_VISITED_URL_RANKING_PUBLIC_URL_VISIT_UTIL_H_
#define COMPONENTS_VISITED_URL_RANKING_PUBLIC_URL_VISIT_UTIL_H_
#include <array>
#include <string_view>
#include "base/containers/fixed_flat_set.h"
#include "components/segmentation_platform/public/input_context.h"
#include "components/visited_url_ranking/public/fetch_result.h"
#include "components/visited_url_ranking/public/url_visit_schema.h"
#include "url/gurl.h"
namespace url_deduplication {
class URLDeduplicationHelper;
}
namespace visited_url_ranking {
inline constexpr auto kBlocklistedCategories = …;
inline constexpr auto kDefaultAppBlocklist = …;
std::unique_ptr<url_deduplication::URLDeduplicationHelper>
CreateDefaultURLDeduplicationHelper();
URLMergeKey ComputeURLMergeKey(
const GURL& url,
const std::u16string& title,
url_deduplication::URLDeduplicationHelper* deduplication_helper);
scoped_refptr<segmentation_platform::InputContext> AsInputContext(
const std::array<FieldSchema, kNumInputs>& fields_schema,
const URLVisitAggregate& url_visit_aggregate);
const URLVisitAggregate::TabData* GetTabDataIfExists(
const URLVisitAggregate& url_visit_aggregate);
const URLVisitAggregate::Tab* GetTabIfExists(
const URLVisitAggregate& url_visit_aggregate);
const history::AnnotatedVisit* GetHistoryEntryVisitIfExists(
const URLVisitAggregate& url_visit_aggregate);
const Decoration& GetMostRelevantDecoration(
const URLVisitAggregate& url_visit_aggregate);
}
#endif