using StardewModdingAPI;
namespace TrainerMod.Framework.Commands
{
/// A TrainerMod command to register.
internal interface ITrainerCommand
{
/*********
** Accessors
*********/
/// The command name the user must type.
string Name { get; }
/// The command description.
string Description { get; }
/// Whether the command needs to perform logic when the game updates.
bool NeedsUpdate { get; }
/*********
** Public methods
*********/
/// Handle the command.
/// Writes messages to the console and log file.
/// The command name.
/// The command arguments.
void Handle(IMonitor monitor, string command, ArgumentParser args);
/// Perform any logic needed on update tick.
/// Writes messages to the console and log file.
void Update(IMonitor monitor);
}
}