text: // Autogenerated from CppHeaderCreator
  // Created by Sc2ad
  // =========================================================================
  #pragma once
  // Begin includes
  #include "extern/beatsaber-hook/shared/utils/typedefs.h"
  #include "extern/beatsaber-hook/shared/utils/byref.hpp"
  // Including type: System.Enum
  #include "System/Enum.hpp"
  // Completed includes
  // Type namespace: Valve.VR
  namespace Valve::VR {
    // Forward declaring type: ETextureType
    struct ETextureType;
  }
  #include "extern/beatsaber-hook/shared/utils/il2cpp-type-check.hpp"
  DEFINE_IL2CPP_ARG_TYPE(Valve::VR::ETextureType, "Valve.VR", "ETextureType");
  // Type namespace: Valve.VR
  namespace Valve::VR {
    // Size: 0x4
    #pragma pack(push, 1)
    // Autogenerated type: Valve.VR.ETextureType
    // [TokenAttribute] Offset: FFFFFFFF
    struct ETextureType/*, public System::Enum*/ {
      public:
      #ifdef USE_CODEGEN_FIELDS
      public:
      #else
      protected:
      #endif
      // public System.Int32 value__
      // Size: 0x4
      // Offset: 0x0
      int value;
      // Field size check
      static_assert(sizeof(int) == 0x4);
      public:
      // Creating value type constructor for type: ETextureType
      constexpr ETextureType(int value_ = {}) noexcept : value{value_} {}
      // Creating interface conversion operator: operator System::Enum
      operator System::Enum() noexcept {
        return *reinterpret_cast<System::Enum*>(this);
      }
      // Creating conversion operator: operator int
      constexpr operator int() const noexcept {
        return value;
      }
      // static field const value: static public Valve.VR.ETextureType DirectX
      static constexpr const int DirectX = 0;
      // Get static field: static public Valve.VR.ETextureType DirectX
      static Valve::VR::ETextureType _get_DirectX();
      // Set static field: static public Valve.VR.ETextureType DirectX
      static void _set_DirectX(Valve::VR::ETextureType value);
      // static field const value: static public Valve.VR.ETextureType OpenGL
      static constexpr const int OpenGL = 1;
      // Get static field: static public Valve.VR.ETextureType OpenGL
      static Valve::VR::ETextureType _get_OpenGL();
      // Set static field: static public Valve.VR.ETextureType OpenGL
      static void _set_OpenGL(Valve::VR::ETextureType value);
      // static field const value: static public Valve.VR.ETextureType Vulkan
      static constexpr const int Vulkan = 2;
      // Get static field: static public Valve.VR.ETextureType Vulkan
      static Valve::VR::ETextureType _get_Vulkan();
      // Set static field: static public Valve.VR.ETextureType Vulkan
      static void _set_Vulkan(Valve::VR::ETextureType value);
      // static field const value: static public Valve.VR.ETextureType IOSurface
      static constexpr const int IOSurface = 3;
      // Get static field: static public Valve.VR.ETextureType IOSurface
      static Valve::VR::ETextureType _get_IOSurface();
      // Set static field: static public Valve.VR.ETextureType IOSurface
      static void _set_IOSurface(Valve::VR::ETextureType value);
      // static field const value: static public Valve.VR.ETextureType DirectX12
      static constexpr const int DirectX12 = 4;
      // Get static field: static public Valve.VR.ETextureType DirectX12
      static Valve::VR::ETextureType _get_DirectX12();
      // Set static field: static public Valve.VR.ETextureType DirectX12
      static void _set_DirectX12(Valve::VR::ETextureType value);
      // Get instance field reference: public System.Int32 value__
      int& dyn_value__();
    }; // Valve.VR.ETextureType
    #pragma pack(pop)
    static check_size<sizeof(ETextureType), 0 + sizeof(int)> __Valve_VR_ETextureTypeSizeCheck;
    static_assert(sizeof(ETextureType) == 0x4);
  }
  #include "extern/beatsaber-hook/shared/utils/il2cpp-utils-methods.hpp"
  