#ifndef COMPONENTS_ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS_H_
#define COMPONENTS_ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS_H_
#include <stdint.h>
#include <optional>
#include <string>
#include <vector>
#include "base/component_export.h"
#include "base/containers/flat_set.h"
#include "base/time/time.h"
#include "components/attribution_reporting/aggregatable_debug_reporting_config.h"
#include "components/attribution_reporting/aggregatable_dedup_key.h"
#include "components/attribution_reporting/aggregatable_filtering_id_max_bytes.h"
#include "components/attribution_reporting/aggregatable_trigger_config.h"
#include "components/attribution_reporting/aggregatable_trigger_data.h"
#include "components/attribution_reporting/aggregatable_values.h"
#include "components/attribution_reporting/aggregation_keys.h"
#include "components/attribution_reporting/attribution_scopes_data.h"
#include "components/attribution_reporting/attribution_scopes_set.h"
#include "components/attribution_reporting/destination_set.h"
#include "components/attribution_reporting/event_level_epsilon.h"
#include "components/attribution_reporting/event_report_windows.h"
#include "components/attribution_reporting/event_trigger_data.h"
#include "components/attribution_reporting/filters.h"
#include "components/attribution_reporting/max_event_level_reports.h"
#include "components/attribution_reporting/os_registration.h"
#include "components/attribution_reporting/registration.mojom-shared.h"
#include "components/attribution_reporting/source_registration.h"
#include "components/attribution_reporting/suitable_origin.h"
#include "components/attribution_reporting/trigger_config.h"
#include "components/attribution_reporting/trigger_registration.h"
#include "mojo/public/cpp/base/int128_mojom_traits.h"
#include "mojo/public/cpp/base/time_mojom_traits.h"
#include "net/base/schemeful_site.h"
#include "services/network/public/cpp/schemeful_site_mojom_traits.h"
#include "third_party/abseil-cpp/absl/numeric/int128.h"
#include "url/gurl.h"
#include "url/mojom/origin_mojom_traits.h"
#include "url/mojom/url_gurl_mojom_traits.h"
#include "url/origin.h"
namespace mojo {
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::SuitableOriginDataView,
attribution_reporting::SuitableOrigin> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::FilterDataDataView,
attribution_reporting::FilterData> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::FilterConfigDataView,
attribution_reporting::FilterConfig> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::AggregationKeysDataView,
attribution_reporting::AggregationKeys> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::DestinationSetDataView,
attribution_reporting::DestinationSet> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::EventReportWindowsDataView,
attribution_reporting::EventReportWindows> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::TriggerSpecDataView,
attribution_reporting::TriggerSpec> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::TriggerSpecsDataView,
attribution_reporting::TriggerSpecs> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<
attribution_reporting::mojom::
AggregatableDebugReportingContributionDataView,
attribution_reporting::AggregatableDebugReportingContribution> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<
attribution_reporting::mojom::AggregatableDebugReportingConfigDataView,
attribution_reporting::AggregatableDebugReportingConfig> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<
attribution_reporting::mojom::
SourceAggregatableDebugReportingConfigDataView,
attribution_reporting::SourceAggregatableDebugReportingConfig> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::AttributionScopesSetDataView,
attribution_reporting::AttributionScopesSet> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::AttributionScopesDataDataView,
attribution_reporting::AttributionScopesData> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::SourceRegistrationDataView,
attribution_reporting::SourceRegistration> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::FilterPairDataView,
attribution_reporting::FilterPair> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::EventTriggerDataDataView,
attribution_reporting::EventTriggerData> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::AggregatableTriggerDataDataView,
attribution_reporting::AggregatableTriggerData> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::TriggerRegistrationDataView,
attribution_reporting::TriggerRegistration> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::AggregatableDedupKeyDataView,
attribution_reporting::AggregatableDedupKey> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::AggregatableValuesValueDataView,
attribution_reporting::AggregatableValuesValue> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::AggregatableValuesDataView,
attribution_reporting::AggregatableValues> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::OsRegistrationDataView,
std::vector<attribution_reporting::OsRegistrationItem>> { … };
template <>
struct COMPONENT_EXPORT(ATTRIBUTION_REPORTING_REGISTRATION_MOJOM_TRAITS)
StructTraits<attribution_reporting::mojom::OsRegistrationItemDataView,
attribution_reporting::OsRegistrationItem> { … };
}
#endif