using PowderCoating.Application.DTOs.AI;
using PowderCoating.Core.Entities;

namespace PowderCoating.Application.Interfaces;

public interface IAiQuoteService
{
    /// <summary>
    /// Analyze item photo(s) and return an estimated quote or a follow-up question.
    /// </summary>
    Task<AiAnalyzeItemResult> AnalyzeItemAsync(
        AiAnalyzeItemRequest request,
        List<(byte[] Data, string ContentType, string FileName)> photos,
        CompanyOperatingCosts costs,
        decimal avgPowderCostPerLb,
        CompanyAiContext? context = null,
        CompanyBlastSetup? selectedBlastSetup = null);
}
