Files
DotNetAlpm/Alpm/IPackageData.cs
2020-04-29 13:21:13 -04:00

64 lines
2.0 KiB
C#

using System;
using System.Collections.Generic;
namespace Foodsoft.Alpm
{
public enum PackageOrigin
{
File = 1,
LocalDB,
SyncDB
}
public enum InstallReason
{
Explicit = 0,
Depend = 1
}
[Flags]
public enum ValidationType
{
Unknown = 0,
None = (1 << 0),
MD5Sum = (1 << 1),
SHA256Sum = (1 << 2),
Signature = (1 << 3)
}
public interface IPackageData : IDisposable
{
public string Filename { get; }
public string Base { get; }
public string Name { get; }
public string Version { get; }
public PackageOrigin Origin { get; }
public string Description { get; }
public string Url { get; }
public DateTimeOffset BuildDate { get; }
public DateTimeOffset InstallDate { get; }
public string Packager { get; }
public string MD5Sum { get; }
public string SHA256Sum { get; }
public string Arch { get; }
public long Size { get; }
public long InstalledSize { get; }
public InstallReason InstallReason { get; }
public IEnumerable<string> Licenses { get; }
public IReadOnlyCollection<string> Groups { get; }
public IReadOnlyCollection<Depend> Depends { get; }
public IReadOnlyCollection<Depend> OptDepends { get; }
public IReadOnlyCollection<Depend> CheckDepends { get; }
public IReadOnlyCollection<Depend> MakeDepends { get; }
public IReadOnlyCollection<Depend> Conflicts { get; }
public IReadOnlyCollection<Depend> Provides { get; }
public IReadOnlyCollection<Depend> Replaces { get; }
public IReadOnlyList<File> FileList { get; }
public IReadOnlyList<Backup> Backup { get; }
public string Base64Signature { get; }
public ValidationType Validation { get; }
public bool HasScriptlet { get; }
public long DownloadSize { get; }
public Database? DB { get; }
}
}