@override Future<dynamic> get(String key) async { final item = _store[key]; if (item == null) return null; if (item.isExpired) { _store.remove(key); return null; } return item.value; }