-
Notifications
You must be signed in to change notification settings - Fork 21
/
IBrowserImporter.cs
49 lines (37 loc) · 1.25 KB
/
IBrowserImporter.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
using System.Collections.Generic;
using KeePassLib;
using KeePassLib.Interfaces;
namespace KeePassBrowserImporter
{
public class CreationSettings
{
public bool ExtractTitle;
public bool ExtractIcon;
public bool UseDates;
}
public class ImportParameter
{
public IStatusLogger Logger;
public PwDatabase Database;
public PwGroup Group;
public string Profile;
public string CustomProfilePath;
public string Password;
public CreationSettings CreationSettings;
}
public abstract class IBrowserImporter
{
/// <summary>Checks if the importer supports profiles.</summary>
public abstract bool SupportsProfiles { get; }
/// <summary>Checks if the importer supports multiple profiles.</summary>
public abstract bool SupportsMultipleProfiles { get; }
/// <summary>Gets all availables profiles.</summary>
public abstract IEnumerable<string> GetProfiles();
/// <summary>Gets the path of the given profile.</summary>
public abstract string GetProfilePath(string profile);
/// <summary>Checks if the importer uses a master password.</summary>
public abstract bool UsesMasterPassword { get; }
/// <summary>Import the credentials from the browser.</summary>
public abstract void ImportCredentials(ImportParameter param);
}
}