#ifndef SERVICES_NETWORK_PUBLIC_MOJOM_TRUST_TOKENS_MOJOM_SHARED_H_
#define SERVICES_NETWORK_PUBLIC_MOJOM_TRUST_TOKENS_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 "services/network/public/mojom/trust_tokens.mojom-shared-internal.h"
#include "url/mojom/origin.mojom-shared.h"
#include "mojo/public/mojom/base/time.mojom-shared.h"
#include "mojo/public/cpp/bindings/lib/interface_serialization.h"
#include "mojo/public/cpp/system/data_pipe.h"
namespace network::mojom {
class TrustTokenParamsDataView;
class HasTrustTokensResultDataView;
class HasRedemptionRecordResultDataView;
class TrustTokenVerificationKeyDataView;
class TrustTokenKeyCommitmentResultDataView;
class FulfillTrustTokenIssuanceRequestDataView;
class FulfillTrustTokenIssuanceAnswerDataView;
class TrustTokenOperationResultDataView;
class StoredTrustTokensForIssuerDataView;
class ToplevelRedemptionRecordDataView;
}
namespace mojo {
namespace internal {
template <>
struct MojomTypeTraits<::network::mojom::TrustTokenParamsDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::HasTrustTokensResultDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::HasRedemptionRecordResultDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::TrustTokenVerificationKeyDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::TrustTokenKeyCommitmentResultDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::FulfillTrustTokenIssuanceRequestDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::FulfillTrustTokenIssuanceAnswerDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::TrustTokenOperationResultDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::StoredTrustTokensForIssuerDataView> { … };
template <>
struct MojomTypeTraits<::network::mojom::ToplevelRedemptionRecordDataView> { … };
}
}
namespace network::mojom {
enum class TrustTokenProtocolVersion : int32_t { … };
std::ostream& operator<<(std::ostream& os, TrustTokenProtocolVersion value);
inline bool IsKnownEnumValue(TrustTokenProtocolVersion value) { … }
enum class TrustTokenOperationStatus : int32_t { … };
std::ostream& operator<<(std::ostream& os, TrustTokenOperationStatus value);
inline bool IsKnownEnumValue(TrustTokenOperationStatus value) { … }
enum class TrustTokenOperationType : int32_t { … };
std::ostream& operator<<(std::ostream& os, TrustTokenOperationType value);
inline bool IsKnownEnumValue(TrustTokenOperationType value) { … }
enum class TrustTokenRefreshPolicy : int32_t { … };
std::ostream& operator<<(std::ostream& os, TrustTokenRefreshPolicy value);
inline bool IsKnownEnumValue(TrustTokenRefreshPolicy value) { … }
enum class TrustTokenSignRequestData : int32_t { … };
std::ostream& operator<<(std::ostream& os, TrustTokenSignRequestData value);
inline bool IsKnownEnumValue(TrustTokenSignRequestData value) { … }
enum class DeleteStoredTrustTokensStatus : int32_t { … };
std::ostream& operator<<(std::ostream& os, DeleteStoredTrustTokensStatus value);
inline bool IsKnownEnumValue(DeleteStoredTrustTokensStatus value) { … }
enum class TrustTokenKeyCommitmentResult_Os : int32_t { … };
std::ostream& operator<<(std::ostream& os, TrustTokenKeyCommitmentResult_Os value);
inline bool IsKnownEnumValue(TrustTokenKeyCommitmentResult_Os value) { … }
enum class TrustTokenKeyCommitmentResult_UnavailableLocalOperationFallback : int32_t { … };
std::ostream& operator<<(std::ostream& os, TrustTokenKeyCommitmentResult_UnavailableLocalOperationFallback value);
inline bool IsKnownEnumValue(TrustTokenKeyCommitmentResult_UnavailableLocalOperationFallback value) { … }
enum class FulfillTrustTokenIssuanceAnswer_Status : int32_t { … };
std::ostream& operator<<(std::ostream& os, FulfillTrustTokenIssuanceAnswer_Status value);
inline bool IsKnownEnumValue(FulfillTrustTokenIssuanceAnswer_Status value) { … }
class TrustTokenQueryAnswererInterfaceBase { … };
TrustTokenQueryAnswererPtrDataView;
TrustTokenQueryAnswererRequestDataView;
TrustTokenQueryAnswererAssociatedPtrInfoDataView;
TrustTokenQueryAnswererAssociatedRequestDataView;
class TrustTokenParamsDataView { … };
class HasTrustTokensResultDataView { … };
class HasRedemptionRecordResultDataView { … };
class TrustTokenVerificationKeyDataView { … };
class TrustTokenKeyCommitmentResultDataView { … };
class FulfillTrustTokenIssuanceRequestDataView { … };
class FulfillTrustTokenIssuanceAnswerDataView { … };
class TrustTokenOperationResultDataView { … };
class StoredTrustTokensForIssuerDataView { … };
class ToplevelRedemptionRecordDataView { … };
}
namespace std {
template <>
struct hash<::network::mojom::TrustTokenProtocolVersion>
: public mojo::internal::EnumHashImpl<::network::mojom::TrustTokenProtocolVersion> { … };
template <>
struct hash<::network::mojom::TrustTokenOperationStatus>
: public mojo::internal::EnumHashImpl<::network::mojom::TrustTokenOperationStatus> { … };
template <>
struct hash<::network::mojom::TrustTokenOperationType>
: public mojo::internal::EnumHashImpl<::network::mojom::TrustTokenOperationType> { … };
template <>
struct hash<::network::mojom::TrustTokenRefreshPolicy>
: public mojo::internal::EnumHashImpl<::network::mojom::TrustTokenRefreshPolicy> { … };
template <>
struct hash<::network::mojom::TrustTokenSignRequestData>
: public mojo::internal::EnumHashImpl<::network::mojom::TrustTokenSignRequestData> { … };
template <>
struct hash<::network::mojom::DeleteStoredTrustTokensStatus>
: public mojo::internal::EnumHashImpl<::network::mojom::DeleteStoredTrustTokensStatus> { … };
template <>
struct hash<::network::mojom::TrustTokenKeyCommitmentResult_Os>
: public mojo::internal::EnumHashImpl<::network::mojom::TrustTokenKeyCommitmentResult_Os> { … };
template <>
struct hash<::network::mojom::TrustTokenKeyCommitmentResult_UnavailableLocalOperationFallback>
: public mojo::internal::EnumHashImpl<::network::mojom::TrustTokenKeyCommitmentResult_UnavailableLocalOperationFallback> { … };
template <>
struct hash<::network::mojom::FulfillTrustTokenIssuanceAnswer_Status>
: public mojo::internal::EnumHashImpl<::network::mojom::FulfillTrustTokenIssuanceAnswer_Status> { … };
}
namespace mojo {
namespace internal {
Serializer< ::network::mojom::TrustTokenProtocolVersion, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenOperationStatus, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenOperationType, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenRefreshPolicy, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenSignRequestData, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::DeleteStoredTrustTokensStatus, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenKeyCommitmentResult_Os, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenKeyCommitmentResult_UnavailableLocalOperationFallback, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::FulfillTrustTokenIssuanceAnswer_Status, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::HasTrustTokensResultDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::HasRedemptionRecordResultDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenVerificationKeyDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenKeyCommitmentResultDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::FulfillTrustTokenIssuanceRequestDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::FulfillTrustTokenIssuanceAnswerDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::TrustTokenOperationResultDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::StoredTrustTokensForIssuerDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::network::mojom::ToplevelRedemptionRecordDataView, MaybeConstUserType>;
}
}
namespace network::mojom {
inline void TrustTokenParamsDataView::GetCustomKeyCommitmentDataView(
mojo::StringDataView* output) { … }
inline void TrustTokenParamsDataView::GetCustomIssuerDataView(
::url::mojom::OriginDataView* output) { … }
inline void TrustTokenParamsDataView::GetIssuersDataView(
mojo::ArrayDataView<::url::mojom::OriginDataView>* output) { … }
inline void TrustTokenParamsDataView::GetAdditionalSignedHeadersDataView(
mojo::ArrayDataView<mojo::StringDataView>* output) { … }
inline void TrustTokenParamsDataView::GetPossiblyUnsafeAdditionalSigningDataDataView(
mojo::StringDataView* output) { … }
inline void TrustTokenVerificationKeyDataView::GetBodyDataView(
mojo::StringDataView* output) { … }
inline void TrustTokenVerificationKeyDataView::GetExpiryDataView(
::mojo_base::mojom::TimeDataView* output) { … }
inline void TrustTokenKeyCommitmentResultDataView::GetKeysDataView(
mojo::ArrayDataView<TrustTokenVerificationKeyDataView>* output) { … }
inline void TrustTokenKeyCommitmentResultDataView::GetRequestIssuanceLocallyOnDataView(
mojo::ArrayDataView<TrustTokenKeyCommitmentResult_Os>* output) { … }
inline void FulfillTrustTokenIssuanceRequestDataView::GetIssuerDataView(
::url::mojom::OriginDataView* output) { … }
inline void FulfillTrustTokenIssuanceRequestDataView::GetRequestDataView(
mojo::StringDataView* output) { … }
inline void FulfillTrustTokenIssuanceAnswerDataView::GetResponseDataView(
mojo::StringDataView* output) { … }
inline void TrustTokenOperationResultDataView::GetIssuerDataView(
::url::mojom::OriginDataView* output) { … }
inline void TrustTokenOperationResultDataView::GetTopLevelOriginDataView(
::url::mojom::OriginDataView* output) { … }
inline void StoredTrustTokensForIssuerDataView::GetIssuerDataView(
::url::mojom::OriginDataView* output) { … }
inline void ToplevelRedemptionRecordDataView::GetToplevelOriginDataView(
::url::mojom::OriginDataView* output) { … }
inline void ToplevelRedemptionRecordDataView::GetLastRedemptionDataView(
::mojo_base::mojom::TimeDataView* output) { … }
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::TrustTokenProtocolVersion> { … };
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::TrustTokenOperationStatus> { … };
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::TrustTokenOperationType> { … };
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::TrustTokenRefreshPolicy> { … };
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::TrustTokenSignRequestData> { … };
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::DeleteStoredTrustTokensStatus> { … };
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::TrustTokenKeyCommitmentResult_Os> { … };
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::TrustTokenKeyCommitmentResult_UnavailableLocalOperationFallback> { … };
}
namespace perfetto {
template <>
struct TraceFormatTraits<::network::mojom::FulfillTrustTokenIssuanceAnswer_Status> { … };
}
#endif