import { Idmp, IdmpOptions, IdmpPromise } from 'idmp';
type StorageType = 'localStorage' | 'sessionStorage';
declare const getCacheKey: (globalKey: string) => string;
/**
 * Wrap an idmp instance with browser storage (localStorage or sessionStorage) for persistent caching
 * @param _idmp - Original idmp instance
 * @param storageType - Storage type to use, default is 'sessionStorage'
 * @returns Wrapped idmp instance with persistent caching
 */
declare const storageIdmpWrap: (_idmp: Idmp, storageType?: StorageType) => {
    <T>(globalKey: string, promiseFunc: IdmpPromise<T>, options?: IdmpOptions): Promise<T>;
    flush(globalKey: string): void;
    flushAll(): void;
};
export default storageIdmpWrap;
export { getCacheKey };
