using UserDomain.Entity; using UserService.Response; using CommonDomain.BaseModel; namespace UserService.BattleOrder { public interface IBattleOrderService { Task GetUserBattleOrderAsync(string userId); Task GetUserBattleOrderWithConfigAsync(string userId); Task<(bool success, int newLevel, long remainExp)> AddExpAsync(string userId, long exp); Task<(bool success, string message, List rewards)> ReceiveAllRewardsAsync(string userId); Task<(bool success, string message, List rewards)> ReceiveLevelRewardAsync(string userId, int level); Task<(bool success, string message, int newLevel, int cost)> BuyLevelsAsync(string userId, int levelCount); Task<(bool success, string message, List purchasedAdvances)> BuyAdvanceAsync(string userId, int type); Task CreateOrResetBattleOrderAsync(string userId); Task GetLevelRewardStatusAsync(string userId); } }