import { ColumnValueSource, SearchItem, Translator } from '../types/HaloTypes'; export type ArrayPredicate = (arg0: T, index: number) => boolean; export type KeyPicker = (obj: T) => K; export declare function downloadFile(url: string, filename?: string, contentType?: string, method?: string): Promise; export declare function openFile(url: string, contentType?: string, method?: string): Promise; export declare function arrayRemoveIf(array: Array, callback: ArrayPredicate): number; export declare function arrayGroupBy(array: Array, keyPicker: KeyPicker): Record>; export declare function arrayMove(array: Array, oldIndex: number, newIndex: number): void; export declare function searchField(name: string, title?: string, dataType?: string, searchMethod?: "normal" | "range", values?: string | Array | ColumnValueSource | Record, ts?: Translator): SearchItem; export interface RouteNode { name?: string; path: string; } export declare function mergeRoutes(...routeArrays: RouteNode[][]): RouteNode[]; export declare function splitNumberByCount(total: number, n: number, decimal: number): number[] | undefined; export declare function splitNumberBySize(total: number, shareSize: number, decimal: number): number[] | undefined; export declare function sumNumbers(numbers: number[], decimal: number): number | undefined;