HiStore<K, V> class
abstract
Abstract storage interface for hihook.
Storage adapters (Hive, SQLite, SharedPrefs, etc.) implement this interface to provide persistent storage capabilities to hihook-based applications.
The store is "pure" - it only handles storage operations. Event emission and hook execution are handled by the calling facade layer.
Example implementation:
class HiveStore implements HiStore<String, dynamic> {
final Box<String> box;
@override
Future<dynamic> get(String key) async {
final raw = await box.get(key);
return raw != null ? jsonDecode(raw) : null;
}
// ... other methods
}
Constructors
- HiStore()
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- supportsMeta → bool
-
Whether this store supports metadata.
no setter
Methods
-
clear(
) → Future< void> - Clears all values from the store.
-
clearMeta(
) → Future< void> - Clears all metadata from the store.
-
delete(
K key) → Future< void> - Deletes a value by key.
-
deleteMeta(
K key) → Future< void> - Deletes metadata for a key.
-
entries(
) → Stream< MapEntry< K, V> > - Returns a stream of all key-value entries in the store.
-
get(
K key) → Future< V?> - Retrieves a value by key.
-
getMeta(
K key) → Future< Map< String, dynamic> ?> - Retrieves metadata for a key.
-
keys(
) → Stream< K> - Returns a stream of all keys in the store.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
put(
K key, V value) → Future< void> - Stores a value with the given key.
-
putMeta(
K key, Map< String, dynamic> meta) → Future<void> - Stores metadata for a key.
-
toString(
) → String -
A string representation of this object.
inherited
-
values(
) → Stream< V> - Returns a stream of all values in the store.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited