namespace flutter {

class PlatformMessageRouter {
 public:
  PlatformMessageRouter();
  ~PlatformMessageRouter();

  void HandlePlatformMessage(
      std::unique_ptr<flutter::PlatformMessage> message) const;

  void SetMessageHandler(const std::string& channel,
                         FlutterBinaryMessageHandler handler);

 private:
  std::unordered_map<std::string, fml::ScopedBlock<FlutterBinaryMessageHandler>>
      message_handlers_;

  FML_DISALLOW_COPY_AND_ASSIGN(PlatformMessageRouter);
};

}  // namespace flutter

#endif  // SHELL_PLATFORM_IOS_FRAMEWORK_SOURCE_ACCESSIBILITY_BRIDGE_H_
