LogoSignals.dart
Copy Markdown
rodydavis/signals.dart 999999

Type: SignalsKeyValueStore

API reference and details for SignalsKeyValueStore from signals.dart.

SignalsKeyValueStore#

Kind: class  |  Package: package:signals_core

Class: SignalsKeyValueStore#

An abstract class defining the persistence adapter contract for PersistedSignal.

Implement this interface to bind PersistedSignal to your storage engine of choice, such as local files, SQLite, SharedPreferences, Hive, or indexedDB.

Example: Custom Shared Preferences Store (Flutter)#

import 'package:shared_preferences/shared_preferences.dart';
import 'package:signals/signals.dart';

class SharedPreferencesStore implements SignalsKeyValueStore {
  final SharedPreferences prefs;
  SharedPreferencesStore(this.prefs);

  @override
  Future<String?> getItem(String key) async {
    return prefs.getString(key);
  }

  @override
  Future<void> setItem(String key, String value) async {
    await prefs.setString(key, value);
  }

  @override
  Future<void> removeItem(String key) async {
    await prefs.remove(key);
  }
}

Members of SignalsKeyValueStore#

Member Type Signature Description
setItem method dart Future setItem(String key, String value) Sets an item in the store.
getItem method dart Future<String?> getItem(String key) Gets an item from the store.
removeItem method dart Future removeItem(String key) Removes an item from the store.
defaultStore field dart static SignalsKeyValueStore defaultStore The default store to be used if no store is provided.

References#

The SignalsKeyValueStore type is referenced and used in the following pages: