interface Action exposes [Action, none, update, map] imports [] Action state : [None, Update state] none : Action * none = None update : state -> Action state update = Update map : Action a, (a -> b) -> Action b map = \action, transform -> when action is None -> None Update state -> Update (transform state)