thought2 / elm-interactive / Interactive


type alias Model =
{ time : Basics.Float
, mouse : ( Basics.Float
, Basics.Float )
, keysDown : List Keyboard.Key
, windowSize : ( Basics.Float
, Basics.Float ) 
}


type Msg


type OutMsg
    = OutTick Basics.Float
    | OutMouse (( Basics.Float, Basics.Float ))
    | OutKeyChange Keyboard.KeyChange
    | OutWindowResize (( Basics.Float, Basics.Float ))

init : ( Model, Platform.Cmd.Cmd Msg )

subKeyboard : Platform.Sub.Sub Msg

subMouse : Platform.Sub.Sub Msg

subTick : Platform.Sub.Sub Msg

subWindowResize : Platform.Sub.Sub Msg

subscriptions : Platform.Sub.Sub Msg

update : Msg -> Model -> ( Model, Maybe OutMsg )