namespace Tnsu.ApprovalRoute.Infrastructure.SharePoint; /// Созданный список: серверный относительный url (он же ListId) и Title. public sealed record ProvisionedList(string ListId, string Title); /// /// Создание следующей пары списков серии в SharePoint («<Форма> <N> — данные» /// + «<Форма> <N> — согласование») дублированием текущей пары. /// /// Интерфейс живёт в Infrastructure, а не в Application, потому что Application уже /// ссылается на Infrastructure (так же устроен ) — /// обратная ссылка замкнула бы проекты в кольцо. /// public interface ISharePointListProvisioner { /// /// Создать пару списков с номером , скопировав структуру /// со списка . Возвращает созданный список ДАННЫХ /// (список согласования создаётся тем же вызовом, но наружу не отдаётся — его /// находят по конвенции имени). /// Task CreateNextListPairAsync( string siteUrl, string sourceDataListId, int number, CancellationToken cancellationToken); }