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

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class NetherGenerator {

#define AFTER_EXTRA

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

public:
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_NETHERGENERATOR
    MCVAPI void addHardcodedSpawnAreas(class LevelChunk &);
    MCVAPI void debugRender();
    MCVAPI bool findNearestFeature(enum StructureFeatureType, class BlockPos const &, class BlockPos &);
    MCVAPI class BlockPos findSpawnPosition() const;
    MCVAPI void garbageCollectBlueprints(class buffer_span<class ChunkPos>);
    MCVAPI class BiomeArea getBiomeArea(class BoundingBox const &, unsigned int) const;
    MCVAPI enum StructureFeatureType getFeatureTypeAt(class BlockPos const &);
    MCVAPI void loadChunk(class LevelChunk &, bool);
    MCVAPI bool postProcess(class ChunkViewSource &);
    MCVAPI void postProcessMobsAt(class BlockSource &, int, int, class Random &);
    MCVAPI void prepareHeights(class BlockVolume &, class ChunkPos const &, bool);
    MCVAPI ~NetherGenerator();
#endif
    MCAPI NetherGenerator(class Dimension &, unsigned int);
    MCAPI void buildSurfaces(class BlockVolume &, class LevelChunk &, class ChunkPos const &);

//private:
    MCAPI void _makeLayers(class LevelData const &, class BiomeRegistry const &);
    MCAPI void getHeights(class std::array<float, 425> &, int, int, int);

private:

};