using Microsoft.SharePoint.Client;
using SharepointToolbox.Core.Models;

namespace SharepointToolbox.Services;

public interface IFileTransferService
{
    /// <summary>
    /// Transfers files/folders from source to destination.
    /// Returns per-item results (file paths as string items).
    /// </summary>
    Task<BulkOperationSummary<string>> TransferAsync(
        ClientContext sourceCtx,
        ClientContext destCtx,
        TransferJob job,
        IProgress<OperationProgress> progress,
        CancellationToken ct);
}
