using MediatR;

namespace MembershipService.API.Application.Commands;

/// <summary>
/// EN: Command to reset a stamp card for a new round after reward has been claimed.
/// VI: Command de reset stamp card cho vong moi sau khi da nhan thuong.
/// </summary>
public record ResetStampCardCommand(Guid StampCardId) : IRequest<ResetStampCardResult>;

/// <summary>
/// EN: Result of reset stamp card command.
/// VI: Ket qua cua reset stamp card command.
/// </summary>
public record ResetStampCardResult(
    Guid StampCardId,
    int CurrentStamps,
    int TotalStampsRequired,
    string Message
);
