/** * Utility functions for batch processing operations */ import type { Ref } from "vue"; /** * Configuration for batch processing */ export interface BatchProcessorConfig { /** Array of items to process */ items: T[]; /** Function to process a single item */ processor: (item: T) => Promise; /** Number of items to process concurrently (default: 5) */ batchSize?: number; /** Delay between batches in milliseconds (default: 200) */ batchDelay?: number; /** Optional progress callback */ onProgress?: (progress: { current: number; total: number; batchStart: number; batchEnd: number; message: string; }) => void; /** Optional progress message ref to update */ progressMessage?: Ref; /** Callback fired after each batch completes */ onBatchEnd?: (info: { /** Zero-based batch index */ batchIndex: number; /** Results of this batch */ results: Array; }) => void; } /** * Process items in batches with concurrency control * @param config - Batch processing configuration * @returns Promise that resolves to array of results (null for failed items) */ export declare function processBatch(config: BatchProcessorConfig): Promise>;