using AIK.Models; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Media.Imaging; namespace AIK.Service.IService { public interface IVehDataService { Task> GetVehDataAsync(string vhetype, bool forceRefresh = false); Task> GetVehDataFromApiAsync(string vhetype); Task IsCacheValidAsync(); Task ClearCacheAsync(); Task GetCacheInfoAsync(); Task> GetVehKeyDataAsync(int id, bool forceRefresh = false); Task> GetVehKeyDataFromApiAsync(int id); Task GetVehKeyImgAsync(string url, bool forceRefresh = false); Task GetVehKeyImgDataFromApiAsync(string url); Task> GetVehKeyDataByIdAsync(int id); } public class CacheInfo { public bool IsValid { get; set; } public DateTime? LastUpdateTime { get; set; } public int DataCount { get; set; } public long CacheSize { get; set; } public TimeSpan? TimeToExpire { get; set; } } }