64 lines
1.9 KiB
C#
64 lines
1.9 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 IEnumerable<string> Groups { get; }
|
|
public IEnumerable<Depend> Depends { get; }
|
|
public IEnumerable<Depend> OptDepends { get; }
|
|
public IEnumerable<Depend> CheckDepends { get; }
|
|
public IEnumerable<Depend> MakeDepends { get; }
|
|
public IEnumerable<Depend> Conflicts { get; }
|
|
public IEnumerable<Depend> Provides { get; }
|
|
public IEnumerable<Depend> Replaces { get; }
|
|
public IReadOnlyList<File> Files { get; }
|
|
public IEnumerable<Backup> Backup { get; }
|
|
public string Base64Signature { get; }
|
|
public ValidationType Validation { get; }
|
|
public bool HasScriptlet { get; }
|
|
public long DownloadSize { get; }
|
|
public Database? DB { get; }
|
|
}
|
|
} |