import { IHttpRequestConfig } from ".";
export declare const ensureAbsoluteUrl: (baseUrl: string | undefined, url: string) => string;
export declare function buildParameterString(params: Record<string, any> | {
    key: string;
    value: any;
}[]): string;
export interface CreateUrlOptions {
    baseUrl?: string;
    params?: Record<string, any>;
    addTimestamp?: boolean;
}
export declare const createUrl: (url: string, { params, addTimestamp, baseUrl }?: CreateUrlOptions) => string;
export declare const joinConfigs: (configs: IHttpRequestConfig[]) => IHttpRequestConfig;
export declare const buildRequestConfig: (url: string, config: IHttpRequestConfig) => [string, RequestInit];
export declare const handleFetchResult: (response: Response) => Promise<Response>;
/**
 * path segments
 *
 * @param {...string[]} pathSegments
 * @returns {string}
 */
export declare const joinPaths: (...pathSegments: string[]) => string;
/**
 * check if url ends with desired fileEnding
 * @param url
 * @param fileEnding
 */
export declare const isFileType: (url: string, fileEnding: string) => boolean;
/**
 * checks if url is an absolute path
 * @param url
 * @param validPrefixes protocols like http, https etc. (default value: ["http:", "https:", "ftp:", "sftp:", "ftps:"])
 */
export declare const isAbsoluteUrl: (url: string, validPrefixes?: string[]) => boolean;
