namespace SPMS.Application.Interfaces; public interface ITokenCacheService { Task GetDeviceInfoAsync(long serviceId, string deviceId); Task SetDeviceInfoAsync(long serviceId, string deviceId, CachedDeviceInfo info); Task InvalidateAsync(long serviceId, string deviceId); Task InvalidateByServiceAsync(long serviceId); } public record CachedDeviceInfo(string Token, int Platform, bool IsActive, bool PushAgreed);