using System; using System.Collections.Immutable; using HaDocument.Models; using System.Linq; namespace HaDocument.Interfaces { public interface ILibrary { IHaDocumentOptions Options { get; } ImmutableDictionary Traditions { get; } ImmutableDictionary Persons { get; } ImmutableDictionary Metas { get; } ImmutableDictionary ExcludedMetas { get; } ImmutableDictionary> Marginals { get; } ImmutableDictionary Locations { get; } ImmutableDictionary Letters { get; } ImmutableDictionary HandPersons { get; } ImmutableDictionary Apps { get; } ImmutableDictionary Editreasons { get; } ImmutableDictionary Comments { get; } ImmutableDictionary> Backlinks { get; } ImmutableDictionary> Hands { get; } ImmutableDictionary>> Structure { get; } ImmutableDictionary> CommentsByCategoryLetter { get; } Lookup CommentsByCategory { get; } Lookup EditreasonsByLetter { get; } ImmutableSortedSet MetasByDate { get; } ILookup MetasByYear { get; } ILookup ExcludedMetasByYear { get; } ImmutableDictionary SubCommentsByID { get; } } }