using RealCV.Application.Models;
namespace RealCV.Application.Interfaces;
///
/// Service for verifying developer profiles and skills via GitHub
///
public interface IGitHubVerifierService
{
///
/// Verify a GitHub profile and analyze activity
///
Task VerifyProfileAsync(string username);
///
/// Verify claimed programming skills against GitHub activity
///
Task VerifySkillsAsync(
string username,
List claimedSkills);
///
/// Search for GitHub profiles matching a name
///
Task> SearchProfilesAsync(string name);
}
public sealed record GitHubProfileSearchResult
{
public required string Username { get; init; }
public string? Name { get; init; }
public string? AvatarUrl { get; init; }
public string? Bio { get; init; }
public int PublicRepos { get; init; }
public int Followers { get; init; }
}