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

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class JigsawStructureRegistry {

#define AFTER_EXTRA

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

public:
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_JIGSAWSTRUCTUREREGISTRY
#endif
    MCAPI JigsawStructureRegistry();
    MCAPI class JigsawStructureActorRulesRegistry & getJigsawStructureActorRulesRegistry();
    MCAPI class JigsawStructureBlockRulesRegistry & getJigsawStructureBlockRulesRegistry();
    MCAPI class JigsawStructureBlockTagRulesRegistry & getJigsawStructureBlockTagRulesRegistry();
    MCAPI class JigsawStructureElementRegistry & getJigsawStructureElementRegistry();
    MCAPI class StructureTemplatePool const * lookupByName(std::string) const;
    MCAPI void registerPool(std::unique_ptr<class StructureTemplatePool> &&);
    MCAPI ~JigsawStructureRegistry();

//private:
    MCAPI void clear();

private:

};