Added IPluginManager
This commit is contained in:
29
DiscordBotCore/Interfaces/PluginManager/IPluginManager.cs
Normal file
29
DiscordBotCore/Interfaces/PluginManager/IPluginManager.cs
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using DiscordBotCore.Plugin;
|
||||||
|
|
||||||
|
namespace DiscordBotCore.Interfaces.PluginManager
|
||||||
|
{
|
||||||
|
public interface IPluginManager
|
||||||
|
{
|
||||||
|
public string BaseUrl { get; set; }
|
||||||
|
public string Branch { get; set; }
|
||||||
|
|
||||||
|
Task AppendPluginToDatabase(PluginInfo pluginData);
|
||||||
|
Task CheckForUpdates();
|
||||||
|
Task ExecutePluginInstallScripts(List<OnlineScriptDependencyInfo> listOfDependencies);
|
||||||
|
string GenerateDependencyLocation(string pluginName, string dependencyName);
|
||||||
|
Task<string?> GetDependencyLocation(string dependencyName);
|
||||||
|
Task<List<PluginInfo>> GetInstalledPlugins();
|
||||||
|
Task<PluginOnlineInfo?> GetPluginDataByName(string pluginName);
|
||||||
|
Task<List<PluginOnlineInfo>?> GetPluginsList();
|
||||||
|
Task InstallPlugin(PluginOnlineInfo pluginData, IProgress<float>? installProgress);
|
||||||
|
Task<bool> IsPluginInstalled(string pluginName);
|
||||||
|
Task<bool> MarkPluginToUninstall(string pluginName);
|
||||||
|
Task RemovePluginFromDatabase(string pluginName);
|
||||||
|
Task UninstallMarkedPlugins();
|
||||||
|
|
||||||
|
Task SetDisabledStatus(string pluginName, bool status);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user