#ifndef SERVICES_WEBNN_PUBLIC_MOJOM_WEBNN_GRAPH_MOJOM_BLINK_FORWARD_H_
#define SERVICES_WEBNN_PUBLIC_MOJOM_WEBNN_GRAPH_MOJOM_BLINK_FORWARD_H_
#include <stdint.h>
#include "mojo/public/cpp/bindings/struct_forward.h"
#include "mojo/public/cpp/bindings/deprecated_interface_types_forward.h"
#include "mojo/public/interfaces/bindings/native_struct.mojom-forward.h"
namespace webnn::mojom {
enum class DataType : int32_t;
enum class RecurrentNetworkActivation : int32_t;
enum class RecurrentNetworkDirection : int32_t;
enum class GruWeightLayout : int32_t;
enum class LstmWeightLayout : int32_t;
enum class Operand_Kind : int32_t;
enum class ArgMinMax_Kind : int32_t;
enum class Conv2d_Kind : int32_t;
enum class ElementWiseBinary_Kind : int32_t;
enum class ElementWiseUnary_Kind : int32_t;
enum class Reduce_Kind : int32_t;
enum class Pool2d_Kind : int32_t;
enum class Resample2d_InterpolationMode : int32_t;
class WebNNGraphInterfaceBase;
}
namespace webnn::mojom::blink {
DataType;
RecurrentNetworkActivation;
RecurrentNetworkDirection;
GruWeightLayout;
LstmWeightLayout;
WebNNGraphInterfaceBase;
class OperandDescriptor;
OperandDescriptorPtr;
class Operand;
OperandPtr;
class ArgMinMax;
ArgMinMaxPtr;
class BatchNormalization;
BatchNormalizationPtr;
class Clamp;
ClampPtr;
class Concat;
ConcatPtr;
class Size2d;
Size2dPtr;
class Padding2d;
Padding2dPtr;
class Conv2d;
Conv2dPtr;
class ElementWiseBinary;
ElementWiseBinaryPtr;
class ElementWiseUnary;
ElementWiseUnaryPtr;
class Expand;
ExpandPtr;
class ConstantPadding;
ConstantPaddingPtr;
class EdgePadding;
EdgePaddingPtr;
class ReflectionPadding;
ReflectionPaddingPtr;
class SymmetricPadding;
SymmetricPaddingPtr;
class InstanceNormalization;
InstanceNormalizationPtr;
class Matmul;
MatmulPtr;
class Pad;
PadPtr;
class Reduce;
ReducePtr;
class Pool2d;
Pool2dPtr;
class StartAndSize;
StartAndSizePtr;
class Slice;
SlicePtr;
class Elu;
EluPtr;
class Gather;
GatherPtr;
class GatherElements;
GatherElementsPtr;
class Gelu;
GeluPtr;
class Gru;
GruPtr;
class GruCell;
GruCellPtr;
class Gemm;
GemmPtr;
class HardSigmoid;
HardSigmoidPtr;
class HardSwish;
HardSwishPtr;
class LayerNormalization;
LayerNormalizationPtr;
class LeakyRelu;
LeakyReluPtr;
class Linear;
LinearPtr;
class Lstm;
LstmPtr;
class LstmCell;
LstmCellPtr;
class Prelu;
PreluPtr;
class Relu;
ReluPtr;
class Reshape;
ReshapePtr;
class Sigmoid;
SigmoidPtr;
class Softmax;
SoftmaxPtr;
class Softplus;
SoftplusPtr;
class Softsign;
SoftsignPtr;
class Split;
SplitPtr;
class Tanh;
TanhPtr;
class Transpose;
TransposePtr;
class Triangular;
TriangularPtr;
class Resample2d;
Resample2dPtr;
class Where;
WherePtr;
class GraphInfo;
GraphInfoPtr;
class PaddingMode;
PaddingModePtr;
class Operation;
OperationPtr;
class ComputeResult;
ComputeResultPtr;
class WebNNGraph;
}
#endif