/**
 * Generic storage service. Concrete storage services must extend this class
 */
export declare abstract class StorageService {
    /**
     * utility function, to determine the storage implementation
     */
    abstract name(): string;
    /**
     * retrieve an object from storage
     * @param key the associated key
     * @returns the value or undefined, if case of error
     */
    abstract get(key: string): any;
    abstract get<T>(key: string): T;
    /**
     * sets an object in storage
     * @param key the associated key
     * @param value the value to set
     */
    abstract set(key: string, value: any): void;
    abstract set<T>(key: string, value: T): void;
    /**
     * removes an object from storage
     * @param key the associated key
     */
    abstract remove(key: string): void;
}
//# sourceMappingURL=storage.service.d.ts.map