Files
modernkeepass/ModernKeePass/Interfaces/IDatabaseService.cs
Geoffroy BONNEVILLE 7e44d47065 WIP Clean Architecture
Windows 8.1 App Uses keepasslib v2.44 (temporarily)
2020-03-24 13:01:14 +01:00

31 lines
1021 B
C#

using System.Threading.Tasks;
using Windows.Storage;
using ModernKeePass.ViewModels;
using ModernKeePassLib;
using ModernKeePassLib.Cryptography.KeyDerivation;
using ModernKeePassLib.Keys;
namespace ModernKeePass.Interfaces
{
public interface IDatabaseService
{
string Name { get; }
bool RecycleBinEnabled { get; set; }
GroupVm RootGroup { get; set; }
GroupVm RecycleBin { get; set; }
PwUuid DataCipher { get; set; }
PwCompressionAlgorithm CompressionAlgorithm { get; set; }
KdfParameters KeyDerivation { get; set; }
bool IsOpen { get; }
bool HasChanged { get; set; }
Task Open(StorageFile databaseFile, CompositeKey key, bool createNew = false);
void ReOpen();
void Save();
Task Save(StorageFile file);
void CreateRecycleBin(string title);
void AddDeletedItem(PwUuid id);
void Close(bool releaseFile = true);
void UpdateCompositeKey(CompositeKey newCompositeKey);
}
}