-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Types used in Telegram bot API
--
-- Defines various datatypes and their serialization methods useful for
-- writing bindings to Telegram bot API.
@package telegram-types
@version 0.2.0
-- | Sending files
module Web.Telegram.Types.Input
data InputMediaAnimation
InputMediaAnimation :: Either Text Media -> Maybe Text -> Maybe Text -> Maybe ParseMode -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InputMediaAnimation
[$sel:media:InputMediaAnimation] :: InputMediaAnimation -> Either Text Media
[$sel:thumb:InputMediaAnimation] :: InputMediaAnimation -> Maybe Text
[$sel:caption:InputMediaAnimation] :: InputMediaAnimation -> Maybe Text
[$sel:parseMode:InputMediaAnimation] :: InputMediaAnimation -> Maybe ParseMode
[$sel:width:InputMediaAnimation] :: InputMediaAnimation -> Maybe Integer
[$sel:height:InputMediaAnimation] :: InputMediaAnimation -> Maybe Integer
[$sel:duration:InputMediaAnimation] :: InputMediaAnimation -> Maybe Integer
data InputMediaAudio
InputMediaAudio :: Either Text Media -> Maybe Text -> Maybe Text -> Maybe ParseMode -> Maybe Integer -> Maybe Text -> Maybe Text -> InputMediaAudio
[$sel:media:InputMediaAudio] :: InputMediaAudio -> Either Text Media
[$sel:thumb:InputMediaAudio] :: InputMediaAudio -> Maybe Text
[$sel:caption:InputMediaAudio] :: InputMediaAudio -> Maybe Text
[$sel:parseMode:InputMediaAudio] :: InputMediaAudio -> Maybe ParseMode
[$sel:duration:InputMediaAudio] :: InputMediaAudio -> Maybe Integer
[$sel:performer:InputMediaAudio] :: InputMediaAudio -> Maybe Text
[$sel:title:InputMediaAudio] :: InputMediaAudio -> Maybe Text
data InputMediaDocument
InputMediaDocument :: Either Text Media -> Maybe Text -> Maybe Text -> Maybe ParseMode -> InputMediaDocument
[$sel:media:InputMediaDocument] :: InputMediaDocument -> Either Text Media
[$sel:thumb:InputMediaDocument] :: InputMediaDocument -> Maybe Text
[$sel:caption:InputMediaDocument] :: InputMediaDocument -> Maybe Text
[$sel:parseMode:InputMediaDocument] :: InputMediaDocument -> Maybe ParseMode
data InputMediaVideo
InputMediaVideo :: Either Text Media -> Maybe Text -> Maybe Text -> Maybe ParseMode -> InputMediaVideo
[$sel:media:InputMediaVideo] :: InputMediaVideo -> Either Text Media
[$sel:thumb:InputMediaVideo] :: InputMediaVideo -> Maybe Text
[$sel:caption:InputMediaVideo] :: InputMediaVideo -> Maybe Text
[$sel:parseMode:InputMediaVideo] :: InputMediaVideo -> Maybe ParseMode
data InputMediaPhoto
InputMediaPhoto :: Either Text Media -> Maybe Text -> Maybe ParseMode -> InputMediaPhoto
[$sel:media:InputMediaPhoto] :: InputMediaPhoto -> Either Text Media
[$sel:caption:InputMediaPhoto] :: InputMediaPhoto -> Maybe Text
[$sel:parseMode:InputMediaPhoto] :: InputMediaPhoto -> Maybe ParseMode
type InputMedia = Union '[InputMediaAnimation, InputMediaDocument, InputMediaAudio, InputMediaVideo, InputMediaPhoto]
data InputFile
InputFile :: Text -> Text -> ByteString -> InputFile
[fileName] :: InputFile -> Text
[mimeType] :: InputFile -> Text
[content] :: InputFile -> ByteString
type VideoOrPhoto = Union '[InputMediaPhoto, InputMediaVideo]
newtype Cert
Cert :: InputFile -> Cert
newtype Thumb
Thumb :: InputFile -> Thumb
newtype Photo
Photo :: InputFile -> Photo
newtype Doc
Doc :: InputFile -> Doc
newtype Animation
Animation :: InputFile -> Animation
newtype Audio
Audio :: InputFile -> Audio
newtype Voice
Voice :: InputFile -> Voice
newtype Video
Video :: InputFile -> Video
newtype VideoNote
VideoNote :: InputFile -> VideoNote
newtype Sticker
Sticker :: InputFile -> Sticker
newtype PngSticker
PngSticker :: InputFile -> PngSticker
newtype TgsSticker
TgsSticker :: InputFile -> TgsSticker
newtype Media
Media :: InputFile -> Media
readInput :: FilePath -> IO InputFile
module Web.Telegram.Types.Inline
data InlineQueryResult
InlineQueryResultArticle :: Text -> Text -> Text -> InputMessageContent -> Maybe InlineKeyboardMarkup -> Text -> Maybe Bool -> Maybe Text -> Maybe Text -> Maybe Integer -> Maybe Integer -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultInputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> InputMessageContent
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:url:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:hideUrl:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Bool
[$sel:description:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:thumbUrl:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:thumbWidth:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:thumbHeight:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
InlineQueryResultPhoto :: Text -> Text -> Text -> Text -> Maybe Integer -> Maybe Integer -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:photoUrl:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:thumbUrl':InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:photoWidth:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:photoHeight:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:resultTitle:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:description:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultGif :: Text -> Text -> Text -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Text -> Maybe Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:gifUrl:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:gifWidth:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:gifHeight:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:gifDuration:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:thumbUrl':InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultTitle:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultMpeg4Gif :: Text -> Text -> Text -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Text -> Maybe Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:mpeg4Url:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:mpeg4Width:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:mpeg4Height:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:mpeg4Duration:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:thumbUrl':InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultTitle:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultVideo :: Text -> Text -> Text -> Text -> Text -> Text -> Maybe Text -> Maybe ParseMode -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Text -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:videoUrl:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:mimeType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:thumbUrl':InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:videoWidth:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:videoHeight:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:videoDuration:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:description:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultAudio :: Text -> Text -> Text -> Text -> Maybe Text -> Maybe ParseMode -> Maybe Text -> Maybe Integer -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:audioUrl:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:performer:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:audioDuration:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultVoice :: Text -> Text -> Text -> Text -> Maybe Text -> Maybe ParseMode -> Maybe Integer -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:voiceUrl:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:voiceDuration:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultDocument :: Text -> Text -> Text -> Text -> Text -> Maybe Text -> Maybe ParseMode -> Maybe Text -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> Maybe Text -> Maybe Integer -> Maybe Integer -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:documentUrl:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:mimeType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:description:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
[$sel:thumbUrl:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:thumbWidth:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:thumbHeight:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
InlineQueryResultLocation :: Text -> Text -> Float -> Float -> Text -> Maybe Integer -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> Maybe Text -> Maybe Integer -> Maybe Integer -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:latitude:InlineQueryResultArticle] :: InlineQueryResult -> Float
[$sel:longitude:InlineQueryResultArticle] :: InlineQueryResult -> Float
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:livePeriod:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
[$sel:thumbUrl:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:thumbWidth:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:thumbHeight:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
InlineQueryResultVenue :: Text -> Text -> Float -> Float -> Text -> Text -> Text -> Maybe Text -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> Maybe Text -> Maybe Integer -> Maybe Integer -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:latitude:InlineQueryResultArticle] :: InlineQueryResult -> Float
[$sel:longitude:InlineQueryResultArticle] :: InlineQueryResult -> Float
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:address:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:foursquareId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:foursquareType:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
[$sel:thumbUrl:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:thumbWidth:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:thumbHeight:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
InlineQueryResultContact :: Text -> Text -> Text -> Text -> Maybe Text -> Maybe Text -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> Maybe Text -> Maybe Integer -> Maybe Integer -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:phoneNumber:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:firstName:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:lastName:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:vcard:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
[$sel:thumbUrl:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:thumbWidth:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
[$sel:thumbHeight:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Integer
InlineQueryResultGame :: Text -> Text -> Text -> Maybe InlineKeyboardMarkup -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:gameShortName:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
InlineQueryResultCachedPhoto :: Text -> Text -> Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:photoFileId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultTitle:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:description:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultCachedGif :: Text -> Text -> Text -> Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:gifFileId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultCachedMpeg4Gif :: Text -> Text -> Text -> Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:mpeg4FileId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultCachedSticker :: Text -> Text -> Text -> Text -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:stickerFileId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultCachedDocument :: Text -> Text -> Text -> Text -> Maybe Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:documentFileId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:description:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultCachedVideo :: Text -> Text -> Text -> Text -> Maybe Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:videoFileId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:description:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultCachedVoice :: Text -> Text -> Text -> Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:voiceFileId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:title:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
InlineQueryResultCachedAudio :: Text -> Text -> Text -> Maybe Text -> Maybe ParseMode -> Maybe InlineKeyboardMarkup -> Maybe InputMessageContent -> InlineQueryResult
[$sel:resultType:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:resultId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:audioFileId:InlineQueryResultArticle] :: InlineQueryResult -> Text
[$sel:caption:InlineQueryResultArticle] :: InlineQueryResult -> Maybe Text
[$sel:parseMode:InlineQueryResultArticle] :: InlineQueryResult -> Maybe ParseMode
[$sel:replyMarkup:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InlineKeyboardMarkup
[$sel:inputMessageContent:InlineQueryResultArticle] :: InlineQueryResult -> Maybe InputMessageContent
data InlineQuery
IQ :: Text -> User -> Maybe Location -> Text -> Text -> InlineQuery
[$sel:queryId:IQ] :: InlineQuery -> Text
[$sel:from:IQ] :: InlineQuery -> User
[$sel:location:IQ] :: InlineQuery -> Maybe Location
[$sel:query:IQ] :: InlineQuery -> Text
[$sel:offset:IQ] :: InlineQuery -> Text
data ChosenInlineResult
ChosenIR :: Text -> User -> Maybe Location -> Maybe Text -> Text -> ChosenInlineResult
[$sel:resultId:ChosenIR] :: ChosenInlineResult -> Text
[$sel:from:ChosenIR] :: ChosenInlineResult -> User
[$sel:location:ChosenIR] :: ChosenInlineResult -> Maybe Location
[$sel:inlineMessageId:ChosenIR] :: ChosenInlineResult -> Maybe Text
[$sel:query:ChosenIR] :: ChosenInlineResult -> Text
data InputMessageContent
InputTextMessageContent :: Text -> Maybe ParseMode -> Maybe Bool -> InputMessageContent
[$sel:messageText:InputTextMessageContent] :: InputMessageContent -> Text
[$sel:parseMode:InputTextMessageContent] :: InputMessageContent -> Maybe ParseMode
[$sel:disableWebPagePreview:InputTextMessageContent] :: InputMessageContent -> Maybe Bool
InputLocationMessageContent :: Float -> Float -> Maybe Integer -> InputMessageContent
[$sel:latitude:InputTextMessageContent] :: InputMessageContent -> Float
[$sel:longitude:InputTextMessageContent] :: InputMessageContent -> Float
[$sel:livePeriod:InputTextMessageContent] :: InputMessageContent -> Maybe Integer
InputVenueMessageContent :: Float -> Float -> Text -> Text -> Text -> Text -> InputMessageContent
[$sel:latitude:InputTextMessageContent] :: InputMessageContent -> Float
[$sel:longitude:InputTextMessageContent] :: InputMessageContent -> Float
[$sel:title:InputTextMessageContent] :: InputMessageContent -> Text
[$sel:address:InputTextMessageContent] :: InputMessageContent -> Text
[$sel:foursquareId:InputTextMessageContent] :: InputMessageContent -> Text
[$sel:foursquareType:InputTextMessageContent] :: InputMessageContent -> Text
InputContactMessageContent :: Text -> Text -> Maybe Text -> Maybe Text -> InputMessageContent
[$sel:phoneNumber:InputTextMessageContent] :: InputMessageContent -> Text
[$sel:firstName:InputTextMessageContent] :: InputMessageContent -> Text
[$sel:lastName:InputTextMessageContent] :: InputMessageContent -> Maybe Text
[$sel:vcard:InputTextMessageContent] :: InputMessageContent -> Maybe Text
-- | User interactions: customized keyboards, clickable buttons, popups and
-- inline displays
module Web.Telegram.Types.Interaction
data CallbackQuery
CBQuery :: Text -> User -> Message -> Maybe Text -> Text -> Maybe Text -> Maybe Text -> CallbackQuery
[$sel:callbackId:CBQuery] :: CallbackQuery -> Text
[$sel:from:CBQuery] :: CallbackQuery -> User
[$sel:message:CBQuery] :: CallbackQuery -> Message
[$sel:inlineMessageId:CBQuery] :: CallbackQuery -> Maybe Text
[$sel:chatInstance:CBQuery] :: CallbackQuery -> Text
[$sel:callbackData:CBQuery] :: CallbackQuery -> Maybe Text
[$sel:gameShortName:CBQuery] :: CallbackQuery -> Maybe Text
data ShippingQuery
SQuery :: Text -> User -> Text -> ShippingAddress -> ShippingQuery
[$sel:queryId:SQuery] :: ShippingQuery -> Text
[$sel:from:SQuery] :: ShippingQuery -> User
[$sel:invoicePayload:SQuery] :: ShippingQuery -> Text
[$sel:shippingAddress:SQuery] :: ShippingQuery -> ShippingAddress
data PreCheckoutQuery
PCQuery :: Text -> User -> Text -> Integer -> Text -> Maybe String -> Maybe OrderInfo -> PreCheckoutQuery
[$sel:queryId:PCQuery] :: PreCheckoutQuery -> Text
[$sel:from:PCQuery] :: PreCheckoutQuery -> User
[$sel:currency:PCQuery] :: PreCheckoutQuery -> Text
[$sel:totalAmount:PCQuery] :: PreCheckoutQuery -> Integer
[$sel:invoicePayload:PCQuery] :: PreCheckoutQuery -> Text
[$sel:shippingOptionId:PCQuery] :: PreCheckoutQuery -> Maybe String
[$sel:orderInfo:PCQuery] :: PreCheckoutQuery -> Maybe OrderInfo
data ReplyKeyboardMarkup
ReplyKeyboardMarkup :: [[KeyboardButton]] -> Maybe Bool -> Maybe Bool -> Maybe Bool -> ReplyKeyboardMarkup
[$sel:keyboard:ReplyKeyboardMarkup] :: ReplyKeyboardMarkup -> [[KeyboardButton]]
[$sel:resizeKeyboard:ReplyKeyboardMarkup] :: ReplyKeyboardMarkup -> Maybe Bool
[$sel:oneTimeKeyboard:ReplyKeyboardMarkup] :: ReplyKeyboardMarkup -> Maybe Bool
[$sel:selective:ReplyKeyboardMarkup] :: ReplyKeyboardMarkup -> Maybe Bool
data KeyboardButton
KeyboardButton :: Text -> Maybe Bool -> Maybe Bool -> Maybe KeyboardButtonPollType -> KeyboardButton
[$sel:text:KeyboardButton] :: KeyboardButton -> Text
[$sel:requestContact:KeyboardButton] :: KeyboardButton -> Maybe Bool
[$sel:requestLocation:KeyboardButton] :: KeyboardButton -> Maybe Bool
[$sel:requestPoll:KeyboardButton] :: KeyboardButton -> Maybe KeyboardButtonPollType
newtype KeyboardButtonPollType
KeyboardButtonPollType :: Maybe PollType -> KeyboardButtonPollType
[$sel:pollType:KeyboardButtonPollType] :: KeyboardButtonPollType -> Maybe PollType
data ReplyKeyboardRemove
ReplyKeyboardRemove :: Bool -> Maybe Bool -> ReplyKeyboardRemove
[$sel:removeKeyboard:ReplyKeyboardRemove] :: ReplyKeyboardRemove -> Bool
[$sel:selective:ReplyKeyboardRemove] :: ReplyKeyboardRemove -> Maybe Bool
newtype InlineKeyboardMarkup
InlineKeyboardMarkup :: [[InlineKeyboardButton]] -> InlineKeyboardMarkup
[$sel:inlineKeyboard:InlineKeyboardMarkup] :: InlineKeyboardMarkup -> [[InlineKeyboardButton]]
data InlineKeyboardButton
InlineKeyboardButton :: Text -> Maybe Text -> Maybe LoginUrl -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Bool -> InlineKeyboardButton
[$sel:text:InlineKeyboardButton] :: InlineKeyboardButton -> Text
[$sel:url:InlineKeyboardButton] :: InlineKeyboardButton -> Maybe Text
[$sel:loginUrl:InlineKeyboardButton] :: InlineKeyboardButton -> Maybe LoginUrl
[$sel:callbackData:InlineKeyboardButton] :: InlineKeyboardButton -> Maybe Text
[$sel:switchInlineQuery:InlineKeyboardButton] :: InlineKeyboardButton -> Maybe Text
[$sel:switchInlineQueryCurrentChat:InlineKeyboardButton] :: InlineKeyboardButton -> Maybe Text
[$sel:pay:InlineKeyboardButton] :: InlineKeyboardButton -> Maybe Bool
data ForceReply
ForceReply :: Bool -> Maybe Bool -> ForceReply
[$sel:forceReply:ForceReply] :: ForceReply -> Bool
[$sel:selective:ForceReply] :: ForceReply -> Maybe Bool
data LoginUrl
LoginUrl :: Text -> Maybe Text -> Maybe Text -> Maybe Bool -> LoginUrl
[$sel:url:LoginUrl] :: LoginUrl -> Text
[$sel:forwardText:LoginUrl] :: LoginUrl -> Maybe Text
[$sel:botUsername:LoginUrl] :: LoginUrl -> Maybe Text
[$sel:requestWriteAccess:LoginUrl] :: LoginUrl -> Maybe Bool
type ReplyMarkup = Union '[InlineKeyboardMarkup, ReplyKeyboardMarkup, ReplyKeyboardRemove, ForceReply]
data Action
Typing :: Action
UploadPhoto :: Action
RecordVideo :: Action
UploadVideo :: Action
RecordAudio :: Action
UploadAudio :: Action
UploadDocument :: Action
FindLocation :: Action
RecordVideoNote :: Action
UploadVideoNote :: Action
instance Web.Internal.HttpApiData.ToHttpApiData Web.Telegram.Types.Interaction.Action
instance Data.Aeson.Types.FromJSON.FromJSON Web.Telegram.Types.Interaction.Action
instance Data.Aeson.Types.ToJSON.ToJSON Web.Telegram.Types.Interaction.Action
instance Web.Telegram.Types.Internal.Utils.Default.Default Web.Telegram.Types.Interaction.Action
instance GHC.Generics.Generic Web.Telegram.Types.Interaction.Action
instance GHC.Classes.Ord Web.Telegram.Types.Interaction.Action
instance GHC.Classes.Eq Web.Telegram.Types.Interaction.Action
instance GHC.Show.Show Web.Telegram.Types.Interaction.Action
instance Web.Internal.HttpApiData.ToHttpApiData (Data.OpenUnion.Internal.Union '[Web.Telegram.Types.Internal.Keyboard.InlineKeyboardMarkup, Web.Telegram.Types.Internal.Keyboard.ReplyKeyboardMarkup, Web.Telegram.Types.Internal.Keyboard.ReplyKeyboardRemove, Web.Telegram.Types.Internal.Keyboard.ForceReply])
instance Data.Aeson.Types.ToJSON.ToJSON Web.Telegram.Types.Interaction.ReplyMarkup
module Web.Telegram.Types
-- | A Telegram user or bot.
data User
User :: Integer -> Bool -> Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Bool -> Maybe Bool -> Maybe Bool -> User
-- | Unique identifier for this user or bot
[userId] :: User -> Integer
-- | True, if this user is a bot
[isBot] :: User -> Bool
-- | User's or bot's first name
[firstName] :: User -> Text
-- | User's or bot's last name
[lastName] :: User -> Maybe Text
-- | User's or bot's username
[username] :: User -> Maybe Text
-- | IETF language tag of the user's language
[languageCode] :: User -> Maybe Text
-- | True, if the bot can be invited to groups. Returned only in getMe
[canJoinGroups] :: User -> Maybe Bool
-- | True, if privacy mode is disabled for the bot. Returned only in getMe
[canReadAllGroupMessages] :: User -> Maybe Bool
-- | True, if the bot supports inline queries. Returned only in getMe.
[supportsInlineQueries] :: User -> Maybe Bool
data Message
Msg :: MessageMetadata -> MessageContent -> Message
[$sel:metadata:Msg] :: Message -> MessageMetadata
[$sel:content:Msg] :: Message -> MessageContent
data MessageMetadata
MMetadata :: Integer -> Maybe User -> Integer -> Chat -> Maybe User -> Maybe Chat -> Maybe Integer -> Maybe Text -> Maybe Text -> Maybe Integer -> Maybe Message -> Maybe Integer -> Maybe Text -> Maybe Text -> Maybe InlineKeyboardMarkup -> MessageMetadata
[$sel:messageId:MMetadata] :: MessageMetadata -> Integer
[$sel:from:MMetadata] :: MessageMetadata -> Maybe User
[$sel:date:MMetadata] :: MessageMetadata -> Integer
[$sel:chat:MMetadata] :: MessageMetadata -> Chat
[$sel:forwardFrom:MMetadata] :: MessageMetadata -> Maybe User
[$sel:forwardFromChat:MMetadata] :: MessageMetadata -> Maybe Chat
[$sel:forwardFromMessageId:MMetadata] :: MessageMetadata -> Maybe Integer
[$sel:forwardSignature:MMetadata] :: MessageMetadata -> Maybe Text
[$sel:forwardSenderName:MMetadata] :: MessageMetadata -> Maybe Text
[$sel:forwardDate:MMetadata] :: MessageMetadata -> Maybe Integer
[$sel:replyToMessage:MMetadata] :: MessageMetadata -> Maybe Message
[$sel:editDate:MMetadata] :: MessageMetadata -> Maybe Integer
[$sel:mediaGroupId:MMetadata] :: MessageMetadata -> Maybe Text
[$sel:authorSignature:MMetadata] :: MessageMetadata -> Maybe Text
[$sel:replyMarkup:MMetadata] :: MessageMetadata -> Maybe InlineKeyboardMarkup
data MessageEntity
MessageEntity :: MessageEntityType -> Integer -> Integer -> Maybe Text -> Maybe User -> Maybe Text -> MessageEntity
[$sel:entityType:MessageEntity] :: MessageEntity -> MessageEntityType
[$sel:offset:MessageEntity] :: MessageEntity -> Integer
[$sel:length:MessageEntity] :: MessageEntity -> Integer
[$sel:url:MessageEntity] :: MessageEntity -> Maybe Text
[$sel:user:MessageEntity] :: MessageEntity -> Maybe User
[$sel:language:MessageEntity] :: MessageEntity -> Maybe Text
data MessageContent
TextM :: Text -> Maybe [MessageEntity] -> MessageContent
[$sel:text:TextM] :: MessageContent -> Text
[$sel:entities:TextM] :: MessageContent -> Maybe [MessageEntity]
AudioM :: Audio -> Maybe Text -> Maybe [MessageEntity] -> MessageContent
[$sel:audio:TextM] :: MessageContent -> Audio
[$sel:caption:TextM] :: MessageContent -> Maybe Text
[$sel:captionEntities:TextM] :: MessageContent -> Maybe [MessageEntity]
DocumentM :: Document -> Maybe Text -> Maybe [MessageEntity] -> MessageContent
[$sel:document:TextM] :: MessageContent -> Document
[$sel:caption:TextM] :: MessageContent -> Maybe Text
[$sel:captionEntities:TextM] :: MessageContent -> Maybe [MessageEntity]
AnimationM :: Animation -> MessageContent
[$sel:animation:TextM] :: MessageContent -> Animation
GameM :: Game -> MessageContent
[$sel:game:TextM] :: MessageContent -> Game
PhotoM :: [PhotoSize] -> Maybe Text -> Maybe [MessageEntity] -> MessageContent
[$sel:photo:TextM] :: MessageContent -> [PhotoSize]
[$sel:caption:TextM] :: MessageContent -> Maybe Text
[$sel:captionEntities:TextM] :: MessageContent -> Maybe [MessageEntity]
StickerM :: Sticker -> MessageContent
[$sel:sticker:TextM] :: MessageContent -> Sticker
VideoM :: Video -> Maybe Text -> Maybe [MessageEntity] -> MessageContent
[$sel:video:TextM] :: MessageContent -> Video
[$sel:caption:TextM] :: MessageContent -> Maybe Text
[$sel:captionEntities:TextM] :: MessageContent -> Maybe [MessageEntity]
VoiceM :: Voice -> Maybe Text -> Maybe [MessageEntity] -> MessageContent
[$sel:voice:TextM] :: MessageContent -> Voice
[$sel:caption:TextM] :: MessageContent -> Maybe Text
[$sel:captionEntities:TextM] :: MessageContent -> Maybe [MessageEntity]
VideoNoteM :: VideoNote -> MessageContent
[$sel:videoNote:TextM] :: MessageContent -> VideoNote
ContactM :: Contact -> MessageContent
[$sel:contact:TextM] :: MessageContent -> Contact
LocationM :: Location -> MessageContent
[$sel:location:TextM] :: MessageContent -> Location
VenueM :: Venue -> MessageContent
[$sel:venue:TextM] :: MessageContent -> Venue
PollM :: Poll -> MessageContent
[$sel:poll:TextM] :: MessageContent -> Poll
NewChatMembers :: [User] -> MessageContent
[$sel:newChatMembers:TextM] :: MessageContent -> [User]
LeftChatMember :: User -> MessageContent
[$sel:leftChatMember:TextM] :: MessageContent -> User
NewChatPhoto :: [PhotoSize] -> MessageContent
[$sel:newChatPhoto:TextM] :: MessageContent -> [PhotoSize]
DeleteChatPhoto :: Bool -> MessageContent
[$sel:deleteChatPhoto:TextM] :: MessageContent -> Bool
GroupChatCreated :: Bool -> MessageContent
[$sel:groupChatCreated:TextM] :: MessageContent -> Bool
SupergroupChatCreated :: Bool -> MessageContent
[$sel:supergroupChatCreated:TextM] :: MessageContent -> Bool
ChannelChatCreated :: Bool -> MessageContent
[$sel:channelChatCreated:TextM] :: MessageContent -> Bool
MigrateToChatId :: Integer -> MessageContent
[$sel:migrateToChatId:TextM] :: MessageContent -> Integer
MigrateFromChatId :: Integer -> MessageContent
[$sel:migrateFromChatId:TextM] :: MessageContent -> Integer
PinnedMessage :: Message -> MessageContent
[$sel:pinnedMessage:TextM] :: MessageContent -> Message
InvoiceM :: Invoice -> MessageContent
[$sel:invoice:TextM] :: MessageContent -> Invoice
SuccessfulPaymentM :: SuccessfulPayment -> MessageContent
[$sel:successfulPayment:TextM] :: MessageContent -> SuccessfulPayment
ConnectedWebsite :: Text -> MessageContent
[$sel:connectedWebsite:TextM] :: MessageContent -> Text
PassportData :: PassportData -> MessageContent
[$sel:passPortData:TextM] :: MessageContent -> PassportData
data ParseMode
MarkdownV2 :: ParseMode
HTML :: ParseMode
Markdown :: ParseMode
data ChatId
ChatId :: Integer -> ChatId
ChanId :: Text -> ChatId
-- | https://core.telegram.org/bots/api#chat
data Chat
Chat :: Integer -> ChatType -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ChatPhoto -> Maybe Text -> Maybe Text -> Maybe Message -> Maybe ChatPermissions -> Maybe Integer -> Maybe Integer -> Maybe Bool -> Chat
[$sel:chatId:Chat] :: Chat -> Integer
[$sel:chatType:Chat] :: Chat -> ChatType
[$sel:title:Chat] :: Chat -> Maybe Text
[$sel:username:Chat] :: Chat -> Maybe Text
[$sel:firstName:Chat] :: Chat -> Maybe Text
[$sel:lastName:Chat] :: Chat -> Maybe Text
[$sel:photo:Chat] :: Chat -> Maybe ChatPhoto
[$sel:description:Chat] :: Chat -> Maybe Text
[$sel:inviteLink:Chat] :: Chat -> Maybe Text
[$sel:pinnedMessage:Chat] :: Chat -> Maybe Message
[$sel:permissions:Chat] :: Chat -> Maybe ChatPermissions
[$sel:slowModeDelay:Chat] :: Chat -> Maybe Integer
[$sel:stickerSetName:Chat] :: Chat -> Maybe Integer
[$sel:canSetStickerSet:Chat] :: Chat -> Maybe Bool
data ChatPermissions
ChatPermissions :: Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> ChatPermissions
[$sel:canSendMessages:ChatPermissions] :: ChatPermissions -> Maybe Bool
[$sel:canSendMediaMessages:ChatPermissions] :: ChatPermissions -> Maybe Bool
[$sel:canSendPolls:ChatPermissions] :: ChatPermissions -> Maybe Bool
[$sel:canSendOtherMesssages:ChatPermissions] :: ChatPermissions -> Maybe Bool
[$sel:canAddWebPagePreviews:ChatPermissions] :: ChatPermissions -> Maybe Bool
[$sel:canChangeInfo:ChatPermissions] :: ChatPermissions -> Maybe Bool
[$sel:canInviteUsers:ChatPermissions] :: ChatPermissions -> Maybe Bool
[$sel:canPinMessages:ChatPermissions] :: ChatPermissions -> Maybe Bool
data ChatPhoto
ChatPhoto :: Text -> Text -> Text -> Text -> ChatPhoto
[$sel:smallFileId:ChatPhoto] :: ChatPhoto -> Text
[$sel:smallFileUniqueId:ChatPhoto] :: ChatPhoto -> Text
[$sel:bigFileId:ChatPhoto] :: ChatPhoto -> Text
[$sel:bitFileUniqueId:ChatPhoto] :: ChatPhoto -> Text
data ChatMember
ChatMember :: User -> ChatStatus -> Text -> Maybe Integer -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> ChatMember
[$sel:user:ChatMember] :: ChatMember -> User
[$sel:status:ChatMember] :: ChatMember -> ChatStatus
[$sel:customTitle:ChatMember] :: ChatMember -> Text
[$sel:untilDate:ChatMember] :: ChatMember -> Maybe Integer
[$sel:canBeEdited:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canPostMessages:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canEditMessages:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canDeleteMessages:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canRestrictMembers:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canPromoteMembers:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canChangeInfo:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canInviteUsers:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canPinMessages:ChatMember] :: ChatMember -> Maybe Bool
[$sel:isMember:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canSendMessages:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canSendMediaMessages:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canSendPolls:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canSendOtherMesssages:ChatMember] :: ChatMember -> Maybe Bool
[$sel:canAddWebPagePreviews:ChatMember] :: ChatMember -> Maybe Bool
data PhotoSize
PhotoSize :: Text -> Text -> Integer -> Integer -> Maybe Integer -> PhotoSize
[$sel:fileId:PhotoSize] :: PhotoSize -> Text
[$sel:fileUniqueId:PhotoSize] :: PhotoSize -> Text
[$sel:width:PhotoSize] :: PhotoSize -> Integer
[$sel:height:PhotoSize] :: PhotoSize -> Integer
[$sel:fileSize:PhotoSize] :: PhotoSize -> Maybe Integer
data Audio
Audio :: Text -> Text -> Integer -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Integer -> Maybe PhotoSize -> Audio
[$sel:fileId:Audio] :: Audio -> Text
[$sel:fileUniqueId:Audio] :: Audio -> Text
[$sel:duration:Audio] :: Audio -> Integer
[$sel:performer:Audio] :: Audio -> Maybe Text
[$sel:title:Audio] :: Audio -> Maybe Text
[$sel:mimeType:Audio] :: Audio -> Maybe Text
[$sel:fileSize:Audio] :: Audio -> Maybe Integer
[$sel:thumb:Audio] :: Audio -> Maybe PhotoSize
data Animation
Animation :: Text -> Text -> Integer -> Integer -> Integer -> Maybe PhotoSize -> Maybe Text -> Maybe Text -> Integer -> Animation
[$sel:fileId:Animation] :: Animation -> Text
[$sel:fileUniqueId:Animation] :: Animation -> Text
[$sel:width:Animation] :: Animation -> Integer
[$sel:height:Animation] :: Animation -> Integer
[$sel:duration:Animation] :: Animation -> Integer
[$sel:thumb:Animation] :: Animation -> Maybe PhotoSize
[$sel:fileName:Animation] :: Animation -> Maybe Text
[$sel:mimeType:Animation] :: Animation -> Maybe Text
[$sel:fileSize:Animation] :: Animation -> Integer
data Document
Document :: Text -> Text -> Maybe PhotoSize -> Maybe Text -> Maybe Text -> Maybe Integer -> Document
[$sel:fileId:Document] :: Document -> Text
[$sel:fileUniqueId:Document] :: Document -> Text
[$sel:thumb:Document] :: Document -> Maybe PhotoSize
[$sel:fileName:Document] :: Document -> Maybe Text
[$sel:mimeType:Document] :: Document -> Maybe Text
[$sel:fileSize:Document] :: Document -> Maybe Integer
data Video
Video :: Text -> Text -> Integer -> Integer -> Integer -> Maybe PhotoSize -> Maybe Text -> Maybe Integer -> Video
[$sel:fileId:Video] :: Video -> Text
[$sel:fileUniqueId:Video] :: Video -> Text
[$sel:width:Video] :: Video -> Integer
[$sel:height:Video] :: Video -> Integer
[$sel:duration:Video] :: Video -> Integer
[$sel:thumb:Video] :: Video -> Maybe PhotoSize
[$sel:mimeType:Video] :: Video -> Maybe Text
[$sel:fileSize:Video] :: Video -> Maybe Integer
data Voice
Voice :: Text -> Text -> Integer -> Maybe Text -> Maybe Integer -> Voice
[$sel:fileId:Voice] :: Voice -> Text
[$sel:fileUniqueId:Voice] :: Voice -> Text
[$sel:duration:Voice] :: Voice -> Integer
[$sel:mimeType:Voice] :: Voice -> Maybe Text
[$sel:fileSize:Voice] :: Voice -> Maybe Integer
data VideoNote
VideoNote :: Text -> Text -> Integer -> Integer -> Maybe PhotoSize -> Integer -> VideoNote
[$sel:fileId:VideoNote] :: VideoNote -> Text
[$sel:fileUniqueId:VideoNote] :: VideoNote -> Text
[$sel:length:VideoNote] :: VideoNote -> Integer
[$sel:duration:VideoNote] :: VideoNote -> Integer
[$sel:thumb:VideoNote] :: VideoNote -> Maybe PhotoSize
[$sel:fileSize:VideoNote] :: VideoNote -> Integer
data Contact
Contact :: Text -> Text -> Maybe Text -> Maybe Integer -> Maybe Text -> Contact
[$sel:phoneNumber:Contact] :: Contact -> Text
[$sel:firstName:Contact] :: Contact -> Text
[$sel:lastName:Contact] :: Contact -> Maybe Text
[$sel:userId:Contact] :: Contact -> Maybe Integer
[$sel:vcard:Contact] :: Contact -> Maybe Text
data Location
Location :: Float -> Float -> Location
[$sel:longitude:Location] :: Location -> Float
[$sel:latitude:Location] :: Location -> Float
data Venue
Venue :: Location -> Text -> Text -> Maybe Text -> Maybe Text -> Venue
[$sel:location:Venue] :: Venue -> Location
[$sel:title:Venue] :: Venue -> Text
[$sel:address:Venue] :: Venue -> Text
[$sel:foursquareId:Venue] :: Venue -> Maybe Text
[$sel:foursquareType:Venue] :: Venue -> Maybe Text
data PollOption
PollOption :: Text -> Integer -> PollOption
[$sel:text:PollOption] :: PollOption -> Text
[$sel:voterCount:PollOption] :: PollOption -> Integer
data Poll
Poll :: Text -> Text -> [PollOption] -> Integer -> Bool -> Bool -> PollType -> Bool -> Maybe Integer -> Poll
[$sel:pollId:Poll] :: Poll -> Text
[$sel:question:Poll] :: Poll -> Text
[$sel:options:Poll] :: Poll -> [PollOption]
[$sel:totalVoterCount:Poll] :: Poll -> Integer
[$sel:isClosed:Poll] :: Poll -> Bool
[$sel:isAnonymous:Poll] :: Poll -> Bool
[$sel:pollType:Poll] :: Poll -> PollType
[$sel:allowsMultipleAnswers:Poll] :: Poll -> Bool
[$sel:correctOptionId:Poll] :: Poll -> Maybe Integer
data PollType
Regular :: PollType
Quiz :: PollType
data PollAnswer
PollAnswer :: Text -> User -> [Integer] -> PollAnswer
[$sel:pollId:PollAnswer] :: PollAnswer -> Text
[$sel:user:PollAnswer] :: PollAnswer -> User
[$sel:optionIds:PollAnswer] :: PollAnswer -> [Integer]
data UserProfilePhotos
UserProfilePhotos :: Integer -> [[PhotoSize]] -> UserProfilePhotos
[$sel:totalCount:UserProfilePhotos] :: UserProfilePhotos -> Integer
[$sel:photos:UserProfilePhotos] :: UserProfilePhotos -> [[PhotoSize]]
data File
File :: Text -> Text -> Maybe Integer -> Maybe Text -> File
[$sel:fileId:File] :: File -> Text
[$sel:fileUniqueId:File] :: File -> Text
[$sel:fileSize:File] :: File -> Maybe Integer
[$sel:filePath:File] :: File -> Maybe Text
data Sticker
Sticker :: Text -> Text -> Integer -> Integer -> Bool -> Maybe PhotoSize -> Maybe Text -> Maybe Text -> Maybe MaskPosition -> Maybe Integer -> Sticker
[$sel:fileId:Sticker] :: Sticker -> Text
[$sel:fileUniqueId:Sticker] :: Sticker -> Text
[$sel:width:Sticker] :: Sticker -> Integer
[$sel:height:Sticker] :: Sticker -> Integer
[$sel:isAnimated:Sticker] :: Sticker -> Bool
[$sel:thumb:Sticker] :: Sticker -> Maybe PhotoSize
[$sel:emoji:Sticker] :: Sticker -> Maybe Text
[$sel:setName:Sticker] :: Sticker -> Maybe Text
[$sel:maskPosition:Sticker] :: Sticker -> Maybe MaskPosition
[$sel:fileSize:Sticker] :: Sticker -> Maybe Integer
data StickerSet
StickerSet :: Text -> Text -> Bool -> Bool -> [Sticker] -> StickerSet
[$sel:name:StickerSet] :: StickerSet -> Text
[$sel:title:StickerSet] :: StickerSet -> Text
[$sel:isAnimated:StickerSet] :: StickerSet -> Bool
[$sel:containsMasks:StickerSet] :: StickerSet -> Bool
[$sel:stickers:StickerSet] :: StickerSet -> [Sticker]
data MaskPosition
MaskPosition :: Text -> Float -> Float -> Float -> MaskPosition
[$sel:point:MaskPosition] :: MaskPosition -> Text
[$sel:xShift:MaskPosition] :: MaskPosition -> Float
[$sel:yShift:MaskPosition] :: MaskPosition -> Float
[$sel:scale:MaskPosition] :: MaskPosition -> Float
data SuccessfulPayment
SuccessfulPayment :: Text -> Integer -> Text -> Maybe Text -> Maybe OrderInfo -> Text -> Text -> SuccessfulPayment
[$sel:currency:SuccessfulPayment] :: SuccessfulPayment -> Text
[$sel:totalAmount:SuccessfulPayment] :: SuccessfulPayment -> Integer
[$sel:invoicePayload:SuccessfulPayment] :: SuccessfulPayment -> Text
[$sel:shippingOptionId:SuccessfulPayment] :: SuccessfulPayment -> Maybe Text
[$sel:orderInfo:SuccessfulPayment] :: SuccessfulPayment -> Maybe OrderInfo
[$sel:telegramPaymentChargeId:SuccessfulPayment] :: SuccessfulPayment -> Text
[$sel:providerPaymentChargeId:SuccessfulPayment] :: SuccessfulPayment -> Text
-- | Alias to coerce
coe :: Coercible a b => a -> b
liftUnion :: (Typeable a, Elem a s) => a -> Union s
-- | Alias to required param
type QueryR = QueryParam' '[Required, Strict]
-- | A class for types with a default value.
class Default a
def :: Default a => a
def :: (Default a, Generic a, GDefault (Rep a)) => a
instance Data.Aeson.Types.ToJSON.ToJSON Web.Telegram.Types.ChatId
instance Data.Aeson.Types.FromJSON.FromJSON Web.Telegram.Types.ChatId
instance Web.Telegram.Types.Internal.Utils.Default.Default Web.Telegram.Types.ChatId
instance GHC.Generics.Generic Web.Telegram.Types.ChatId
instance GHC.Classes.Eq Web.Telegram.Types.ChatId
instance GHC.Show.Show Web.Telegram.Types.ChatId
instance Web.Internal.HttpApiData.ToHttpApiData Web.Telegram.Types.ChatId
-- | Deprecated: Use labels from generics-lens instead
module Web.Telegram.Types.Lens
userId :: HasField "userId" s t a b => Lens s t a b
isBot :: HasField "isBot" s t a b => Lens s t a b
firstName :: HasField "firstName" s t a b => Lens s t a b
lastName :: HasField "lastName" s t a b => Lens s t a b
userName :: HasField "userName" s t a b => Lens s t a b
languageCode :: HasField "languageCode" s t a b => Lens s t a b
canJoinGroups :: HasField "canJoinGroups" s t a b => Lens s t a b
canReadAllGroupMessages :: HasField "canReadAllGroupMessages" s t a b => Lens s t a b
supportsInlineQueries :: HasField "supportsInlineQueries" s t a b => Lens s t a b
metadata :: HasField "metadata" s t a b => Lens s t a b
content :: HasField "content" s t a b => Lens s t a b
messageId :: HasField "messageId" s t a b => Lens s t a b
from :: HasField "from" s t a b => Lens s t a b
date :: HasField "date" s t a b => Lens s t a b
chat :: HasField "chat" s t a b => Lens s t a b
forwardFrom :: HasField "forwardFrom" s t a b => Lens s t a b
forwardFromChat :: HasField "forwardFromChat" s t a b => Lens s t a b
forwardFromMessageId :: HasField "forwardFromMessageId" s t a b => Lens s t a b
forwardSignature :: HasField "forwardSignature" s t a b => Lens s t a b
forwardSenderName :: HasField "forwardSenderName" s t a b => Lens s t a b
forwardDate :: HasField "forwardDate" s t a b => Lens s t a b
replyToMessage :: HasField "replyToMessage" s t a b => Lens s t a b
editDate :: HasField "editDate" s t a b => Lens s t a b
mediaGroupId :: HasField "mediaGroupId" s t a b => Lens s t a b
authorSignature :: HasField "authorSignature" s t a b => Lens s t a b
replyMarkup :: HasField "replyMarkup" s t a b => Lens s t a b
text :: HasField "text" s t a b => Lens s t a b
entities :: HasField "entities" s t a b => Lens s t a b
audio :: HasField "audio" s t a b => Lens s t a b
document :: HasField "document" s t a b => Lens s t a b
animation :: HasField "animation" s t a b => Lens s t a b
game :: HasField "game" s t a b => Lens s t a b
photo :: HasField "photo" s t a b => Lens s t a b
sticker :: HasField "sticker" s t a b => Lens s t a b
video :: HasField "video" s t a b => Lens s t a b
voice :: HasField "voice" s t a b => Lens s t a b
videoNote :: HasField "videoNote" s t a b => Lens s t a b
contact :: HasField "contact" s t a b => Lens s t a b
location :: HasField "location" s t a b => Lens s t a b
venue :: HasField "venue" s t a b => Lens s t a b
poll :: HasField "poll" s t a b => Lens s t a b
newChatMembers :: HasField "newChatMembers" s t a b => Lens s t a b
leftChatMember :: HasField "leftChatMember" s t a b => Lens s t a b
newChatPhoto :: HasField "newChatPhoto" s t a b => Lens s t a b
deleteChatPhoto :: HasField "deleteChatPhoto" s t a b => Lens s t a b
groupChatCreated :: HasField "groupChatCreated" s t a b => Lens s t a b
supergroupChatCreated :: HasField "supergroupChatCreated" s t a b => Lens s t a b
channelChatCreated :: HasField "channelChatCreated" s t a b => Lens s t a b
migrateToChatId :: HasField "migrateToChatId" s t a b => Lens s t a b
migrateFromChatId :: HasField "migrateFromChatId" s t a b => Lens s t a b
pinnedMessage :: HasField "pinnedMessage" s t a b => Lens s t a b
invoice :: HasField "invoice" s t a b => Lens s t a b
successfulPayment :: HasField "successfulPayment" s t a b => Lens s t a b
connectedWebsite :: HasField "connectedWebsite" s t a b => Lens s t a b
passPortData :: HasField "passPortData" s t a b => Lens s t a b
caption :: HasField "caption" s t a b => Lens s t a b
captionEntities :: HasField "captionEntities" s t a b => Lens s t a b
chatId :: HasField "chatId" s t a b => Lens s t a b
chatType :: HasField "chatType" s t a b => Lens s t a b
title :: HasField "title" s t a b => Lens s t a b
username :: HasField "username" s t a b => Lens s t a b
description :: HasField "description" s t a b => Lens s t a b
inviteLink :: HasField "inviteLink" s t a b => Lens s t a b
permissions :: HasField "permissions" s t a b => Lens s t a b
slowModeDelay :: HasField "slowModeDelay" s t a b => Lens s t a b
stickerSetName :: HasField "stickerSetName" s t a b => Lens s t a b
canSetStickerSet :: HasField "canSetStickerSet" s t a b => Lens s t a b
canSendMessages :: HasField "canSendMessages" s t a b => Lens s t a b
canSendMediaMessages :: HasField "canSendMediaMessages" s t a b => Lens s t a b
canSendPolls :: HasField "canSendPolls" s t a b => Lens s t a b
canSendOtherMesssages :: HasField "canSendOtherMesssages" s t a b => Lens s t a b
canAddWebPagePreviews :: HasField "canAddWebPagePreviews" s t a b => Lens s t a b
canChangeInfo :: HasField "canChangeInfo" s t a b => Lens s t a b
canInviteUsers :: HasField "canInviteUsers" s t a b => Lens s t a b
canPinMessages :: HasField "canPinMessages" s t a b => Lens s t a b
smallFileId :: HasField "smallFileId" s t a b => Lens s t a b
smallFileUniqueId :: HasField "smallFileUniqueId" s t a b => Lens s t a b
bigFileId :: HasField "bigFileId" s t a b => Lens s t a b
bitFileUniqueId :: HasField "bitFileUniqueId" s t a b => Lens s t a b
user :: HasField "user" s t a b => Lens s t a b
status :: HasField "status" s t a b => Lens s t a b
customTitle :: HasField "customTitle" s t a b => Lens s t a b
untilDate :: HasField "untilDate" s t a b => Lens s t a b
canBeEdited :: HasField "canBeEdited" s t a b => Lens s t a b
canPostMessages :: HasField "canPostMessages" s t a b => Lens s t a b
canEditMessages :: HasField "canEditMessages" s t a b => Lens s t a b
canDeleteMessages :: HasField "canDeleteMessages" s t a b => Lens s t a b
canRestrictMembers :: HasField "canRestrictMembers" s t a b => Lens s t a b
canPromoteMembers :: HasField "canPromoteMembers" s t a b => Lens s t a b
isMember :: HasField "isMember" s t a b => Lens s t a b
fileId :: HasField "fileId" s t a b => Lens s t a b
fileUniqueId :: HasField "fileUniqueId" s t a b => Lens s t a b
fileSize :: HasField "fileSize" s t a b => Lens s t a b
width :: HasField "width" s t a b => Lens s t a b
height :: HasField "height" s t a b => Lens s t a b
duration :: HasField "duration" s t a b => Lens s t a b
performer :: HasField "performer" s t a b => Lens s t a b
mimeType :: HasField "mimeType" s t a b => Lens s t a b
thumb :: HasField "thumb" s t a b => Lens s t a b
phoneNumber :: HasField "phoneNumber" s t a b => Lens s t a b
vcard :: HasField "vcard" s t a b => Lens s t a b
longitude :: HasField "longitude" s t a b => Lens s t a b
latitude :: HasField "latitude" s t a b => Lens s t a b
address :: HasField "address" s t a b => Lens s t a b
foursquareId :: HasField "foursquareId" s t a b => Lens s t a b
foursquareType :: HasField "foursquareType" s t a b => Lens s t a b
voterCount :: HasField "voterCount" s t a b => Lens s t a b
pollId :: HasField "pollId" s t a b => Lens s t a b
question :: HasField "question" s t a b => Lens s t a b
options :: HasField "options" s t a b => Lens s t a b
totalVoterCount :: HasField "totalVoterCount" s t a b => Lens s t a b
isClosed :: HasField "isClosed" s t a b => Lens s t a b
isAnonymous :: HasField "isAnonymous" s t a b => Lens s t a b
pollType :: HasField "pollType" s t a b => Lens s t a b
allowsMultipleAnswers :: HasField "allowsMultipleAnswers" s t a b => Lens s t a b
correctOptionId :: HasField "correctOptionId" s t a b => Lens s t a b
optionIds :: HasField "optionIds" s t a b => Lens s t a b
totalCount :: HasField "totalCount" s t a b => Lens s t a b
photos :: HasField "photos" s t a b => Lens s t a b
filePath :: HasField "filePath" s t a b => Lens s t a b
isAnimated :: HasField "isAnimated" s t a b => Lens s t a b
emoji :: HasField "emoji" s t a b => Lens s t a b
setName :: HasField "setName" s t a b => Lens s t a b
maskPosition :: HasField "maskPosition" s t a b => Lens s t a b
containsMasks :: HasField "containsMasks" s t a b => Lens s t a b
stickers :: HasField "stickers" s t a b => Lens s t a b
name :: HasField "name" s t a b => Lens s t a b
point :: HasField "point" s t a b => Lens s t a b
xShift :: HasField "xShift" s t a b => Lens s t a b
yShift :: HasField "yShift" s t a b => Lens s t a b
scale :: HasField "scale" s t a b => Lens s t a b
retryAfter :: HasField "retryAfter" s t a b => Lens s t a b
command :: HasField "command" s t a b => Lens s t a b
module Web.Telegram.Types.Stock
type Snake = CustomJSON '[FieldLabelModifier CamelToSnake, OmitNothingFields]
type OmitNothing = CustomJSON '[OmitNothingFields]
type UntaggedSum = CustomJSON '[SumUntaggedValue, OmitNothingFields]
type PrefixedSnake str = CustomJSON '[FieldLabelModifier (StripPrefix str, CamelToSnake), OmitNothingFields]
type Prefixed str = CustomJSON '[FieldLabelModifier (StripPrefix str), OmitNothingFields]
type PrefixedSnake' str = CustomJSON '[FieldLabelModifier (StrictStrip str, CamelToSnake), OmitNothingFields]
module Web.Telegram.Types.Update
-- | An incoming update
data Update
-- | New incoming message of any kind — text, photo, sticker, etc.
Message :: Integer -> Message -> Update
[updateId] :: Update -> Integer
[message] :: Update -> Message
-- | New version of a message that is known to the bot and was edited
EditedMessage :: Integer -> Message -> Update
[updateId] :: Update -> Integer
[message] :: Update -> Message
-- | New incoming channel post of any kind — text, photo, sticker, etc.
ChannelPost :: Integer -> Message -> Update
[updateId] :: Update -> Integer
[message] :: Update -> Message
-- | New version of a channel post that is known to the bot and was edited
EditedChannelPost :: Integer -> Message -> Update
[updateId] :: Update -> Integer
[message] :: Update -> Message
-- | New incoming inline query
InlineQuery :: Integer -> InlineQuery -> Update
[updateId] :: Update -> Integer
[iquery] :: Update -> InlineQuery
-- | The result of an inline query that was chosen by a user and sent to
-- their chat partner. Please see our documentation on the feedback
-- collecting for details on how to enable these updates for your bot
ChosenInlineResult :: Integer -> ChosenInlineResult -> Update
[updateId] :: Update -> Integer
[result] :: Update -> ChosenInlineResult
-- | New incoming callback query
CallbackQuery :: Integer -> CallbackQuery -> Update
[updateId] :: Update -> Integer
[cbquery] :: Update -> CallbackQuery
-- | New incoming shipping query. Only for invoices with flexible price
ShippingQuery :: Integer -> ShippingQuery -> Update
[updateId] :: Update -> Integer
[squery] :: Update -> ShippingQuery
-- | New incoming pre-checkout query. Contains full information about
-- checkout
PreCheckoutQuery :: Integer -> PreCheckoutQuery -> Update
[updateId] :: Update -> Integer
[pcquery] :: Update -> PreCheckoutQuery
-- | New poll state. Bots receive only updates about stopped polls and
-- polls, which are sent by the bot
PollUpdate :: Integer -> Poll -> Update
[updateId] :: Update -> Integer
[poll] :: Update -> Poll
-- | A user changed their answer in a non-anonymous poll. Bots receive new
-- votes only in polls that were sent by the bot itself.
PollAnswer :: Integer -> PollAnswer -> Update
[updateId] :: Update -> Integer
[answer] :: Update -> PollAnswer
-- | Contains information about the current status of a webhook.
data WebhookInfo
WebhookInfo :: Text -> Bool -> Integer -> Maybe Integer -> Maybe Text -> Maybe Integer -> Maybe [UpdateType] -> WebhookInfo
-- | Webhook URL, may be empty if webhook is not set up
[url] :: WebhookInfo -> Text
-- | True, if a custom certificate was provided for webhook certificate
-- checks
[hasCustomCertificate] :: WebhookInfo -> Bool
-- | Number of updates awaiting delivery
[pendingUpdateCount] :: WebhookInfo -> Integer
-- | Unix time for the most recent error that happened when trying to
-- deliver an update via webhook
[lastErrorDate] :: WebhookInfo -> Maybe Integer
-- | Error message in human-readable format for the most recent error that
-- happened when trying to deliver an update via webhook
[lastErrorMessage] :: WebhookInfo -> Maybe Text
-- | Maximum allowed number of simultaneous HTTPS connections to the
-- webhook for update delivery
[maxConnections] :: WebhookInfo -> Maybe Integer
-- | A list of update types the bot is subscribed to. Defaults to all
-- update types
[allowedUpdates] :: WebhookInfo -> Maybe [UpdateType]
data ResponseParameters
ResponseParameters :: Maybe Integer -> Maybe Integer -> ResponseParameters
[$sel:migrateToChatId:ResponseParameters] :: ResponseParameters -> Maybe Integer
[$sel:retryAfter:ResponseParameters] :: ResponseParameters -> Maybe Integer
newtype ReqResult a
Ok :: a -> ReqResult a
data ReqEither a b
LLL :: a -> ReqEither a b
RRR :: b -> ReqEither a b
data BotCommand
BC :: Text -> Text -> BotCommand
[$sel:command:BC] :: BotCommand -> Text
[$sel:description:BC] :: BotCommand -> Text
module Web.Telegram.Types.UpdateType
data UpdateType
Message :: UpdateType
EditedMessage :: UpdateType
ChannelPost :: UpdateType
EditedChannelPost :: UpdateType
InlineQuery :: UpdateType
ChosenInlineResult :: UpdateType
CallbackQuery :: UpdateType
ShippingQuery :: UpdateType
PreCheckoutQuery :: UpdateType
PollUpdate :: UpdateType
PollAnswer :: UpdateType