using System.Collections.Generic;
using System.Linq;

namespace AsbCloudApp.Data;

/// <summary>
/// Контейнер для поддержки постраничного просмотра таблиц
/// </summary>
/// <typeparam name="T"></typeparam>
public class PaginationContainer<T>
{
    /// <summary>
    /// конструктор
    /// </summary>
    public PaginationContainer()
    {
        Items = Enumerable.Empty<T>();
    }

    /// <summary>
    /// Кол-во записей пропущенных с начала таблицы в запросе от api
    /// </summary>
    public int Skip { get; set; }

    /// <summary>
    /// Кол-во записей в запросе от api
    /// </summary>
    public int Take { get; set; }

    /// <summary>
    /// Кол-во записей всего в таблице
    /// </summary>
    public int Count { get; set; }

    /// <summary>
    /// Данные
    /// </summary>
    public IEnumerable<T> Items { get; set; }
}