import { Selector } from '../types'; /** * leftJoin returns all elements from the left array (leftArray), and the matched elements from the right array (rightArray). * The result is NULL from the right side, if there is no match. * @param leftArray array for left side in a join * @param rightArray array for right side in a join * @param leftKey A key from left side array. What can be as a fieldName, multiple fields or key Selector * @param rightKey A key from right side array. what can be as a fieldName, multiple fields or key Selector * @param resultSelector A callback function that returns result value */ export declare function leftJoin(leftArray: any[], rightArray: any[], leftKeySelector: string | string[] | Selector, rightKeySelector: string | string[] | Selector, resultSelector: (leftItem: any, rightItem: any) => any): any[]; /** * innerJoin - Joins two arrays together by selecting elements that have matching values in both arrays. * If there are elements in any array that do not have matches in other array, these elements will not be shown! * @param leftArray array for left side in a join * @param rightArray array for right side in a join * @param leftKey A key from left side array. What can be as a fieldName, multiple fields or key Selector * @param rightKey A key from right side array. what can be as a fieldName, multiple fields or key Selector * @param resultSelector A callback function that returns result value */ export declare function innerJoin(leftArray: any[], rightArray: any[], leftKey: string | string[] | Selector, rightKey: string | string[] | Selector, resultSelector: (leftItem: any, rightItem: any) => any): any[]; /** * fullJoin returns all elements from the left array (leftArray), and all elements from the right array (rightArray). * The result is NULL from the right/left side, if there is no match. * @param leftArray array for left side in a join * @param rightArray array for right side in a join * @param leftKey A key from left side array. What can be as a fieldName, multiple fields or key Selector * @param rightKey A key from right side array. what can be as a fieldName, multiple fields or key Selector * @param resultSelector A callback function that returns result value */ export declare function fullJoin(leftArray: any[], rightArray: any[], leftKey: string | string[] | Selector, rightKey: string | string[] | Selector, resultSelector: (leftItem: any, rightItem: any) => any): any[]; /** * merges elements from two arrays. It appends source element or overrides to target array based on matching keys provided * @param targetArray target array * @param sourceArray source array * @param targetKey tartget key field, arry of fields or field serlector * @param sourceKey source key field, arry of fields or field serlector */ export declare function merge(targetArray: any[], sourceArray: any[], targetKey: string | string[] | Selector, sourceKey: string | string[] | Selector): any[]; //# sourceMappingURL=joins.d.ts.map