using System; using System.Collections.Generic; using System.Threading.Tasks; using Bit.Core.Entities; using Bit.Core.Models.Data; namespace Bit.Core.Repositories { public interface ICollectionRepository : IRepository { Task GetCountByOrganizationIdAsync(Guid organizationId); Task>> GetByIdWithGroupsAsync(Guid id); Task>> GetByIdWithGroupsAsync(Guid id, Guid userId); Task> GetManyByOrganizationIdAsync(Guid organizationId); Task GetByIdAsync(Guid id, Guid userId); Task> GetManyByUserIdAsync(Guid userId); Task CreateAsync(Collection obj, IEnumerable groups); Task ReplaceAsync(Collection obj, IEnumerable groups); Task DeleteUserAsync(Guid collectionId, Guid organizationUserId); Task UpdateUsersAsync(Guid id, IEnumerable users); Task> GetManyUsersByIdAsync(Guid id); } }