#nullable enable
namespace Baya.Application.Models.Verification;

/// <summary>A row in the admin manual-review worklist — one pending step with its submitted documents
/// (signed GET URLs).</summary>
public record AdminPendingStepDto(
    long NurseVerificationId,
    long NurseId,
    string NurseName,
    long StepId,
    string StepCode,
    string StepDisplayName,
    string Status,
    DateTimeOffset? SubmittedAt,
    IReadOnlyList<VerificationDocumentDto> Documents);

/// <summary>A step inside the admin per-nurse detail view.</summary>
public record AdminStepDetailDto(
    long StepId,
    string Code,
    string DisplayName,
    string Status,
    bool IsAutomated,
    DateTimeOffset? ExpiresAt,
    string? FailureReason,
    IReadOnlyList<VerificationDocumentDto> Documents);

/// <summary>Full per-nurse verification detail for the admin doc-viewer, incl. the identity name for the
/// holder-name cross-check and the credentials already on file.</summary>
public record AdminVerificationDetailDto(
    long NurseVerificationId,
    long NurseId,
    string IdentityName,
    string Status,
    IReadOnlyList<AdminStepDetailDto> Steps,
    IReadOnlyList<NurseCredentialDto> Credentials);
