import LocalStorageProvider from './localStorageProvider'; import StorageProvider from './storageProvider'; export default class StorageService implements StorageProvider { private provider: StorageProvider; constructor(provider: StorageProvider) { this.provider = provider; } static localStorage(): StorageService { const localStorageService = new StorageService(new LocalStorageProvider()); return localStorageService; } setData(key: string, value: ValueType): void { return this.provider.setData(key, value); } getData(key: string): ValueType | null { return this.provider.getData(key); } deleteData(key: string): void { this.provider.deleteData(key); } }