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

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class ScriptCommandOrigin : public CommandOrigin {

#define AFTER_EXTRA

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

public:
    /*0*/ virtual ~ScriptCommandOrigin();
    /*1*/ virtual std::string const & getRequestId() const;
    /*2*/ virtual std::string getName() const;
    /*3*/ virtual class BlockPos getBlockPosition() const;
    /*4*/ virtual class Vec3 getWorldPosition() const;
    /*5*/ virtual class Level * getLevel() const;
    /*6*/ virtual class Dimension * getDimension() const;
    /*7*/ virtual class Actor * getEntity() const;
    /*8*/ virtual enum CommandPermissionLevel getPermissionsLevel() const;
    /*9*/ virtual std::unique_ptr<class CommandOrigin> clone() const;
    /*16*/ virtual bool canUseCommandsWithoutCheatsEnabled() const;
    /*17*/ virtual bool isSelectorExpansionAllowed() const;
    /*21*/ virtual enum CommandOriginType getOriginType() const;
    /*24*/ virtual void handleCommandOutputCallback(class Json::Value &&) const;
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_SCRIPTCOMMANDORIGIN
#endif
    MCAPI ScriptCommandOrigin(class ServerLevel &, class ScriptEngine &, unsigned int);

};