/** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #pragma once #include #include #include namespace facebook { namespace react { /* * Represents ready-to-dispatch event data. */ class RawEvent { public: using RawEventDispatchable = std::function; RawEvent( const std::string &type, const folly::dynamic &payload, const EventTarget &eventTarget, const RawEventDispatchable &isDispachable ); const std::string type; const folly::dynamic payload; const EventTarget eventTarget; /* * Returns `true` if event can be dispatched to `eventTarget`. * Events that associated with unmounted or deallocated `ShadowNode`s * must not be dispatched. */ bool isDispachable() const; private: const RawEventDispatchable isDispachable_; }; } // namespace react } // namespace facebook