using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Storage; using UserEntity = ChapterX.Domain.Entities.User; using StoryEntity = ChapterX.Domain.Entities.Story; using ChapterEntity = ChapterX.Domain.Entities.Chapter; using CommentEntity = ChapterX.Domain.Entities.Comment; using GenreEntity = ChapterX.Domain.Entities.Genre; using ReadingListEntity = ChapterX.Domain.Entities.ReadingList; using ReadingListItemsEntity = ChapterX.Domain.Entities.ReadingListItems; using NotificationEntity = ChapterX.Domain.Entities.Notification; using LikesEntity = ChapterX.Domain.Entities.Likes; using CollaborationEntity = ChapterX.Domain.Entities.Collaboration; using NotifyEntity = ChapterX.Domain.Entities.Notify; using AISuggestionEntity = ChapterX.Domain.Entities.AISuggestion; using AdminEntity = ChapterX.Domain.Entities.Admin; using WriterEntity = ChapterX.Domain.Entities.Writer; using RegularUserEntity = ChapterX.Domain.Entities.RegularUser; using HasGenreEntity = ChapterX.Domain.Entities.HasGenre; using NeedApprovalEntity = ChapterX.Domain.Entities.NeedApproval; namespace ChapterX.Application.Abstractions { public interface IApplicationDbContext { DbSet Users { get; } DbSet Stories { get; } DbSet Chapters { get; } DbSet Comments { get; } DbSet Genres { get; } DbSet ReadingLists { get; } DbSet ReadingListItems { get; } DbSet Notifications { get; } DbSet Likes { get; } DbSet Collaborations { get; } DbSet Notifies { get; } DbSet AISuggestions { get; } DbSet Admins { get; } DbSet Writers { get; } DbSet RegularUsers { get; } DbSet HasGenres { get; } DbSet NeedApprovals { get; } Task SaveChangesAsync(CancellationToken cancellationToken = default); Task BeginTransactionAsync(CancellationToken cancellationToken = default); } }