#ifndef THIRD_PARTY_BLINK_PUBLIC_MOJOM_BLOB_DATA_ELEMENT_MOJOM_SHARED_H_
#define THIRD_PARTY_BLINK_PUBLIC_MOJOM_BLOB_DATA_ELEMENT_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 "third_party/blink/public/mojom/blob/data_element.mojom-shared-internal.h"
#include "mojo/public/mojom/base/file.mojom-shared.h"
#include "mojo/public/mojom/base/file_path.mojom-shared.h"
#include "mojo/public/mojom/base/time.mojom-shared.h"
#include "third_party/blink/public/mojom/blob/blob.mojom-shared.h"
#include "mojo/public/cpp/bindings/lib/interface_serialization.h"
#include "mojo/public/cpp/system/data_pipe.h"
#include "base/component_export.h"
namespace blink::mojom {
class DataElementBytesDataView;
class DataElementFileDataView;
class DataElementBlobDataView;
class DataElementDataView;
}
namespace mojo {
namespace internal {
template <>
struct MojomTypeTraits<::blink::mojom::DataElementBytesDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::DataElementFileDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::DataElementBlobDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::DataElementDataView> { … };
}
}
namespace blink::mojom {
class BytesProviderInterfaceBase { … };
BytesProviderPtrDataView;
BytesProviderRequestDataView;
BytesProviderAssociatedPtrInfoDataView;
BytesProviderAssociatedRequestDataView;
class DataElementBytesDataView { … };
class DataElementFileDataView { … };
class DataElementBlobDataView { … };
class DataElementDataView { … };
}
namespace std {
}
namespace mojo {
namespace internal {
Serializer< ::blink::mojom::DataElementBytesDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::DataElementFileDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::DataElementBlobDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::DataElementDataView, MaybeConstUserType>;
}
}
namespace blink::mojom {
inline void DataElementBytesDataView::GetEmbeddedDataDataView(
mojo::ArrayDataView<uint8_t>* output) { … }
inline void DataElementFileDataView::GetPathDataView(
::mojo_base::mojom::FilePathDataView* output) { … }
inline void DataElementFileDataView::GetExpectedModificationTimeDataView(
::mojo_base::mojom::TimeDataView* output) { … }
inline void DataElementDataView::GetBytesDataView(
DataElementBytesDataView* output) const { … }
inline void DataElementDataView::GetFileDataView(
DataElementFileDataView* output) const { … }
inline void DataElementDataView::GetBlobDataView(
DataElementBlobDataView* output) const { … }
}
#endif