// Copyright (c) Microsoft. All rights reserved.
namespace VectorStoreRAG;
///
/// Interface for loading data into a data store.
///
internal interface IDataLoader
{
///
/// Load the text from a PDF file into the data store.
///
/// The pdf file to load.
/// Maximum number of parallel threads to generate embeddings and upload records.
/// The number of milliseconds to delay between batches to avoid throttling.
/// The to monitor for cancellation requests.
/// An async task that completes when the loading is complete.
Task LoadPdf(string pdfPath, int batchSize, int betweenBatchDelayInMs, CancellationToken cancellationToken);
}