Files
lct2025-lonolith/LctMonolith/Services/Contracts/IProgressTrackingService.cs
2025-09-30 22:46:22 +03:00

15 lines
674 B
C#

using LctMonolith.Models.Database;
using LctMonolith.Models.DTO;
namespace GamificationService.Services.Interfaces;
public interface IProgressTrackingService
{
Task<PlayerMission> StartMissionAsync(Guid missionId, Guid playerId);
Task<PlayerMission> UpdateMissionProgressAsync(Guid playerMissionId, int progressPercentage, object? proof = null);
Task<PlayerMission> CompleteMissionAsync(Guid playerMissionId, object? proof = null);
Task<IEnumerable<PlayerMission>> GetPlayerMissionsAsync(Guid playerId);
Task<PlayerMission?> GetPlayerMissionAsync(Guid playerId, Guid missionId);
Task<PlayerProgress> GetPlayerOverallProgressAsync(Guid playerId);
}