#ifndef CONTENT_SERVICES_AUCTION_WORKLET_PUBLIC_MOJOM_PRIVATE_AGGREGATION_REQUEST_MOJOM_SHARED_H_
#define CONTENT_SERVICES_AUCTION_WORKLET_PUBLIC_MOJOM_PRIVATE_AGGREGATION_REQUEST_MOJOM_SHARED_H_
#include <stdint.h>
#include <functional>
#include <iosfwd>
#include <type_traits>
#include <utility>
#include "mojo/public/cpp/bindings/array_data_view.h"
#include "mojo/public/cpp/bindings/enum_traits.h"
#include "mojo/public/cpp/bindings/interface_data_view.h"
#include "mojo/public/cpp/bindings/lib/bindings_internal.h"
#include "mojo/public/cpp/bindings/lib/serialization.h"
#include "mojo/public/cpp/bindings/map_data_view.h"
#include "mojo/public/cpp/bindings/string_data_view.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h"
#include "content/services/auction_worklet/public/mojom/private_aggregation_request.mojom-shared-internal.h"
#include "mojo/public/mojom/base/int128.mojom-shared.h"
#include "third_party/blink/public/mojom/aggregation_service/aggregatable_report.mojom-shared.h"
#include "third_party/blink/public/mojom/private_aggregation/private_aggregation_host.mojom-shared.h"
#include "base/component_export.h"
namespace auction_worklet::mojom {
class BucketOffsetDataView;
class SignalBucketDataView;
class SignalValueDataView;
class AggregatableReportForEventContributionDataView;
class PrivateAggregationRequestDataView;
class ForEventSignalBucketDataView;
class ForEventSignalValueDataView;
class EventTypeDataView;
class AggregatableReportContributionDataView;
}
namespace mojo {
namespace internal {
template <>
struct MojomTypeTraits<::auction_worklet::mojom::BucketOffsetDataView> { … };
template <>
struct MojomTypeTraits<::auction_worklet::mojom::SignalBucketDataView> { … };
template <>
struct MojomTypeTraits<::auction_worklet::mojom::SignalValueDataView> { … };
template <>
struct MojomTypeTraits<::auction_worklet::mojom::AggregatableReportForEventContributionDataView> { … };
template <>
struct MojomTypeTraits<::auction_worklet::mojom::PrivateAggregationRequestDataView> { … };
template <>
struct MojomTypeTraits<::auction_worklet::mojom::ForEventSignalBucketDataView> { … };
template <>
struct MojomTypeTraits<::auction_worklet::mojom::ForEventSignalValueDataView> { … };
template <>
struct MojomTypeTraits<::auction_worklet::mojom::EventTypeDataView> { … };
template <>
struct MojomTypeTraits<::auction_worklet::mojom::AggregatableReportContributionDataView> { … };
}
}
namespace auction_workletmojom
namespace std {
template <>
struct hash<::auction_worklet::mojom::BaseValue>
: public mojo::internal::EnumHashImpl<::auction_worklet::mojom::BaseValue> { … };
template <>
struct hash<::auction_worklet::mojom::ReservedEventType>
: public mojo::internal::EnumHashImpl<::auction_worklet::mojom::ReservedEventType> { … };
}
namespace mojo {
namespace internal {
Serializer< ::auction_worklet::mojom::BaseValue, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::ReservedEventType, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::BucketOffsetDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::SignalBucketDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::SignalValueDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::AggregatableReportForEventContributionDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::PrivateAggregationRequestDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::ForEventSignalBucketDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::ForEventSignalValueDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::EventTypeDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::auction_worklet::mojom::AggregatableReportContributionDataView, MaybeConstUserType>;
}
}
namespace auction_worklet::mojom {
inline void BucketOffsetDataView::GetValueDataView(
::mojo_base::mojom::Uint128DataView* output) { … }
inline void SignalBucketDataView::GetOffsetDataView(
BucketOffsetDataView* output) { … }
inline void AggregatableReportForEventContributionDataView::GetBucketDataView(
ForEventSignalBucketDataView* output) { … }
inline void AggregatableReportForEventContributionDataView::GetValueDataView(
ForEventSignalValueDataView* output) { … }
inline void AggregatableReportForEventContributionDataView::GetEventTypeDataView(
EventTypeDataView* output) { … }
inline void PrivateAggregationRequestDataView::GetContributionDataView(
AggregatableReportContributionDataView* output) { … }
inline void PrivateAggregationRequestDataView::GetDebugModeDetailsDataView(
::blink::mojom::DebugModeDetailsDataView* output) { … }
inline void ForEventSignalBucketDataView::GetIdBucketDataView(
::mojo_base::mojom::Uint128DataView* output) const { … }
inline void ForEventSignalBucketDataView::GetSignalBucketDataView(
SignalBucketDataView* output) const { … }
inline void ForEventSignalValueDataView::GetSignalValueDataView(
SignalValueDataView* output) const { … }
inline void EventTypeDataView::GetNonReservedDataView(
mojo::StringDataView* output) const { … }
inline void AggregatableReportContributionDataView::GetHistogramContributionDataView(
::blink::mojom::AggregatableReportHistogramContributionDataView* output) const { … }
inline void AggregatableReportContributionDataView::GetForEventContributionDataView(
AggregatableReportForEventContributionDataView* output) const { … }
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) TraceFormatTraits<::auction_worklet::mojom::BaseValue> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) TraceFormatTraits<::auction_worklet::mojom::ReservedEventType> { … };
}
#endif