buffet: Use DictionaryValue in StorageInterface

It is used to store dictionaries only.

BUG=none
TEST='FEATURES=test emerge-gizmo buffet'

Change-Id: Ic85f77a3d31853bf8ed244d7f58264e9c809f666
Reviewed-on: https://chromium-review.googlesource.com/271301
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Reviewed-by: Vitaly Buka <vitalybuka@chromium.org>
Commit-Queue: Vitaly Buka <vitalybuka@chromium.org>
Tested-by: Vitaly Buka <vitalybuka@chromium.org>
diff --git a/buffet/storage_impls.h b/buffet/storage_impls.h
index f4034be..bacedd0 100644
--- a/buffet/storage_impls.h
+++ b/buffet/storage_impls.h
@@ -18,8 +18,8 @@
  public:
   explicit FileStorage(const base::FilePath& file_path);
   virtual ~FileStorage() = default;
-  std::unique_ptr<base::Value> Load() override;
-  bool Save(const base::Value& config) override;
+  std::unique_ptr<base::DictionaryValue> Load() override;
+  bool Save(const base::DictionaryValue& config) override;
 
  private:
   base::FilePath file_path_;
@@ -31,14 +31,14 @@
  public:
   MemStorage() = default;
   virtual ~MemStorage() = default;
-  std::unique_ptr<base::Value> Load() override;
-  bool Save(const base::Value& config) override;
+  std::unique_ptr<base::DictionaryValue> Load() override;
+  bool Save(const base::DictionaryValue& config) override;
   int save_count() { return save_count_; }
   void reset_save_count() { save_count_ = 0; }
 
  private:
   int save_count_ = 0;
-  std::unique_ptr<base::Value> cache_;
+  base::DictionaryValue cache_;
   DISALLOW_COPY_AND_ASSIGN(MemStorage);
 };