export declare function invertMap<K, V>(inputMap: Map<K, V>): Map<V, K[]>;
/**
 * Batches an array into smaller arrays of a specified size.
 * @param array - The array to batch.
 * @param batchSize - The size of each batch.
 * @returns An array of arrays, each containing a batch of elements.
 * @throws An error if the batch size is not a positive integer.
 */
export declare function batchArray<T>(array: T[], batchSize: number): T[][];
/**
 * Batches two arrays simultaneously, maintaining alignment between corresponding elements.
 * @param array1 - The first array to batch.
 * @param array2 - The second array to batch.
 * @param batchSize - The size of each batch.
 * @returns An array of objects, each containing a batch from each array.
 * @throws An error if the input arrays are not of the same length.
 */
export declare function batchArrays<T, U>(array1: T[], array2: U[], batchSize: number): [T[], U[]][];
