{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeOperators #-}
module Telegram.Bot.API.Methods.AnswerCallbackQuery 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.Internal.TH
import Telegram.Bot.API.MakingRequests
import Telegram.Bot.API.Types
data AnswerCallbackQueryRequest = AnswerCallbackQueryRequest
{ AnswerCallbackQueryRequest -> CallbackQueryId
answerCallbackQueryCallbackQueryId :: CallbackQueryId
, AnswerCallbackQueryRequest -> Maybe Text
answerCallbackQueryText :: Maybe Text
, AnswerCallbackQueryRequest -> Maybe Bool
answerCallbackQueryShowAlert :: Maybe Bool
, AnswerCallbackQueryRequest -> Maybe Text
answerCallbackQueryUrl :: Maybe Text
, AnswerCallbackQueryRequest -> Maybe Integer
answerCallbackQueryCacheTime :: Maybe Integer
}
deriving (forall x.
AnswerCallbackQueryRequest -> Rep AnswerCallbackQueryRequest x)
-> (forall x.
Rep AnswerCallbackQueryRequest x -> AnswerCallbackQueryRequest)
-> Generic AnswerCallbackQueryRequest
forall x.
Rep AnswerCallbackQueryRequest x -> AnswerCallbackQueryRequest
forall x.
AnswerCallbackQueryRequest -> Rep AnswerCallbackQueryRequest x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
AnswerCallbackQueryRequest -> Rep AnswerCallbackQueryRequest x
from :: forall x.
AnswerCallbackQueryRequest -> Rep AnswerCallbackQueryRequest x
$cto :: forall x.
Rep AnswerCallbackQueryRequest x -> AnswerCallbackQueryRequest
to :: forall x.
Rep AnswerCallbackQueryRequest x -> AnswerCallbackQueryRequest
Generic
instance ToJSON AnswerCallbackQueryRequest where toJSON :: AnswerCallbackQueryRequest -> Value
toJSON = AnswerCallbackQueryRequest -> Value
forall a (d :: Meta) (f :: * -> *).
(Generic a, GToJSON Zero (Rep a), Rep a ~ D1 d f, Datatype d) =>
a -> Value
gtoJSON
instance FromJSON AnswerCallbackQueryRequest where parseJSON :: Value -> Parser AnswerCallbackQueryRequest
parseJSON = Value -> Parser AnswerCallbackQueryRequest
forall a (d :: Meta) (f :: * -> *).
(Generic a, GFromJSON Zero (Rep a), Rep a ~ D1 d f, Datatype d) =>
Value -> Parser a
gparseJSON
type AnswerCallbackQuery = "answerCallbackQuery"
:> ReqBody '[JSON] AnswerCallbackQueryRequest
:> Post '[JSON] (Response Bool)
answerCallbackQuery :: AnswerCallbackQueryRequest -> ClientM (Response Bool)
answerCallbackQuery :: AnswerCallbackQueryRequest -> ClientM (Response Bool)
answerCallbackQuery = Proxy AnswerCallbackQuery -> Client ClientM AnswerCallbackQuery
forall api.
HasClient ClientM api =>
Proxy api -> Client ClientM api
client (forall t. Proxy t
forall {k} (t :: k). Proxy t
Proxy @AnswerCallbackQuery)
makeDefault ''AnswerCallbackQueryRequest