import { Buffer } from 'buffer'; import { BasicAuth, Config, HttpConfig, QuerySerializer, Response } from "../types"; export type KyofuucObject = { [index: string]: T; }; export declare enum KyofuucEnvironment { AUTO = 0, NODE = 1, BROWSER = 2 } export declare enum ErrorCode { UNKNOWN_ERROR = "UNKNOWN_ERROR", REQUEST_ERROR = "REQUEST_ERROR", REQUEST_ABORTED = "REQUEST_ABORTED", REQUEST_TIMEOUT = "REQUEST_TIMEOUT", INVALID_REQUEST_TYPE = "INVALID_REQUEST_TYPE", RESPONSE_STREAM_ERROR = "RESPONSE_STREAM_ERROR", MAXIMUM_RETRY_EXCEEDED = "MAXIMUM_RETRY_EXCEEDED", RESPONSE_STREAM_ABORTED = "RESPONSE_STREAM_ABORTED", REQUEST_EXCEEDS_MAXIMUM_LENGTH = "REQUEST_EXCEEDS_MAXIMUM_LENGTH", RESPONSE_EXCEEDS_MAXIMUM_LENGTH = "RESPONSE_EXCEEDS_MAXIMUM_LENGTH", RESPONSE_DATA_PROCESSING_FAILED = "RESPONSE_DATA_PROCESSING_FAILED", REQUEST_DATA_TRANSFORMATION_FAILED = "REQUEST_DATA_TRANSFORMATION_FAILED", RESPONSE_DATA_TRANSFORMATION_FAILED = "RESPONSE_DATA_TRANSFORMATION_FAILED", REQUEST_COMPRESSION_ENCODING_INVALID = "REQUEST_COMPRESSION_ENCODING_INVALID", RESPONSE_STATUS_CODE_FAILED_VALIDATION = "RESPONSE_STATUS_CODE_FAILED_VALIDATION", RESPONSE_DECOMPRESSION_ENCODING_INVALID = "RESPONSE_DECOMPRESSION_ENCODING_INVALID" } export declare const Utils: { Buffer: BufferConstructor; buildCacheKey(config: HttpConfig): string; presentElseImport(item: any, actual: Function, fallback: Function): any; safeStringify(obj: any, indent?: number): string; getCalculateAndSetStorageSize(storage: Storage): number; getStorageEntries(storage: Storage, cb: (key: string, value: any) => void): void; storageSpaceUsed(storage: Storage): number; getCookieEntries(document: { cookie: string; }, cb: (key: string, value: string) => void): void; cookieSpaceUsed(document: { cookie: string; }): number; addCookie(document: { cookie: string; }, options: { name: string; value: string; expires?: Date; path?: string; }): void; removeCookie(document: { cookie: string; }, name: string): void; getCookie(document: { cookie: string; }, name: string): string | undefined; randomString(length?: number, characters?: string): string; isArray(val: any): val is any[]; isURLSearchParams(val: any): boolean; isDate(val: any): boolean; isObject(val: any): boolean; forEach(obj: any, fn: Function): void; cherryPick(obj: KyofuucObject, cherryPicks: string[], remove?: boolean, rebuilds?: KyofuucObject): KyofuucObject; mergeObjects(obj1: KyofuucObject, obj2: KyofuucObject, cherryPicks?: string[]): KyofuucObject; encodeParamURI(val: string): string; isAbsoluteURL(url: string): boolean; isRelativeURL(url: string): boolean; combineUrls(baseUrl: string, relativeUrl: string): string; buildFullUrl(config: Config, stripAuth?: boolean): string | undefined; stripAuthFromUrl(fullUrl: string): string; buildUrlWithQuery(url: string, query: KyofuucObject | URLSearchParams, querySerializer?: QuerySerializer): string; buildUrlWithQueryFromConfig(config: Config): string | undefined; basicAuthFromUrl(fullUrl: string): { username: string; password: string; } | undefined; parseUrl(url: string): URL; isFunction(val: any): boolean; isStream(val: any): boolean; isString(val: any): val is string; isPlainObject(val: any): boolean; isArrayBuffer(val: any): boolean; isFormData(val: any): boolean; kyofuucError(message: string | Error, config: Config, code: ErrorCode, request?: any, response?: Response): any; envIsNodeJs(): boolean; resolveResponse(response: Response, resolve: (result: Response) => void, reject: (result: Error) => void): void; toArrayBuffer(buffer: Buffer): ArrayBuffer; stripBOM(content: string): string; stringifyAuth(auth?: BasicAuth): string | undefined; envIsBrowser(): boolean; toBase64(value: string): string; fromBase64(value: string): string; trim(str: string): string; length(str: any): any; parseHeaders(headers: string): KyofuucObject; addMsToDate(date: Date, ms: number): Date; dateDiffInMs(date1: Date, date2: Date): number; };