mirror of
https://github.com/Bubuni-Team/telegram-bot.git
synced 2026-07-31 00:29:24 +03:00
[core] Massive setting system update
- Get rid of attribute crap. Now only interface is required - Rename canUse to isAdmin in `Bot.IsUserAdminAsync` to match the actual meaning of variable - Made `AnswerQuery` reusable by moving it from ContentStore to Core's CommonHandler - Chat Settings edit frontend (inline keyboard) - Rename NsfwOption to AllowNsfw and move it to ContentStore module - Remove option backend testing commands - Add KarmaMode option as an example of Select option type
This commit is contained in:
+12
-2
@@ -1,10 +1,20 @@
|
||||
using System.Runtime.Serialization;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Kruzya.TelegramBot.Core.Options;
|
||||
|
||||
public interface IOption<TValue>
|
||||
public interface IOption
|
||||
{
|
||||
public string OptionId { get; }
|
||||
public string OptionName { get; }
|
||||
public OptionType OptionType { get; }
|
||||
public List<SelectChoice> ChoiceList { get; }
|
||||
}
|
||||
|
||||
public interface IOption<TValue> : IOption
|
||||
{
|
||||
public TValue DefaultValue { get; }
|
||||
|
||||
public Task<TValue> GetValueAsync(long chatId);
|
||||
public Task SetValueAsync(long chatId, TValue value);
|
||||
}
|
||||
Reference in New Issue
Block a user