using SVSim.Database.Entities.Story; namespace SVSim.Database.Repositories.Story; public interface IStoryMasterRepository { Task> GetSectionsByFamilyAsync(StoryApiType apiType); Task> GetWorldsForSectionsAsync(IEnumerable worldIds); Task> GetChaptersBySectionCharaAsync(int sectionId, int charaId); /// /// Bulk-load chapter scalars (no owned collections) across multiple sections in one round-trip. /// Used by the section rollup to avoid N+1 per (section, chara) lookups. /// Task> GetChaptersBySectionsAsync(IEnumerable sectionIds); Task GetChapterByIdAsync(int storyId); Task GetSbsByIdAsync(int sbsId); }