import { TIDAuthToken, TIDUser } from '../../interfaces';
/** Class to manage the store types */
export declare class CacheManager {
    /**
     * Cache option selected
     * @type {CacheStorage}
     */
    private readonly cacheStorage;
    constructor();
    /**
     * Store token in cache
     * @param {TIDAuthToken} token - Token that you want to store in cache
     * @return {Promise<void>} Empty promise
     */
    setToken(token: TIDAuthToken): Promise<void>;
    /**
     * Store user in cache
     * @param {TIDUser} user - User that you want to store in cache
     * @return {Promise<void>} Empty promise
     */
    setUser(user: TIDUser): Promise<void>;
    /**
     * Get user store in cache
     * @return {Promise<TIDUser | undefined>} Key for the user
     */
    getUser(): Promise<TIDUser | undefined>;
    /**
     * Get token store in cache
     * @return {Promise<TIDAuthToken | undefined>} Key for the user
     */
    getToken(): Promise<TIDAuthToken | undefined>;
    /**
     * The clear the cache from the storage
     * @return {Promise<void>} Empty promise
     */
    clear(): Promise<void>;
}
