2016-05-21 23:16:22 +02:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
2015-12-09 04:57:38 +01:00
|
|
|
|
using System.Threading.Tasks;
|
2017-03-09 03:45:08 +01:00
|
|
|
|
using Bit.Core.Models.Table;
|
2017-03-18 05:02:06 +01:00
|
|
|
|
using Core.Models.Data;
|
2015-12-09 04:57:38 +01:00
|
|
|
|
|
|
|
|
|
namespace Bit.Core.Repositories
|
|
|
|
|
{
|
2016-05-21 23:16:22 +02:00
|
|
|
|
public interface ICipherRepository : IRepository<Cipher, Guid>
|
2015-12-09 04:57:38 +01:00
|
|
|
|
{
|
2017-03-18 16:58:02 +01:00
|
|
|
|
Task<CipherDetails> GetByIdAsync(Guid id, Guid userId);
|
2017-05-07 05:23:01 +02:00
|
|
|
|
Task<bool> GetCanEditByIdAsync(Guid userId, Guid cipherId);
|
2017-03-18 05:02:06 +01:00
|
|
|
|
Task<ICollection<CipherDetails>> GetManyByUserIdAsync(Guid userId);
|
2017-04-27 15:19:30 +02:00
|
|
|
|
Task<ICollection<CipherDetails>> GetManyByUserIdHasCollectionsAsync(Guid userId);
|
2017-04-17 23:01:23 +02:00
|
|
|
|
Task<ICollection<Cipher>> GetManyByOrganizationIdAsync(Guid organizationId);
|
2017-03-18 05:02:06 +01:00
|
|
|
|
Task<ICollection<CipherDetails>> GetManyByTypeAndUserIdAsync(Enums.CipherType type, Guid userId);
|
2017-03-19 04:41:46 +01:00
|
|
|
|
Task CreateAsync(CipherDetails cipher);
|
|
|
|
|
Task ReplaceAsync(CipherDetails cipher);
|
|
|
|
|
Task UpsertAsync(CipherDetails cipher);
|
2017-04-27 15:19:30 +02:00
|
|
|
|
Task ReplaceAsync(Cipher obj, IEnumerable<Guid> collectionIds);
|
2017-03-24 21:15:50 +01:00
|
|
|
|
Task UpdatePartialAsync(Guid id, Guid userId, Guid? folderId, bool favorite);
|
2017-04-17 20:53:07 +02:00
|
|
|
|
Task UpdateUserEmailPasswordAndCiphersAsync(User user, IEnumerable<Cipher> ciphers, IEnumerable<Folder> folders);
|
2017-04-16 04:26:45 +02:00
|
|
|
|
Task CreateAsync(IEnumerable<Cipher> ciphers, IEnumerable<Folder> folders);
|
2015-12-09 04:57:38 +01:00
|
|
|
|
}
|
|
|
|
|
}
|