import { Observable } from 'rxjs';
/**
 * Clears all memorized data for memorizeObservable calls. All calls made to those functions after
 * clearing will result in the fetch func being called again.
 *
 * You must call this function after you've modified a memorized resource, or else some components of
 * the UI may have a stale view of the resouce.
 */
export declare function resetAllMemorizationCaches(): void;
/**
 * Creates a function that memorizes the observable result of func.
 * If the Observable errors, the value will not be cached.
 *
 * @param resolver If resolver provided, it determines the cache key for storing the result based on
 * the first argument provided to the memorized function.
 */
export declare function memoizeObservable<P, T>(func: (parameters: P) => Observable<T>, resolver: (parameters: P) => string): (parameters: P, force?: boolean) => Observable<T>;
