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

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class BlockEventListener {

#define AFTER_EXTRA

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

public:
    /*0*/ virtual ~BlockEventListener();
    /*1*/ virtual void __unk_vfn_1();
    /*2*/ virtual enum EventResult onBlockDestroyedByPlayer(class Player &, std::string, class BlockPos const &);
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_BLOCKEVENTLISTENER
    MCVAPI enum EventResult onBlockDestructionStarted(class Player &, class BlockPos const &);
    MCVAPI enum EventResult onBlockDestructionStopped(class Player &, class BlockPos const &, int);
    MCVAPI enum EventResult onBlockExploded(class BlockPos const &, class Block const &, class Actor *);
    MCVAPI enum EventResult onBlockInteractedWith(class Player &, class BlockPos const &);
    MCVAPI enum EventResult onBlockModified(class BlockPos const &, class Block const &, class Block const &);
    MCVAPI enum EventResult onBlockMovedByPiston(class BlockPos const &, class BlockPos const &, enum PistonBlockActor::PistonState);
    MCVAPI enum EventResult onBlockPlacedByPlayer(class Player &, class Block const &, class BlockPos const &, bool);
    MCVAPI enum EventResult onUnknownBlockReceived(class Level &, struct NewBlockID const &, unsigned short);
#endif

};