module Halogen.Query.Input where

import HPrelude
import Web.DOM.Element

newtype RefLabel = RefLabel Text

data Input msg
  = Action msg
  | RefUpdate RefLabel (Maybe Element)
  deriving ((forall a b. (a -> b) -> Input a -> Input b)
-> (forall a b. a -> Input b -> Input a) -> Functor Input
forall a b. a -> Input b -> Input a
forall a b. (a -> b) -> Input a -> Input b
forall (f :: * -> *).
(forall a b. (a -> b) -> f a -> f b)
-> (forall a b. a -> f b -> f a) -> Functor f
$cfmap :: forall a b. (a -> b) -> Input a -> Input b
fmap :: forall a b. (a -> b) -> Input a -> Input b
$c<$ :: forall a b. a -> Input b -> Input a
<$ :: forall a b. a -> Input b -> Input a
Functor)