namespace Dpz.Core.Service.RepositoryService;
public interface IPageMetadataService
{
/// <summary>
/// relations:[controller,action,id,...]
/// </summary>
/// <param name="relations"></param>
/// <returns></returns>
Task<VmPageMetadata?> GetPageMetadataAsync(IReadOnlyCollection<string> relations);
/// <summary>
/// get page metadata pages.
/// </summary>
/// <param name="searchText">query text</param>
/// <param name="pageIndex">page index</param>
/// <param name="pageSize">page size</param>
/// <returns></returns>
Task<IPagedList<VmPageMetadata>> GetPageAsync(string? searchText = null, int pageIndex = 1, int pageSize = 20);
/// <summary>
/// 获取全部页面元数据
/// </summary>
/// <returns></returns>
Task<IList<VmPageMetadata>> GetPageMetadataAsync();
/// <summary>
/// update page metadata
/// </summary>
/// <param name="pageMetadata"></param>
/// <returns></returns>
Task SavePageMetadataAsync(VmPageMetadata pageMetadata);
/// <summary>
/// delete page metadata
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task DeleteAsync(string id);
}