/** * Splits an array into two arrays based on an asynchronous or synchronous predicate. * * Iterates through the input array, applying the given predicate function to each item. * If the predicate resolves to `true`, the item is placed in the first output array (positive). * If the predicate resolves to `false`, the item is placed in the second output array (negative). * * The predicate may return a boolean directly or a Promise that resolves to a boolean. * * @template T The type of items in the input array. * @param inputArray - The array to split. * @param predicate - A function that takes an item and returns a boolean or a Promise. * @returns A Promise that resolves to a tuple: [items that matched, items that did not match]. * * @example * ```ts * const numbers = [1, 2, 3, 4, 5]; * const [even, odd] = await splitArrayAsync(numbers, async (n) => n % 2 === 0); * // even: [2, 4] * // odd: [1, 3, 5] * ``` */ export declare function splitArrayAsync(inputArray: T[], predicate: (arrayItem: T) => boolean | Promise): Promise<[T[], T[]]>; //# sourceMappingURL=split-array-async.d.ts.map