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

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class ServerLevel {

#define AFTER_EXTRA

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

public:
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_SERVERLEVEL
    MCVAPI void addEntryToTagCache(std::string const &);
    MCVAPI void clearTagCache();
    MCVAPI void decrementTagCache(std::string const &, class TagRegistry<struct IDType<struct LevelTagIDType>, struct IDType<struct LevelTagSetIDType>> &);
    MCVAPI void dropEntryFromTagCache(std::string const &);
    MCVAPI class ResourcePackManager * getClientResourcePackManager() const;
    MCVAPI class LevelEventCoordinator & getLevelEventCoordinator();
    MCVAPI class PositionTrackingDB::PositionTrackingDBServer * getPositionTrackerDBServer() const;
    MCVAPI class ResourcePackManager * getServerResourcePackManager() const;
    MCVAPI class TradeTables * getTradeTables();
    MCVAPI void incrementTagCache(std::string const &, class TagRegistry<struct IDType<struct LevelTagIDType>, struct IDType<struct LevelTagSetIDType>> &);
    MCVAPI bool initialize(std::string const &, class LevelSettings const &, class LevelData *, std::string const *);
    MCVAPI void loadFunctionManager();
    MCVAPI void runCommand(class HashedString const &, class CommandOrigin &, enum CommandOriginSystem, enum CurrentCmdVersion);
    MCVAPI void saveAdditionalData();
    MCVAPI void setCommandsEnabled(bool);
    MCVAPI void setDifficulty(enum Difficulty);
    MCVAPI void setWorldTemplateOptionsUnlocked();
    MCVAPI void tick();
    MCVAPI void updateSleepingPlayerList();
#endif
    MCAPI ServerLevel(class gsl::not_null<class Bedrock::NonOwnerPointer<class SoundPlayerInterface>> const &, std::unique_ptr<class LevelStorage>, std::unique_ptr<class LevelLooseFileStorage>, class IMinecraftEventing &, class ResourcePackManager &, class ResourcePackManager &, class StructureManager &, class MinecraftCommands &, class Scheduler &, class IEntityRegistryOwner &, std::unique_ptr<class BlockComponentFactory>, std::unique_ptr<class BlockDefinitionGroup>);

//protected:
    MCAPI void _registerScoreboardCallbacks(class ServerScoreboard &);
    MCAPI void stopWeather();

protected:

};