{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TemplateHaskell #-}
module Tesla.Car.Command.Valet (
setValetMode, clearValetPIN
) where
import Control.Monad.IO.Class (MonadIO (..))
import Tesla.Car.Command
setValetMode :: MonadIO m => Bool -> Int -> Car m CommandResponse
setValetMode :: forall (m :: * -> *).
MonadIO m =>
Bool -> Int -> Car m CommandResponse
setValetMode Bool
on Int
pin = forall (m :: * -> *).
MonadIO m =>
String -> [Pair] -> Car m CommandResponse
runCmd String
"set_valet_mode" [ Key
"on" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
.= Bool
on, Key
"password" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
.= Int
pin]
mkCommand "clearValetPIN" "reset_valet_pin"