using System.Collections.Immutable; using TaikoWebUI.Shared.Models; namespace TaikoWebUI.Services; public interface IGameDataService { public Task InitializeAsync(string dataBaseUrl); public List GetMusicList(); public string GetMusicNameBySongId(uint songId, string? language = null); public string GetMusicArtistBySongId(uint songId, string? language = null); public SongGenre GetMusicGenreBySongId(uint songId); public int GetMusicIndexBySongId(uint songId); public DanData GetDanDataById(uint danId); public int GetMusicStarLevel(uint songId, Difficulty difficulty); public string GetHeadTitle(uint index); public string GetKigurumiTitle(uint index); public string GetBodyTitle(uint index); public string GetFaceTitle(uint index); public string GetPuchiTitle(uint index); public List GetKigurumiUniqueIdList(); public List GetHeadUniqueIdList(); public List GetBodyUniqueIdList(); public List GetFaceUniqueIdList(); public List GetPuchiUniqueIdList(); public List GetTitleUniqueIdList(); public List GetTitlePlateIdList(); public List GetLockedKigurumiUniqueIdList(); public List GetLockedHeadUniqueIdList(); public List GetLockedBodyUniqueIdList(); public List GetLockedFaceUniqueIdList(); public List GetLockedPuchiUniqueIdList(); public List GetLockedTitleUniqueIdList(); public List GetLockedTitlePlateIdList(); public ImmutableHashSet GetTitles(); }