using Microsoft.Extensions.Configuration;
using Telegram.Bot;
using Telegram.Bot.Types;
using Telegrator.Core;
namespace Telegrator.Hosting;
///
/// Implementation of that provides bot information.
/// Contains metadata about the Telegram bot including user details and service provider for wider filterring abilities
///
///
///
///
public class HostedTelegramBotInfo(ITelegramBotClient client, IServiceProvider services, IConfiguration configuration) : ITelegramBotInfo
{
///
public User User { get; } = client.GetMe().Result;
///
/// Provides access to services of this Hosted telegram bot
///
public IServiceProvider Services { get; } = services;
///
/// Provides access to configuration of this Hosted telegram bot
///
public IConfiguration Configuration { get; } = configuration;
}