{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeOperators #-}
module Telegram.Bot.API.Methods.SetChatAdministratorCustomTitle where
import Data.Aeson (FromJSON (..), ToJSON (..))
import Data.Proxy
import Data.Text
import GHC.Generics (Generic)
import Servant.API
import Servant.Client hiding (Response)
import Telegram.Bot.API.Internal.Utils
import Telegram.Bot.API.MakingRequests
import Telegram.Bot.API.Types
import Telegram.Bot.API.Internal.TH
data SetChatAdministratorCustomTitleRequest = SetChatAdministratorCustomTitleRequest
{ SetChatAdministratorCustomTitleRequest -> SomeChatId
setChatAdministratorCustomTitleChatId :: SomeChatId
, SetChatAdministratorCustomTitleRequest -> UserId
setChatAdministratorCustomTitleUserId :: UserId
, SetChatAdministratorCustomTitleRequest -> Text
setChatAdministratorCustomTitleCustomTitle :: Text
}
deriving (forall x.
SetChatAdministratorCustomTitleRequest
-> Rep SetChatAdministratorCustomTitleRequest x)
-> (forall x.
Rep SetChatAdministratorCustomTitleRequest x
-> SetChatAdministratorCustomTitleRequest)
-> Generic SetChatAdministratorCustomTitleRequest
forall x.
Rep SetChatAdministratorCustomTitleRequest x
-> SetChatAdministratorCustomTitleRequest
forall x.
SetChatAdministratorCustomTitleRequest
-> Rep SetChatAdministratorCustomTitleRequest x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
SetChatAdministratorCustomTitleRequest
-> Rep SetChatAdministratorCustomTitleRequest x
from :: forall x.
SetChatAdministratorCustomTitleRequest
-> Rep SetChatAdministratorCustomTitleRequest x
$cto :: forall x.
Rep SetChatAdministratorCustomTitleRequest x
-> SetChatAdministratorCustomTitleRequest
to :: forall x.
Rep SetChatAdministratorCustomTitleRequest x
-> SetChatAdministratorCustomTitleRequest
Generic
instance ToJSON SetChatAdministratorCustomTitleRequest where toJSON :: SetChatAdministratorCustomTitleRequest -> Value
toJSON = SetChatAdministratorCustomTitleRequest -> Value
forall a (d :: Meta) (f :: * -> *).
(Generic a, GToJSON Zero (Rep a), Rep a ~ D1 d f, Datatype d) =>
a -> Value
gtoJSON
instance FromJSON SetChatAdministratorCustomTitleRequest where parseJSON :: Value -> Parser SetChatAdministratorCustomTitleRequest
parseJSON = Value -> Parser SetChatAdministratorCustomTitleRequest
forall a (d :: Meta) (f :: * -> *).
(Generic a, GFromJSON Zero (Rep a), Rep a ~ D1 d f, Datatype d) =>
Value -> Parser a
gparseJSON
type SetChatAdministratorCustomTitle = "setChatAdministratorCustomTitle"
:> ReqBody '[JSON] SetChatAdministratorCustomTitleRequest
:> Post '[JSON] (Response Bool)
setChatAdministratorCustomTitle :: SetChatAdministratorCustomTitleRequest -> ClientM (Response Bool)
setChatAdministratorCustomTitle :: SetChatAdministratorCustomTitleRequest -> ClientM (Response Bool)
setChatAdministratorCustomTitle = Proxy SetChatAdministratorCustomTitle
-> Client ClientM SetChatAdministratorCustomTitle
forall api.
HasClient ClientM api =>
Proxy api -> Client ClientM api
client (forall t. Proxy t
forall {k} (t :: k). Proxy t
Proxy @SetChatAdministratorCustomTitle)
makeDefault ''SetChatAdministratorCustomTitleRequest