IW4M-Admin/SharedLibraryCore/Interfaces/IPluginImporter.cs
2023-04-04 18:24:13 -05:00

24 lines
794 B
C#

using System;
using System.Collections.Generic;
namespace SharedLibraryCore.Interfaces
{
/// <summary>
/// defines the capabilities of the plugin importer
/// </summary>
public interface IPluginImporter
{
/// <summary>
/// discovers C# assembly plugin and command types
/// </summary>
/// <returns>tuple of IPlugin implementation type definitions, and IManagerCommand type definitions</returns>
(IEnumerable<Type>, IEnumerable<Type>, IEnumerable<Type>) DiscoverAssemblyPluginImplementations();
/// <summary>
/// discovers the script plugins
/// </summary>
/// <returns>initialized script plugin collection</returns>
IEnumerable<(Type, string)> DiscoverScriptPlugins();
}
}