using TelegramPanel.Data.Entities; namespace TelegramPanel.Data.Repositories; /// /// 频道仓储接口 /// public interface IChannelRepository : IRepository { Task GetByTelegramIdAsync(long telegramId); Task> GetCreatedAsync(); Task> GetByCreatorAccountAsync(int accountId); Task> GetForAccountAsync(int accountId, bool includeNonCreator); Task> GetByGroupAsync(int groupId); Task> GetBroadcastChannelsAsync(); Task DeleteOrphanedAsync(CancellationToken cancellationToken = default); Task<(IReadOnlyList Items, int TotalCount)> QueryForViewPagedAsync( int accountId, int? groupId, string? filterType, string? membershipRole, string? search, int pageIndex, int pageSize, CancellationToken cancellationToken = default); }