using JetBrains.Annotations; namespace Robust.Shared.Console { /// /// Basic interface to handle console commands. Any class implementing this will be /// registered with the console system through reflection. /// [UsedImplicitly(ImplicitUseTargetFlags.WithInheritors)] public interface IConsoleCommand { /// /// Name of the command. /// /// /// A string as identifier for this command. /// string Command { get; } /// /// Short description of the command. /// /// /// String printed as short summary in the "help" command. /// string Description { get; } /// /// Extended description for the command. /// /// /// String printed as summary when "help Command" is used. /// string Help { get; } /// /// Executes the client command. /// /// The console that executed this command. /// Unparsed text of the complete command with arguments. /// An array of all the parsed arguments. void Execute(IConsoleShell shell, string argStr, string[] args); } }