text: // Autogenerated from CppHeaderCreator
  // Created by Sc2ad
  // =========================================================================
  #pragma once
  // Begin includes
  #include "beatsaber-hook/shared/utils/typedefs.h"
  #include "beatsaber-hook/shared/utils/byref.hpp"
  // Including type: HMUI.HoverHintController
  #include "HMUI/HoverHintController.hpp"
  // Including type: System.Collections.Generic.IEnumerator`1
  #include "System/Collections/Generic/IEnumerator_1.hpp"
  #include "beatsaber-hook/shared/utils/il2cpp-utils-methods.hpp"
  #include "beatsaber-hook/shared/utils/il2cpp-utils-properties.hpp"
  #include "beatsaber-hook/shared/utils/il2cpp-utils-fields.hpp"
  #include "beatsaber-hook/shared/utils/utils.h"
  // Completed includes
  // Begin forward declares
  // Forward declaring namespace: HMUI
  namespace HMUI {
    // Forward declaring type: HoverHint
    class HoverHint;
  }
  // Completed forward declares
  #include "beatsaber-hook/shared/utils/il2cpp-type-check.hpp"
  NEED_NO_BOX(::HMUI::HoverHintController::$ShowHintAfterDelay$d__10);
  DEFINE_IL2CPP_ARG_TYPE(::HMUI::HoverHintController::$ShowHintAfterDelay$d__10*, "HMUI", "HoverHintController/<ShowHintAfterDelay>d__10");
  // Type namespace: HMUI
  namespace HMUI {
    // Size: 0x38
    #pragma pack(push, 1)
    // Autogenerated type: HMUI.HoverHintController/HMUI.<ShowHintAfterDelay>d__10
    // [TokenAttribute] Offset: FFFFFFFF
    // [CompilerGeneratedAttribute] Offset: FFFFFFFF
    class HoverHintController::$ShowHintAfterDelay$d__10 : public ::Il2CppObject/*, public ::System::Collections::Generic::IEnumerator_1<::Il2CppObject*>*/ {
      public:
      #ifdef USE_CODEGEN_FIELDS
      public:
      #else
      #ifdef CODEGEN_FIELD_ACCESSIBILITY
      CODEGEN_FIELD_ACCESSIBILITY:
      #else
      protected:
      #endif
      #endif
      // private System.Int32 <>1__state
      // Size: 0x4
      // Offset: 0x10
      int $$1__state;
      // Field size check
      static_assert(sizeof(int) == 0x4);
      // Padding between fields: $$1__state and: $$2__current
      char __padding0[0x4] = {};
      // private System.Object <>2__current
      // Size: 0x8
      // Offset: 0x18
      ::Il2CppObject* $$2__current;
      // Field size check
      static_assert(sizeof(::Il2CppObject*) == 0x8);
      // public System.Single delay
      // Size: 0x4
      // Offset: 0x20
      float delay;
      // Field size check
      static_assert(sizeof(float) == 0x4);
      // Padding between fields: delay and: hoverHint
      char __padding2[0x4] = {};
      // public HMUI.HoverHint hoverHint
      // Size: 0x8
      // Offset: 0x28
      ::HMUI::HoverHint* hoverHint;
      // Field size check
      static_assert(sizeof(::HMUI::HoverHint*) == 0x8);
      // public HMUI.HoverHintController <>4__this
      // Size: 0x8
      // Offset: 0x30
      ::HMUI::HoverHintController* $$4__this;
      // Field size check
      static_assert(sizeof(::HMUI::HoverHintController*) == 0x8);
      public:
      // Creating interface conversion operator: operator ::System::Collections::Generic::IEnumerator_1<::Il2CppObject*>
      operator ::System::Collections::Generic::IEnumerator_1<::Il2CppObject*>() noexcept {
        return *reinterpret_cast<::System::Collections::Generic::IEnumerator_1<::Il2CppObject*>*>(this);
      }
      // Get instance field reference: private System.Int32 <>1__state
      int& dyn_$$1__state();
      // Get instance field reference: private System.Object <>2__current
      ::Il2CppObject*& dyn_$$2__current();
      // Get instance field reference: public System.Single delay
      float& dyn_delay();
      // Get instance field reference: public HMUI.HoverHint hoverHint
      ::HMUI::HoverHint*& dyn_hoverHint();
      // Get instance field reference: public HMUI.HoverHintController <>4__this
      ::HMUI::HoverHintController*& dyn_$$4__this();
      // private System.Object System.Collections.Generic.IEnumerator<System.Object>.get_Current()
      // Offset: 0x16ECDD4
      ::Il2CppObject* System_Collections_Generic_IEnumerator$System_Object$_get_Current();
      // private System.Object System.Collections.IEnumerator.get_Current()
      // Offset: 0x16ECE3C
      ::Il2CppObject* System_Collections_IEnumerator_get_Current();
      // public System.Void .ctor(System.Int32 <>1__state)
      // Offset: 0x16EC744
      template<::il2cpp_utils::CreationType creationType = ::il2cpp_utils::CreationType::Temporary>
      static HoverHintController::$ShowHintAfterDelay$d__10* New_ctor(int $$1__state) {
        static auto ___internal__logger = ::Logger::get().WithContext("::HMUI::HoverHintController::$ShowHintAfterDelay$d__10::.ctor");
        return THROW_UNLESS((::il2cpp_utils::New<HoverHintController::$ShowHintAfterDelay$d__10*, creationType>($$1__state)));
      }
      // private System.Void System.IDisposable.Dispose()
      // Offset: 0x16ECCDC
      void System_IDisposable_Dispose();
      // private System.Boolean MoveNext()
      // Offset: 0x16ECCE0
      bool MoveNext();
      // private System.Void System.Collections.IEnumerator.Reset()
      // Offset: 0x16ECDDC
      void System_Collections_IEnumerator_Reset();
    }; // HMUI.HoverHintController/HMUI.<ShowHintAfterDelay>d__10
    #pragma pack(pop)
    static check_size<sizeof(HoverHintController::$ShowHintAfterDelay$d__10), 48 + sizeof(::HMUI::HoverHintController*)> __HMUI_HoverHintController_$ShowHintAfterDelay$d__10SizeCheck;
    static_assert(sizeof(HoverHintController::$ShowHintAfterDelay$d__10) == 0x38);
  }
  #include "beatsaber-hook/shared/utils/il2cpp-utils-methods.hpp"
  // Writing MetadataGetter for method: HMUI::HoverHintController::$ShowHintAfterDelay$d__10::System_Collections_Generic_IEnumerator$System_Object$_get_Current
  // Il2CppName: System.Collections.Generic.IEnumerator<System.Object>.get_Current
  template<>
  struct ::il2cpp_utils::il2cpp_type_check::MetadataGetter<static_cast<::Il2CppObject* (HMUI::HoverHintController::$ShowHintAfterDelay$d__10::*)()>(&HMUI::HoverHintController::$ShowHintAfterDelay$d__10::System_Collections_Generic_IEnumerator$System_Object$_get_Current)> {
    static const MethodInfo* get() {
      return ::il2cpp_utils::FindMethod(classof(HMUI::HoverHintController::$ShowHintAfterDelay$d__10*), "System.Collections.Generic.IEnumerator<System.Object>.get_Current", std::vector<Il2CppClass*>(), ::std::vector<const Il2CppType*>{});
    }
  };
  // Writing MetadataGetter for method: HMUI::HoverHintController::$ShowHintAfterDelay$d__10::System_Collections_IEnumerator_get_Current
  // Il2CppName: System.Collections.IEnumerator.get_Current
  template<>
  struct ::il2cpp_utils::il2cpp_type_check::MetadataGetter<static_cast<::Il2CppObject* (HMUI::HoverHintController::$ShowHintAfterDelay$d__10::*)()>(&HMUI::HoverHintController::$ShowHintAfterDelay$d__10::System_Collections_IEnumerator_get_Current)> {
    static const MethodInfo* get() {
      return ::il2cpp_utils::FindMethod(classof(HMUI::HoverHintController::$ShowHintAfterDelay$d__10*), "System.Collections.IEnumerator.get_Current", std::vector<Il2CppClass*>(), ::std::vector<const Il2CppType*>{});
    }
  };
  // Writing MetadataGetter for method: HMUI::HoverHintController::$ShowHintAfterDelay$d__10::New_ctor
  // Il2CppName: .ctor
  // Cannot get method pointer of value based method overload from template for constructor!
  // Try using FindMethod instead!
  // Writing MetadataGetter for method: HMUI::HoverHintController::$ShowHintAfterDelay$d__10::System_IDisposable_Dispose
  // Il2CppName: System.IDisposable.Dispose
  template<>
  struct ::il2cpp_utils::il2cpp_type_check::MetadataGetter<static_cast<void (HMUI::HoverHintController::$ShowHintAfterDelay$d__10::*)()>(&HMUI::HoverHintController::$ShowHintAfterDelay$d__10::System_IDisposable_Dispose)> {
    static const MethodInfo* get() {
      return ::il2cpp_utils::FindMethod(classof(HMUI::HoverHintController::$ShowHintAfterDelay$d__10*), "System.IDisposable.Dispose", std::vector<Il2CppClass*>(), ::std::vector<const Il2CppType*>{});
    }
  };
  // Writing MetadataGetter for method: HMUI::HoverHintController::$ShowHintAfterDelay$d__10::MoveNext
  // Il2CppName: MoveNext
  template<>
  struct ::il2cpp_utils::il2cpp_type_check::MetadataGetter<static_cast<bool (HMUI::HoverHintController::$ShowHintAfterDelay$d__10::*)()>(&HMUI::HoverHintController::$ShowHintAfterDelay$d__10::MoveNext)> {
    static const MethodInfo* get() {
      return ::il2cpp_utils::FindMethod(classof(HMUI::HoverHintController::$ShowHintAfterDelay$d__10*), "MoveNext", std::vector<Il2CppClass*>(), ::std::vector<const Il2CppType*>{});
    }
  };
  // Writing MetadataGetter for method: HMUI::HoverHintController::$ShowHintAfterDelay$d__10::System_Collections_IEnumerator_Reset
  // Il2CppName: System.Collections.IEnumerator.Reset
  template<>
  struct ::il2cpp_utils::il2cpp_type_check::MetadataGetter<static_cast<void (HMUI::HoverHintController::$ShowHintAfterDelay$d__10::*)()>(&HMUI::HoverHintController::$ShowHintAfterDelay$d__10::System_Collections_IEnumerator_Reset)> {
    static const MethodInfo* get() {
      return ::il2cpp_utils::FindMethod(classof(HMUI::HoverHintController::$ShowHintAfterDelay$d__10*), "System.Collections.IEnumerator.Reset", std::vector<Il2CppClass*>(), ::std::vector<const Il2CppType*>{});
    }
  };
  