blob: 941d69e98ce0acf49e74e44494bfce42f7829c8e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
using System.Collections.Frozen;
using System.Collections.Immutable;
using Microsoft.Extensions.DependencyInjection;
namespace LibMatrix.Utilities.Bot.Interfaces;
public interface ICommand {
public string Name { get; }
public string[]? Aliases { get; }
public string Description { get; }
public bool Unlisted { get; }
public Task<bool> CanInvoke(CommandContext ctx) => Task.FromResult(true);
public Task Invoke(CommandContext ctx);
}
public interface ICommand<T> : ICommand where T : ICommandGroup { }
public interface ICommandGroup : ICommand { }
public interface ICommandGroup<T> : ICommandGroup where T : ICommandGroup { }
|