import { StorageAttributes } from './interfaces/attributes.interface';
import { StorageStrategy } from './interfaces/strategy.interface';
export declare class Storage implements StorageStrategy {
    private readonly _strategies;
    private readonly _current;
    constructor();
    get local(): StorageStrategy;
    get cookie(): StorageStrategy;
    get session(): StorageStrategy;
    get memory(): StorageStrategy;
    get<T = any>(token: string): T;
    set<T = any>(token: string, value: T, attributes?: StorageAttributes): void;
    remove(token: string, attributes?: StorageAttributes): void;
    clear(attributes?: StorageAttributes): void;
    isSupported(): boolean;
    private findBestStorageStrategy;
    private getLocalStorage;
    private getSessionStorage;
}
