namespace ash {

// Manages communication between the mash shelf and the browser.
class ShelfDelegateMus : public ShelfDelegate {
 public:
  ShelfDelegateMus();
  ~ShelfDelegateMus() override;

 private:
  // ShelfDelegate:
  ShelfID GetShelfIDForAppID(const std::string& app_id) override;
  ShelfID GetShelfIDForAppIDAndLaunchID(const std::string& app_id,
                                        const std::string& launch_id) override;
  bool HasShelfIDToAppIDMapping(ShelfID id) const override;
  const std::string& GetAppIDForShelfID(ShelfID id) override;
  void PinAppWithID(const std::string& app_id) override;
  bool IsAppPinned(const std::string& app_id) override;
  void UnpinAppWithID(const std::string& app_id) override;

  DISALLOW_COPY_AND_ASSIGN(ShelfDelegateMus);
};

}  // namespace ash

#endif  // ASH_MUS_SHELF_DELEGATE_MUS_H_
