using System;
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Importers.Repositories;
namespace Pf2e.Scrapper.Importers;
///
/// Компендиум данных.
///
internal abstract class AbstractCompendium
{
///
/// Репозиторий данных.
///
public abstract AbstractImporterRepository Repository { get; }
///
/// Путь к хранению исходных данных.
///
public string Dir => Repository.RepositoryDirPath;
///
/// Возвращает количество элементов для указанного типа данных.
///
/// Типы данных.
/// Количество элементов.
public abstract int Count(params ICollection type);
///
/// Получение итератора сущностей. Если указан тип - то только указанного типа.
///
/// Типы сущностей, которые нужно получить.
/// Итератор сущностей.
public abstract IEnumerable> Iterate(
params ICollection type
);
}