using Scry.Core.Models;
using Scry.Core.Recognition;

namespace Scry.Services;

/// <summary>
/// Real implementation that uses Scry.Core's perceptual hash-based card recognition.
/// </summary>
public class RealCardRecognitionService : ICardRecognitionService
{
    private readonly CardRecognitionService _recognitionService;

    public RealCardRecognitionService(CardRecognitionService recognitionService)
    {
        _recognitionService = recognitionService;
    }

    public async Task<ScanResult> RecognizeCardAsync(Stream imageStream, CancellationToken cancellationToken = default)
    {
        return await _recognitionService.RecognizeAsync(imageStream, cancellationToken);
    }
}
