chromium/out/Default/gen/components/printing/common/print.mojom.h

// components/printing/common/print.mojom.h is auto generated by mojom_bindings_generator.py, do not edit

// Copyright 2013 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef COMPONENTS_PRINTING_COMMON_PRINT_MOJOM_H_
#define COMPONENTS_PRINTING_COMMON_PRINT_MOJOM_H_

#include <stdint.h>

#include <limits>
#include <optional>
#include <type_traits>
#include <utility>

#include "base/types/cxx23_to_underlying.h"
#include "mojo/public/cpp/bindings/clone_traits.h"
#include "mojo/public/cpp/bindings/equals_traits.h"
#include "mojo/public/cpp/bindings/lib/serialization.h"
#include "mojo/public/cpp/bindings/struct_ptr.h"
#include "mojo/public/cpp/bindings/struct_traits.h"
#include "mojo/public/cpp/bindings/union_traits.h"

#include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h"

#include "components/printing/common/print.mojom-features.h"  // IWYU pragma: export
#include "components/printing/common/print.mojom-shared.h"  // IWYU pragma: export
#include "components/printing/common/print.mojom-forward.h"  // IWYU pragma: export
#include "mojo/public/mojom/base/shared_memory.mojom.h"
#include "mojo/public/mojom/base/string16.mojom.h"
#include "mojo/public/mojom/base/values.mojom.h"
#include "mojo/public/mojom/base/unguessable_token.mojom.h"
#include "printing/mojom/print.mojom.h"
#include "ui/accessibility/mojom/ax_tree_update.mojom.h"
#include "ui/gfx/geometry/mojom/geometry.mojom.h"
#include <string>
#include <vector>

#include "mojo/public/cpp/bindings/lib/control_message_handler.h"
#include "mojo/public/cpp/bindings/lib/message_size_estimator.h"
#include "mojo/public/cpp/bindings/raw_ptr_impl_ref_traits.h"






namespace printing::mojom {

class PrintPreviewUIProxy;

template <typename ImplRefTraits>
class PrintPreviewUIStub;

class PrintPreviewUIRequestValidator;


class PrintPreviewUI
    : public PrintPreviewUIInterfaceBase {};

class PrintRenderFrameProxy;

template <typename ImplRefTraits>
class PrintRenderFrameStub;

class PrintRenderFrameRequestValidator;
class PrintRenderFrameResponseValidator;


class PrintRenderFrame
    : public PrintRenderFrameInterfaceBase {};

class PrintManagerHostProxy;

template <typename ImplRefTraits>
class PrintManagerHostStub;

class PrintManagerHostRequestValidator;
class PrintManagerHostResponseValidator;


class PrintManagerHost
    : public PrintManagerHostInterfaceBase {};



class  PrintPreviewUIProxy
    : public PrintPreviewUI {};



class  PrintRenderFrameProxy
    : public PrintRenderFrame {};



class  PrintManagerHostProxy
    : public PrintManagerHost {};
class  PrintPreviewUIStubDispatch {};

template <typename ImplRefTraits =
              mojo::RawPtrImplRefTraits<PrintPreviewUI>>
class PrintPreviewUIStub
    : public mojo::MessageReceiverWithResponderStatus {
 public:
  using ImplPointerType = typename ImplRefTraits::PointerType;

  PrintPreviewUIStub() = default;
  ~PrintPreviewUIStub() override = default;

  void set_sink(ImplPointerType sink) {}
  ImplPointerType& sink() {}

  bool Accept(mojo::Message* message) override {}

  bool AcceptWithResponder(
      mojo::Message* message,
      std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {}

 private:
  ImplPointerType sink_;
};
class  PrintRenderFrameStubDispatch {};

template <typename ImplRefTraits =
              mojo::RawPtrImplRefTraits<PrintRenderFrame>>
class PrintRenderFrameStub
    : public mojo::MessageReceiverWithResponderStatus {
 public:
  using ImplPointerType = typename ImplRefTraits::PointerType;

  PrintRenderFrameStub() = default;
  ~PrintRenderFrameStub() override = default;

  void set_sink(ImplPointerType sink) {}
  ImplPointerType& sink() {}

  bool Accept(mojo::Message* message) override {}

  bool AcceptWithResponder(
      mojo::Message* message,
      std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {}

 private:
  ImplPointerType sink_;
};
class  PrintManagerHostStubDispatch {};

template <typename ImplRefTraits =
              mojo::RawPtrImplRefTraits<PrintManagerHost>>
class PrintManagerHostStub
    : public mojo::MessageReceiverWithResponderStatus {
 public:
  using ImplPointerType = typename ImplRefTraits::PointerType;

  PrintManagerHostStub() = default;
  ~PrintManagerHostStub() override = default;

  void set_sink(ImplPointerType sink) {}
  ImplPointerType& sink() {}

  bool Accept(mojo::Message* message) override {}

  bool AcceptWithResponder(
      mojo::Message* message,
      std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {}

 private:
  ImplPointerType sink_;
};
class  PrintPreviewUIRequestValidator : public mojo::MessageReceiver {};
class  PrintRenderFrameRequestValidator : public mojo::MessageReceiver {};
class  PrintManagerHostRequestValidator : public mojo::MessageReceiver {};
class  PrintRenderFrameResponseValidator : public mojo::MessageReceiver {};
class  PrintManagerHostResponseValidator : public mojo::MessageReceiver {};





class  PreviewIds {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, PreviewIds::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, PreviewIds::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, PreviewIds::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, PreviewIds::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  RequestPrintPreviewParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, RequestPrintPreviewParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, RequestPrintPreviewParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, RequestPrintPreviewParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, RequestPrintPreviewParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}






class  OptionsFromDocumentParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, OptionsFromDocumentParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, OptionsFromDocumentParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, OptionsFromDocumentParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, OptionsFromDocumentParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}














class  PrintWithParamsResult {};







class  PrintFrameContentParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, PrintFrameContentParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, PrintFrameContentParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, PrintFrameContentParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, PrintFrameContentParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}






class  DidPrintContentParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, DidPrintContentParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, DidPrintContentParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, DidPrintContentParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, DidPrintContentParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  DidStartPreviewParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, DidStartPreviewParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, DidStartPreviewParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, DidStartPreviewParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, DidStartPreviewParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  DidPreviewPageParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, DidPreviewPageParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, DidPreviewPageParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, DidPreviewPageParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, DidPreviewPageParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  DidPreviewDocumentParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, DidPreviewDocumentParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, DidPreviewDocumentParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, DidPreviewDocumentParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, DidPreviewDocumentParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  PrintParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, PrintParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, PrintParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, PrintParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, PrintParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  PrintPagesParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, PrintPagesParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, PrintPagesParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, PrintPagesParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, PrintPagesParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  DidPrintDocumentParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, DidPrintDocumentParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, DidPrintDocumentParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, DidPrintDocumentParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, DidPrintDocumentParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  ScriptedPrintParams {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, ScriptedPrintParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, ScriptedPrintParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, ScriptedPrintParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, ScriptedPrintParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}





class  PrintWithParamsResultData {};

// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, PrintWithParamsResultData::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);

template <typename T, PrintWithParamsResultData::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {}

template <typename T, PrintWithParamsResultData::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {}

template <typename T, PrintWithParamsResultData::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {}

template <typename UnionPtrType>
PrintWithParamsResultPtr PrintWithParamsResult::Clone() const {}

template <typename T,
          typename std::enable_if<std::is_same<
              T, PrintWithParamsResult>::value>::type*>
bool PrintWithParamsResult::Equals(const T& other) const {}
template <typename StructPtrType>
PreviewIdsPtr PreviewIds::Clone() const {}

template <typename T, PreviewIds::EnableIfSame<T>*>
bool PreviewIds::Equals(const T& other_struct) const {}

template <typename T, PreviewIds::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
RequestPrintPreviewParamsPtr RequestPrintPreviewParams::Clone() const {}

template <typename T, RequestPrintPreviewParams::EnableIfSame<T>*>
bool RequestPrintPreviewParams::Equals(const T& other_struct) const {}

template <typename T, RequestPrintPreviewParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
PrintFrameContentParamsPtr PrintFrameContentParams::Clone() const {}

template <typename T, PrintFrameContentParams::EnableIfSame<T>*>
bool PrintFrameContentParams::Equals(const T& other_struct) const {}

template <typename T, PrintFrameContentParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
OptionsFromDocumentParamsPtr OptionsFromDocumentParams::Clone() const {}

template <typename T, OptionsFromDocumentParams::EnableIfSame<T>*>
bool OptionsFromDocumentParams::Equals(const T& other_struct) const {}

template <typename T, OptionsFromDocumentParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
DidPrintContentParamsPtr DidPrintContentParams::Clone() const {}

template <typename T, DidPrintContentParams::EnableIfSame<T>*>
bool DidPrintContentParams::Equals(const T& other_struct) const {}

template <typename T, DidPrintContentParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
DidStartPreviewParamsPtr DidStartPreviewParams::Clone() const {}

template <typename T, DidStartPreviewParams::EnableIfSame<T>*>
bool DidStartPreviewParams::Equals(const T& other_struct) const {}

template <typename T, DidStartPreviewParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
DidPreviewPageParamsPtr DidPreviewPageParams::Clone() const {}

template <typename T, DidPreviewPageParams::EnableIfSame<T>*>
bool DidPreviewPageParams::Equals(const T& other_struct) const {}

template <typename T, DidPreviewPageParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
DidPreviewDocumentParamsPtr DidPreviewDocumentParams::Clone() const {}

template <typename T, DidPreviewDocumentParams::EnableIfSame<T>*>
bool DidPreviewDocumentParams::Equals(const T& other_struct) const {}

template <typename T, DidPreviewDocumentParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
PrintParamsPtr PrintParams::Clone() const {}

template <typename T, PrintParams::EnableIfSame<T>*>
bool PrintParams::Equals(const T& other_struct) const {}

template <typename T, PrintParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
PrintPagesParamsPtr PrintPagesParams::Clone() const {}

template <typename T, PrintPagesParams::EnableIfSame<T>*>
bool PrintPagesParams::Equals(const T& other_struct) const {}

template <typename T, PrintPagesParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
DidPrintDocumentParamsPtr DidPrintDocumentParams::Clone() const {}

template <typename T, DidPrintDocumentParams::EnableIfSame<T>*>
bool DidPrintDocumentParams::Equals(const T& other_struct) const {}

template <typename T, DidPrintDocumentParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
ScriptedPrintParamsPtr ScriptedPrintParams::Clone() const {}

template <typename T, ScriptedPrintParams::EnableIfSame<T>*>
bool ScriptedPrintParams::Equals(const T& other_struct) const {}

template <typename T, ScriptedPrintParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}
template <typename StructPtrType>
PrintWithParamsResultDataPtr PrintWithParamsResultData::Clone() const {}

template <typename T, PrintWithParamsResultData::EnableIfSame<T>*>
bool PrintWithParamsResultData::Equals(const T& other_struct) const {}

template <typename T, PrintWithParamsResultData::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {}


}  // printing::mojom

namespace mojo {


template <>
struct  StructTraits<::printing::mojom::PreviewIds::DataView,
                                         ::printing::mojom::PreviewIdsPtr> {};


template <>
struct  StructTraits<::printing::mojom::RequestPrintPreviewParams::DataView,
                                         ::printing::mojom::RequestPrintPreviewParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::PrintFrameContentParams::DataView,
                                         ::printing::mojom::PrintFrameContentParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::OptionsFromDocumentParams::DataView,
                                         ::printing::mojom::OptionsFromDocumentParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::DidPrintContentParams::DataView,
                                         ::printing::mojom::DidPrintContentParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::DidStartPreviewParams::DataView,
                                         ::printing::mojom::DidStartPreviewParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::DidPreviewPageParams::DataView,
                                         ::printing::mojom::DidPreviewPageParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::DidPreviewDocumentParams::DataView,
                                         ::printing::mojom::DidPreviewDocumentParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::PrintParams::DataView,
                                         ::printing::mojom::PrintParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::PrintPagesParams::DataView,
                                         ::printing::mojom::PrintPagesParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::DidPrintDocumentParams::DataView,
                                         ::printing::mojom::DidPrintDocumentParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::ScriptedPrintParams::DataView,
                                         ::printing::mojom::ScriptedPrintParamsPtr> {};


template <>
struct  StructTraits<::printing::mojom::PrintWithParamsResultData::DataView,
                                         ::printing::mojom::PrintWithParamsResultDataPtr> {};


template <>
struct  UnionTraits<::printing::mojom::PrintWithParamsResult::DataView,
                                        ::printing::mojom::PrintWithParamsResultPtr> {};

}  // namespace mojo

#endif  // COMPONENTS_PRINTING_COMMON_PRINT_MOJOM_H_