#pragma once

#include "SceneInteractionDefinitions.h"
#include "Modules/ModuleInterface.h"

class SCENE_INTERACTION_API FSceneInteractionModule : public IModuleInterface
{
public:
    /**
     * Default constructor.
     */
    FSceneInteractionModule() = default;
public:
    /**
     * Called after the module is loaded.
     */
    void StartupModule() override;

    /**
     * Called after the module is unloaded.
     */
    void ShutdownModule() override;
public:
    /**
     * Renders the scene interaction panel.
     */
    void RenderSceneInteraction();
public:
    /** The name of the module. */
    const char* GetName() override { return "SceneInteraction"; }

    /** Whether or not the module is a game module. */
    bool IsGameModule() const override { return false; }
};