Plugins: Define IPlugin and IPluginOption interfaces

This commit is contained in:
Katy Coe
2020-12-19 20:45:24 +01:00
parent 37f0610eda
commit f71cd04ec7
5 changed files with 272 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
/*
Copyright 2020 Katy Coe - http://www.djkaty.com - https://github.com/djkaty
All rights reserved.
*/
using System.Collections.Generic;
namespace Il2CppInspector.PluginAPI.V100
{
/// <summary>
/// Core interface that all plugins must implement
/// </summary>
public interface IPlugin
{
/// <summary>
/// Plugin name for CLI and unique ID
/// </summary>
public string Id { get; }
/// <summary>
/// Human-readable plugin name
/// </summary>
public string Name { get; }
/// <summary>
/// Nickname of the plugiin author
/// </summary>
public string Author { get; }
/// <summary>
/// Human-readable version string for the plugin
/// Always use lexical order: version string may be used for updates
/// </summary>
public string Version { get; }
/// <summary>
/// Description of the plugin
/// </summary>
public string Description { get; }
/// <summary>
/// Plugin options
/// </summary>
public List<IPluginOption> Options { get; }
}
}