#ifndef ITEMINFO_HPP_INCLUDED
#define ITEMINFO_HPP_INCLUDED

#include "CacheableNode.hpp"
#include "../JavaClass/Class.hpp"
#include <vector>
#include <string>
#include <cstdint>

namespace Internal
{
    class ItemInfo : public CacheableNode
    {
        public:
            ItemInfo();
            ItemInfo(const void* Obj);
            ItemInfo(const ItemInfo& I);
            static Class GetClass();

            std::vector<std::string> GetGroundActions() const;
            std::int32_t GetID() const;
            std::vector<std::string> GetInventoryActions() const;
            bool GetMembers() const;
            std::string GetName() const;
            std::int32_t GetNoteID() const;
            std::int32_t GetPrice() const;
            std::int32_t GetShiftClickIndex() const;
            std::int32_t GetSpriteID() const;
            std::vector<std::int32_t> GetStackAmounts() const;
            std::vector<std::int32_t> GetStackModelIDs() const;
            std::int32_t GetStackable() const;

    };
}

#endif // ITEMINFO_HPP_INCLUDED
