#ifndef CHROME_BROWSER_UI_WEBUI_TAB_STRIP_TAB_STRIP_MOJOM_SHARED_H_
#define CHROME_BROWSER_UI_WEBUI_TAB_STRIP_TAB_STRIP_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 "chrome/browser/ui/webui/tab_strip/tab_strip.mojom-shared-internal.h"
#include "url/mojom/url.mojom-shared.h"
#include "chrome/browser/ui/webui/tabs/tabs.mojom-shared.h"
#include "mojo/public/cpp/bindings/lib/interface_serialization.h"
#include "mojo/public/cpp/system/data_pipe.h"
namespace tab_strip::mojom {
class TabDataView;
class TabGroupVisualDataDataView;
}
namespace mojo {
namespace internal {
template <>
struct MojomTypeTraits<::tab_strip::mojom::TabDataView> { … };
template <>
struct MojomTypeTraits<::tab_strip::mojom::TabGroupVisualDataDataView> { … };
}
}
namespace tab_strip::mojom {
enum class TabNetworkState : int32_t { … };
std::ostream& operator<<(std::ostream& os, TabNetworkState value);
inline bool IsKnownEnumValue(TabNetworkState value) { … }
class PageHandlerFactoryInterfaceBase { … };
PageHandlerFactoryPtrDataView;
PageHandlerFactoryRequestDataView;
PageHandlerFactoryAssociatedPtrInfoDataView;
PageHandlerFactoryAssociatedRequestDataView;
class PageHandlerInterfaceBase { … };
PageHandlerPtrDataView;
PageHandlerRequestDataView;
PageHandlerAssociatedPtrInfoDataView;
PageHandlerAssociatedRequestDataView;
class PageInterfaceBase { … };
PagePtrDataView;
PageRequestDataView;
PageAssociatedPtrInfoDataView;
PageAssociatedRequestDataView;
class TabDataView { … };
class TabGroupVisualDataDataView { … };
}
namespace std {
template <>
struct hash<::tab_strip::mojom::TabNetworkState>
: public mojo::internal::EnumHashImpl<::tab_strip::mojom::TabNetworkState> { … };
}
namespace mojo {
namespace internal {
Serializer< ::tab_strip::mojom::TabNetworkState, MaybeConstUserType>;
}
namespace internal {
Serializer< ::tab_strip::mojom::TabDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::tab_strip::mojom::TabGroupVisualDataDataView, MaybeConstUserType>;
}
}
namespace tab_strip::mojom {
inline void TabDataView::GetAlertStatesDataView(
mojo::ArrayDataView<::tabs::mojom::TabAlertState>* output) { … }
inline void TabDataView::GetFaviconUrlDataView(
::url::mojom::UrlDataView* output) { … }
inline void TabDataView::GetActiveFaviconUrlDataView(
::url::mojom::UrlDataView* output) { … }
inline void TabDataView::GetGroupIdDataView(
mojo::StringDataView* output) { … }
inline void TabDataView::GetTitleDataView(
mojo::StringDataView* output) { … }
inline void TabDataView::GetUrlDataView(
::url::mojom::UrlDataView* output) { … }
inline void TabGroupVisualDataDataView::GetColorDataView(
mojo::StringDataView* output) { … }
inline void TabGroupVisualDataDataView::GetTextColorDataView(
mojo::StringDataView* output) { … }
inline void TabGroupVisualDataDataView::GetTitleDataView(
mojo::StringDataView* output) { … }
}
namespace perfetto {
template <>
struct TraceFormatTraits<::tab_strip::mojom::TabNetworkState> { … };
}
#endif