/*
* Copyright (C) 2007-2022 Crafter Software Corporation. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3 as published by
* the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see .
*/
import LookupTable from '../models/LookupTable';
import { PagedArray } from '../models';
export declare function forEach(
array: T[],
fn: (item: T, index: number, array: T[]) => R | 'continue' | 'break' | undefined,
emptyReturnValue?: R
): R;
export declare function asArray(value: T | T[]): T[];
export declare function createPresenceTable(list: string[]): LookupTable;
export declare function createPresenceTable(
list: string[],
value: T
): LookupTable;
export declare function createPresenceTable(
list: string[],
valueGenerator: (listItem: string) => T
): LookupTable;
export declare function createPresenceTable(
list: K[],
valueOrGenerator: string | number | boolean | ((listItem: string) => T),
itemKeyGenerator: (value: K) => string
): LookupTable;
/**
* Receives two different arrays of string, it will combine it selecting one string of the first array
* and then other string of the second array, until there are no more strings
* @param a
* @param b
*/
export declare function mergeArraysAlternatively(a: string[], b: string[]): string[];
export declare function createPagedArray(array: T[], response: any): PagedArray;