import { PagingQuery, UrlPagingQuery, SqlPagingQuery } from './internalTypes'; export declare function forEach(target: Array, eachFunc: (val: T, key: number) => void, inverse?: boolean): void; export declare function forEach(target: Record, eachFunc: (val: T, key: string) => void, inverse?: boolean): void; export declare function forEach(target: any, eachFunc: (val: any, key: any) => void, inverse?: boolean): void; export declare const identity: (r: T) => T; export declare const clone: (origin: T, old?: any) => T; export declare const concat: (target: T[], patch: T[]) => T[]; export declare const uuid: import("uuid/interfaces").v4; export declare function dropEle(ele: T, arr: T[]): T[]; export declare function capitalizeFirstLetter(str?: string | null): string | null; /** * refer to https://github.com/github/fetch/blob/v2.0.4/fetch.js#L359 * XmlHttpRequest's getAllResponseHeaders() method returns a string of response * headers according to the format described here: * http://www.w3.org/TR/XMLHttpRequest/#the-getallresponseheaders-method * This method parses that string into a user-friendly key/value pair object. */ export declare function parseHeaders(rawHeaders: string): Headers; export declare function headers2Object(headers: Headers): Object; export declare function pagination(count: number, page: number): { limit: number; skip: number; }; export declare const normPagingQuery: (query?: Partial) => { forUrl: UrlPagingQuery; forSql: SqlPagingQuery; }; export declare function isEmptyObject(obj: any): boolean; export declare const hasMorePages: (data: T[], pageSize: number, nextPage: number, curr?: { page: number; hasMore: boolean; } | undefined) => boolean; export declare const isNonNullable: (x: T) => x is NonNullable; export declare const appendQueryString: (url: string, queryString: string) => string; export declare const encoded: (value: {} | null) => string; export declare const toQueryString: (query: any) => string;