import { AxiosRequestConfig, AxiosResponse } from 'axios'; export type CacheTargets = CacheTarget[]; export declare enum CacheTarget { CACHE_API = "CACHE_API", MEMORY = "MEMORY" } export type CacheResponse = { data: any; status: number; statusText: string; headers: any; }; export declare const CACHE_API_KEY = "sentinelhub-v1"; export declare const SUPPORTED_TARGETS: CacheTarget[]; export declare function cacheFactory(optionalTargets: CacheTargets): Promise; export declare function doesTargetExist(target: CacheTarget): Promise; interface ShCache { set(key: string, response: AxiosResponse): Promise; get(key: string, responseType: AxiosRequestConfig['responseType']): Promise; has(key: string): Promise; keys(): Promise | Promise; delete(key: Request | string): Promise; getHeaders(key: Request | string): Promise>; invalidate(): void; } export declare function invalidateCaches(optionalTargets?: CacheTargets): Promise; export {};