Files
workavia-mail-front/lib/features/caching/config/hive_cache_client.dart
T
2021-10-01 15:48:47 +07:00

33 lines
671 B
Dart

import 'package:hive/hive.dart';
abstract class HiveCacheClient<T> {
String get tableName;
Future<Box<T>> openBox();
Future<void> insertItem(String key, T newObject);
Future<void> insertMultipleItem(Map<String, T> mapObject);
Future<T?> getItem(String key);
Future<List<T>> getAll();
Future<void> updateItem(String key, T newObject);
Future<void> updateMultipleItem(Map<String, T> mapObject);
Future<void> deleteItem(String key);
Future<void> deleteMultipleItem(List<String> listKey);
Future<bool> isExistItem(String key);
Future<bool> isExistTable();
Future<void> deleteBox() {
return Hive.deleteBoxFromDisk(tableName);
}
}