// This Header is auto generated by BDSLiteLoader Toolchain
#pragma once
#define AUTO_GENERATED
#include "../Global.h"

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class Hopper {

#define AFTER_EXTRA

#undef AFTER_EXTRA
#ifndef DISABLE_CONSTRUCTOR_PREVENTION_HOPPER
public:
    class Hopper& operator=(class Hopper const &) = delete;
    Hopper(class Hopper const &) = delete;
    Hopper() = delete;
#endif

public:
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_HOPPER
#endif

//protected:
    MCAPI bool _addItem(class Container &, class ItemActor &);
    MCAPI bool _addItem(class BlockSource &, class Container &, class ItemStack &, int, int);
    MCAPI class Container * _getContainerInBlock(class BlockSource &, class Vec3 const &);
    MCAPI std::vector<class Container *> _getContainersAt(class BlockSource &, class Vec3 const &);
    MCAPI class ItemActor * _getItemAt(class BlockSource &, class Vec3 const &);
    MCAPI bool _isEmptyContainer(class Container &, int);
    MCAPI bool _isFullContainer(class BlockSource &, class Container &, int);
    MCAPI bool _pullInItems(class BlockSource &, class Container &, class Vec3 const &);
    MCAPI bool _pushOutItems(class BlockSource &, class Container &, class Vec3 const &, int);
    MCAPI bool _tryMoveInItem(class BlockSource &, class Container &, class ItemStack &, int, int, int);
    MCAPI bool _tryPushToComposter(class BlockSource &, class Container &, class BlockPos, int);
    MCAPI bool _tryTakeInItemFromSlot(class BlockSource &, class Container &, class Container &, int, int);

protected:

};