using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using Kavita.Models.Entities.Person;
namespace Kavita.API.Services;
public interface IPersonService
{
///
/// Adds src as an alias to dst, this is a destructive operation
///
/// Merged person
/// Remaining person
///
/// The entities passed as arguments **must** include all relations
///
Task MergePeopleAsync(Person src, Person dst, CancellationToken ct = default);
///
/// Adds the alias to the person, requires that the aliases are not shared with anyone else
///
/// This method does NOT commit changes
///
///
///
///
Task UpdatePersonAliasesAsync(Person person, IList aliases, CancellationToken ct = default);
}