Добавьте файлы проекта.
This commit is contained in:
48
BotPages.Core/Context/UpdateContext.cs
Normal file
48
BotPages.Core/Context/UpdateContext.cs
Normal file
@@ -0,0 +1,48 @@
|
||||
namespace BotPages.Core
|
||||
{
|
||||
/// <summary>
|
||||
/// Универсальный контекст обновления, независимый от транспорта.
|
||||
/// </summary>
|
||||
public sealed class UpdateContext
|
||||
{
|
||||
/// <summary>
|
||||
/// Клиент транспорта для отправки сообщений/файлов.
|
||||
/// </summary>
|
||||
public required IChatClient Client { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Контекст чата.
|
||||
/// </summary>
|
||||
public required ChatContext Chat { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Контекст пользователя.
|
||||
/// </summary>
|
||||
public required UserContext User { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Текст сообщения или полезная нагрузка колбэка, если доступна.
|
||||
/// </summary>
|
||||
public string? Text { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Список полученных файлов (если транспорт поддерживает).
|
||||
/// </summary>
|
||||
public IReadOnlyList<FileDescriptor>? IncomingFiles { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Сырой объект обновления транспорта (например, Telegram.Update).
|
||||
/// </summary>
|
||||
public object? RawUpdate { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Сервис навигации страниц.
|
||||
/// </summary>
|
||||
public required INavigationService Nav { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Хранилище состояния пользователя.
|
||||
/// </summary>
|
||||
public required IStateStore State { get; init; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user