22 lines
932 B
C#
22 lines
932 B
C#
namespace JobTrackerApi.Services;
|
|
|
|
public sealed record GmailSemanticMatchCandidate(
|
|
int? JobApplicationId,
|
|
string? Confidence,
|
|
string? Reason,
|
|
IReadOnlyList<string>? ExtractedCompanies,
|
|
IReadOnlyList<string>? ExtractedRecruiters,
|
|
IReadOnlyList<string>? ExtractedRoles,
|
|
IReadOnlyList<string>? ExtractedHints);
|
|
|
|
public interface IGmailCorrespondenceEnrichmentService
|
|
{
|
|
Task<GmailSemanticMatchCandidate?> EnrichAsync(string threadSubject, string from, string to, string snippet, string? bodyText, CancellationToken cancellationToken = default);
|
|
}
|
|
|
|
public sealed class NoOpGmailCorrespondenceEnrichmentService : IGmailCorrespondenceEnrichmentService
|
|
{
|
|
public Task<GmailSemanticMatchCandidate?> EnrichAsync(string threadSubject, string from, string to, string snippet, string? bodyText, CancellationToken cancellationToken = default)
|
|
=> Task.FromResult<GmailSemanticMatchCandidate?>(null);
|
|
}
|