import { getStorageManager , StorageManager } from './Manager' ; import { Storage } from './Storage' ; export abstract class StorageProvider < T extends Storage = any > { readonly manager : StorageManager ; constructor ( manager ? ) { this . manager = manager || getStorageManager ( ) ; } abstract getStorage ( name ) ; abstract createStorage ( name ) ; abstract deleteStorage ( name ) ; }