import * as i0 from "@angular/core";
export declare class CacheService {
    private localStorageAvailable;
    private sessionStorageAvailable;
    constructor();
    /**Return true if the requested cache allows the user to round-trip data in the current environment.
     * Security settings can prevent it and the app may need to know if "not found" means "never set" or "not supported"
     */
    isCacheAvailable(sessionOnly?: boolean): boolean;
    /**
     * Retrieve an item from cache
     */
    getItem<T>(key: string, sessionOnly?: boolean): T | null;
    /**
     * Retrieves all keys from cache
     */
    keys(sessionOnly?: boolean): Array<string>;
    /**
     * Removes an item from the cache
     */
    removeItem(key: string, sessionOnly?: boolean): void;
    /**
     * Persists an item to cache
     */
    setItem(key: string, value: object, sessionOnly?: boolean): void;
    /**Returns the local or session storage to use for backing the given cache request.
     * If the browser does not support the requested storage the result will be null.
     * This can happen if the user is in Firefox for example with the setting dom.storage.enabled = false
    */
    private getStorage;
    static ɵfac: i0.ɵɵFactoryDeclaration<CacheService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<CacheService>;
}
