isn/src/isnd/Interfaces/IPackageManager.cs
2026-07-05 17:54:36 +01:00

77 lines
No EOL
2.3 KiB
C#

using System.Collections.Generic;
using System.Threading.Tasks;
using Isn.Abstract;
using isnd.Data;
using isnd.Data.Catalog;
using isnd.Data.Packages;
using isnd.Services;
using isnd.ViewModels;
using NuGet.Versioning;
namespace isnd.Interfaces
{
/**
* IPackageManager
*/
public interface IPackageManager
{
/**
* CatalogBaseUrl
*/
string CatalogBaseUrl { get; }
/**
* AutoComplete generation
*/
AutoCompleteResult AutoComplete(string pkgid, int skip, int take, bool prerelease = false, string packageType = null);
/**
* GetVersions
*/
string[] GetVersions(string pkgid, NuGetVersion parsedVersion, bool prerelease = false, string packageType = null, int skip = 0, int take = 25);
/**
* GetResources
*/
IEnumerable<Resource> GetResources();
/**
* UpdateCatalogForAsync
*/
Task<RegistrationPageIndex> UpdateCatalogForAsync(Commit commit);
/**
* DeletePackageAsync
*/
Task<PackageDeletionReport> DeletePackageAsync(string pkgid, string version, string type);
/**
* UserAskForPackageDeletionAsync
*/
Task<PackageDeletionReport> UserAskForPackageDeletionAsync(string userid, string pkgId, string lower, string type);
/**
* GetPackageAsync
*/
Task<PackageVersion> GetPackageAsync(string pkgid, string version, string type);
/**
* GetCatalogEntryAsync
*/
Task<CatalogEntry> GetCatalogEntryAsync(string pkgId, string version, string pkgType);
/**
* SearchCatalogEntriesById
*/
IEnumerable<CatalogEntry> SearchCatalogEntriesById(string pkgId, string semver, string pkgType);
/**
* GetCatalogIndexAsync
*/
Task<RegistrationPageIndex> GetCatalogIndexAsync();
/**
* GetPackageRegistrationIndexAsync
*/
Task<RegistrationPageIndex> GetPackageRegistrationIndexAsync(RegistrationPageIndexQuery query);
/**
* SearchPackageAsync
*/
Task<RegistrationPageIndex> SearchPackageAsync(RegistrationPageIndexQuery query);
}
}