using RealCV.Application.Models;

namespace RealCV.Application.Interfaces;

public interface ICompanyNameMatcherService
{
    /// <summary>
    /// Uses AI to semantically compare a company name from a CV against Companies House candidates.
    /// Returns the best match with confidence score and reasoning.
    /// </summary>
    Task<SemanticMatchResult?> FindBestMatchAsync(
        string cvCompanyName,
        List<CompanyCandidate> candidates,
        CancellationToken cancellationToken = default);
}
