<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net9.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
  </PropertyGroup>

  <ItemGroup>
    <!-- Telegram Bot Framework -->
    <PackageReference Include="Telegram.Bot" Version="19.0.0" />
    <PackageReference Include="Telegram.Bot.Extensions.Polling" Version="1.0.2" />
    
    <!-- Privacy & Security -->
    <!-- TorSharp alternative - use manual Tor configuration instead -->
    <PackageReference Include="PgpCore" Version="6.5.0" />
    
    <!-- Data Storage -->
    <PackageReference Include="LiteDB" Version="5.0.21" />
    <PackageReference Include="StackExchange.Redis" Version="2.8.16" />
    
    <!-- Dependency Injection -->
    <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.0" />
    <PackageReference Include="Microsoft.Extensions.Configuration" Version="9.0.0" />
    <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="9.0.0" />
    <PackageReference Include="Microsoft.Extensions.Hosting" Version="9.0.0" />
    <PackageReference Include="Microsoft.Extensions.Logging" Version="9.0.0" />
    <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="9.0.0" />
    <PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="9.0.0" />
    
    <!-- Background Jobs -->
    <PackageReference Include="Hangfire" Version="1.8.17" />
    <PackageReference Include="Hangfire.LiteDB" Version="0.4.1" />
    
    <!-- Utilities -->
    <PackageReference Include="QRCoder" Version="1.6.0" />
    <PackageReference Include="SixLabors.ImageSharp" Version="3.1.7" />
    <PackageReference Include="Humanizer.Core" Version="2.14.1" />
    <PackageReference Include="FluentValidation" Version="11.11.0" />
    
    <!-- Logging -->
    <PackageReference Include="Serilog" Version="4.1.0" />
    <PackageReference Include="Serilog.Extensions.Logging" Version="8.0.0" />
    <PackageReference Include="Serilog.Sinks.Console" Version="6.0.0" />
    <PackageReference Include="Serilog.Sinks.File" Version="6.0.0" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\..\LittleShop.Client\LittleShop.Client.csproj" />
  </ItemGroup>

  <ItemGroup>
    <Content Include="appsettings.json">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
  </ItemGroup>

</Project>
