using Discord; using NadekoBot; namespace NadekoBot.Medusa; /// /// Commands which take this class as a first parameter can be executed in both DMs and Servers /// public abstract class AnyContext { /// /// Channel from the which the command is invoked /// public abstract IMessageChannel Channel { get; } /// /// Message which triggered the command /// public abstract IUserMessage Message { get; } /// /// The user who invoked the command /// public abstract IUser User { get; } /// /// Bot user /// public abstract ISelfUser Bot { get; } /// /// Provides access to strings used by this medusa /// public abstract IMedusaStrings Strings { get; } /// /// Gets a formatted localized string using a key and arguments which should be formatted in /// /// The key of the string as specified in localization files /// Arguments (if any) to format in /// A formatted localized string public abstract string GetText(string key, object[]? args = null); }