chromium/out/Default/gen/services/webnn/public/mojom/webnn_graph.mojom-shared-internal.h

// services/webnn/public/mojom/webnn_graph.mojom-shared-internal.h is auto generated by mojom_bindings_generator.py, do not edit

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

#ifndef SERVICES_WEBNN_PUBLIC_MOJOM_WEBNN_GRAPH_MOJOM_SHARED_INTERNAL_H_
#define SERVICES_WEBNN_PUBLIC_MOJOM_WEBNN_GRAPH_MOJOM_SHARED_INTERNAL_H_
#include "mojo/public/cpp/bindings/lib/array_internal.h"
#include "mojo/public/cpp/bindings/lib/bindings_internal.h"
#include "mojo/public/cpp/bindings/lib/map_data_internal.h"
#include "mojo/public/cpp/bindings/lib/buffer.h"
#include "mojo/public/mojom/base/big_buffer.mojom-shared-internal.h"
#include "services/webnn/public/mojom/webnn_context_properties.mojom-shared-internal.h"
#include "services/webnn/public/mojom/webnn_error.mojom-shared-internal.h"
#include "third_party/blink/public/mojom/tokens/tokens.mojom-shared-internal.h"
#include "mojo/public/cpp/bindings/lib/native_enum_data.h"
#include "mojo/public/interfaces/bindings/native_struct.mojom-shared-internal.h"
#include "base/component_export.h"



namespace mojo {
namespace internal {
class ValidationContext;
}
}


namespace webnn::mojom {
namespace internal {
class OperandDescriptor_Data;
class Operand_Data;
class ArgMinMax_Data;
class BatchNormalization_Data;
class Clamp_Data;
class Concat_Data;
class Size2d_Data;
class Padding2d_Data;
class Conv2d_Data;
class ElementWiseBinary_Data;
class ElementWiseUnary_Data;
class Expand_Data;
class ConstantPadding_Data;
class EdgePadding_Data;
class ReflectionPadding_Data;
class SymmetricPadding_Data;
class InstanceNormalization_Data;
class Matmul_Data;
class Pad_Data;
class Reduce_Data;
class Pool2d_Data;
class StartAndSize_Data;
class Slice_Data;
class Elu_Data;
class Gather_Data;
class GatherElements_Data;
class Gelu_Data;
class Gru_Data;
class GruCell_Data;
class Gemm_Data;
class HardSigmoid_Data;
class HardSwish_Data;
class LayerNormalization_Data;
class LeakyRelu_Data;
class Linear_Data;
class Lstm_Data;
class LstmCell_Data;
class Prelu_Data;
class Relu_Data;
class Reshape_Data;
class Sigmoid_Data;
class Softmax_Data;
class Softplus_Data;
class Softsign_Data;
class Split_Data;
class Tanh_Data;
class Transpose_Data;
class Triangular_Data;
class Resample2d_Data;
class Where_Data;
class GraphInfo_Data;
class PaddingMode_Data;
class Operation_Data;
class ComputeResult_Data;

struct DataType_Data {};

struct RecurrentNetworkActivation_Data {};

struct RecurrentNetworkDirection_Data {};

struct GruWeightLayout_Data {};

struct LstmWeightLayout_Data {};

struct Operand_Kind_Data {};

struct ArgMinMax_Kind_Data {};

struct Conv2d_Kind_Data {};

struct ElementWiseBinary_Kind_Data {};

struct ElementWiseUnary_Kind_Data {};

struct Reduce_Kind_Data {};

struct Pool2d_Kind_Data {};

struct Resample2d_InterpolationMode_Data {};

#pragma pack(push, 1)


class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) PaddingMode_Data {};
static_assert;


class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Operation_Data {};
static_assert;


class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) ComputeResult_Data {};
static_assert;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) OperandDescriptor_Data {};
static_assert;
// Used by OperandDescriptor::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct OperandDescriptor_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    OperandDescriptor_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Operand_Data {};
static_assert;
// Used by Operand::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Operand_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Operand_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) ArgMinMax_Data {};
static_assert;
// Used by ArgMinMax::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct ArgMinMax_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    ArgMinMax_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) BatchNormalization_Data {};
static_assert;
// Used by BatchNormalization::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct BatchNormalization_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    BatchNormalization_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Clamp_Data {};
static_assert;
// Used by Clamp::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Clamp_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Clamp_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Concat_Data {};
static_assert;
// Used by Concat::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Concat_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Concat_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Size2d_Data {};
static_assert;
// Used by Size2d::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Size2d_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Size2d_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Padding2d_Data {};
static_assert;
// Used by Padding2d::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Padding2d_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Padding2d_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Conv2d_Data {};
static_assert;
// Used by Conv2d::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Conv2d_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Conv2d_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) ElementWiseBinary_Data {};
static_assert;
// Used by ElementWiseBinary::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct ElementWiseBinary_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    ElementWiseBinary_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) ElementWiseUnary_Data {};
static_assert;
// Used by ElementWiseUnary::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct ElementWiseUnary_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    ElementWiseUnary_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Expand_Data {};
static_assert;
// Used by Expand::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Expand_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Expand_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) ConstantPadding_Data {};
static_assert;
// Used by ConstantPadding::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct ConstantPadding_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    ConstantPadding_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) EdgePadding_Data {};
static_assert;
// Used by EdgePadding::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct EdgePadding_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    EdgePadding_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) ReflectionPadding_Data {};
static_assert;
// Used by ReflectionPadding::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct ReflectionPadding_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    ReflectionPadding_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) SymmetricPadding_Data {};
static_assert;
// Used by SymmetricPadding::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct SymmetricPadding_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    SymmetricPadding_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) InstanceNormalization_Data {};
static_assert;
// Used by InstanceNormalization::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct InstanceNormalization_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    InstanceNormalization_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Matmul_Data {};
static_assert;
// Used by Matmul::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Matmul_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Matmul_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Pad_Data {};
static_assert;
// Used by Pad::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Pad_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Pad_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Reduce_Data {};
static_assert;
// Used by Reduce::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Reduce_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Reduce_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Pool2d_Data {};
static_assert;
// Used by Pool2d::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Pool2d_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Pool2d_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) StartAndSize_Data {};
static_assert;
// Used by StartAndSize::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct StartAndSize_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    StartAndSize_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Slice_Data {};
static_assert;
// Used by Slice::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Slice_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Slice_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Elu_Data {};
static_assert;
// Used by Elu::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Elu_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Elu_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Gather_Data {};
static_assert;
// Used by Gather::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Gather_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Gather_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) GatherElements_Data {};
static_assert;
// Used by GatherElements::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct GatherElements_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    GatherElements_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Gelu_Data {};
static_assert;
// Used by Gelu::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Gelu_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Gelu_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Gru_Data {};
static_assert;
// Used by Gru::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Gru_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Gru_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) GruCell_Data {};
static_assert;
// Used by GruCell::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct GruCell_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    GruCell_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Gemm_Data {};
static_assert;
// Used by Gemm::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Gemm_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Gemm_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) HardSigmoid_Data {};
static_assert;
// Used by HardSigmoid::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct HardSigmoid_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    HardSigmoid_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) HardSwish_Data {};
static_assert;
// Used by HardSwish::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct HardSwish_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    HardSwish_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) LayerNormalization_Data {};
static_assert;
// Used by LayerNormalization::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct LayerNormalization_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    LayerNormalization_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) LeakyRelu_Data {};
static_assert;
// Used by LeakyRelu::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct LeakyRelu_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    LeakyRelu_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Linear_Data {};
static_assert;
// Used by Linear::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Linear_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Linear_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Lstm_Data {};
static_assert;
// Used by Lstm::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Lstm_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Lstm_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) LstmCell_Data {};
static_assert;
// Used by LstmCell::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct LstmCell_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    LstmCell_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Prelu_Data {};
static_assert;
// Used by Prelu::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Prelu_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Prelu_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Relu_Data {};
static_assert;
// Used by Relu::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Relu_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Relu_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Reshape_Data {};
static_assert;
// Used by Reshape::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Reshape_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Reshape_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Sigmoid_Data {};
static_assert;
// Used by Sigmoid::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Sigmoid_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Sigmoid_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Softmax_Data {};
static_assert;
// Used by Softmax::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Softmax_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Softmax_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Softplus_Data {};
static_assert;
// Used by Softplus::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Softplus_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Softplus_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Softsign_Data {};
static_assert;
// Used by Softsign::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Softsign_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Softsign_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Split_Data {};
static_assert;
// Used by Split::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Split_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Split_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Tanh_Data {};
static_assert;
// Used by Tanh::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Tanh_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Tanh_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Transpose_Data {};
static_assert;
// Used by Transpose::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Transpose_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Transpose_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Triangular_Data {};
static_assert;
// Used by Triangular::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Triangular_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Triangular_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Resample2d_Data {};
static_assert;
// Used by Resample2d::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Resample2d_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Resample2d_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) Where_Data {};
static_assert;
// Used by Where::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct Where_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    Where_UnserializedMessageContext<UserType, DataView>::kMessageTag =;
class COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) GraphInfo_Data {};
static_assert;
// Used by GraphInfo::WrapAsMessage to lazily serialize the struct.
template <typename UserType, typename DataView>
struct GraphInfo_UnserializedMessageContext
    : public mojo::internal::UnserializedMessageContext {};

template <typename UserType, typename DataView>
const mojo::internal::UnserializedMessageContext::Tag
    GraphInfo_UnserializedMessageContext<UserType, DataView>::kMessageTag =;

#pragma pack(pop)

}  // namespace internal

}  // webnn::mojom

#endif  // SERVICES_WEBNN_PUBLIC_MOJOM_WEBNN_GRAPH_MOJOM_SHARED_INTERNAL_H_