@@ -586,6 +586,19 @@ type InlineQueryResultPhoto struct {
586586 InputMessageContent interface {} `json:"input_message_content,omitempty"`
587587}
588588
589+ // InlineQueryResultCachedPhoto is an inline query response with cached photo.
590+ type InlineQueryResultCachedPhoto struct {
591+ Type string `json:"type"` // required
592+ ID string `json:"id"` // required
593+ PhotoID string `json:"photo_file_id"` // required
594+ Title string `json:"title"`
595+ Description string `json:"description"`
596+ Caption string `json:"caption"`
597+ ParseMode string `json:"parse_mode"`
598+ ReplyMarkup * InlineKeyboardMarkup `json:"reply_markup,omitempty"`
599+ InputMessageContent interface {} `json:"input_message_content,omitempty"`
600+ }
601+
589602// InlineQueryResultGIF is an inline query response GIF.
590603type InlineQueryResultGIF struct {
591604 Type string `json:"type"` // required
@@ -601,6 +614,18 @@ type InlineQueryResultGIF struct {
601614 InputMessageContent interface {} `json:"input_message_content,omitempty"`
602615}
603616
617+ // InlineQueryResultCachedGIF is an inline query response with cached gif.
618+ type InlineQueryResultCachedGIF struct {
619+ Type string `json:"type"` // required
620+ ID string `json:"id"` // required
621+ GifID string `json:"gif_file_id"` // required
622+ Title string `json:"title"`
623+ Caption string `json:"caption"`
624+ ParseMode string `json:"parse_mode"`
625+ ReplyMarkup * InlineKeyboardMarkup `json:"reply_markup,omitempty"`
626+ InputMessageContent interface {} `json:"input_message_content,omitempty"`
627+ }
628+
604629// InlineQueryResultMPEG4GIF is an inline query response MPEG4 GIF.
605630type InlineQueryResultMPEG4GIF struct {
606631 Type string `json:"type"` // required
@@ -616,6 +641,19 @@ type InlineQueryResultMPEG4GIF struct {
616641 InputMessageContent interface {} `json:"input_message_content,omitempty"`
617642}
618643
644+ // InlineQueryResultCachedMpeg4Gif is an inline query response with cached
645+ // H.264/MPEG-4 AVC video without sound gif.
646+ type InlineQueryResultCachedMpeg4Gif struct {
647+ Type string `json:"type"` // required
648+ ID string `json:"id"` // required
649+ MGifID string `json:"mpeg4_file_id"` // required
650+ Title string `json:"title"`
651+ Caption string `json:"caption"`
652+ ParseMode string `json:"parse_mode"`
653+ ReplyMarkup * InlineKeyboardMarkup `json:"reply_markup,omitempty"`
654+ InputMessageContent interface {} `json:"input_message_content,omitempty"`
655+ }
656+
619657// InlineQueryResultVideo is an inline query response video.
620658type InlineQueryResultVideo struct {
621659 Type string `json:"type"` // required
@@ -633,6 +671,19 @@ type InlineQueryResultVideo struct {
633671 InputMessageContent interface {} `json:"input_message_content,omitempty"`
634672}
635673
674+ // InlineQueryResultCachedVideo is an inline query response with cached video.
675+ type InlineQueryResultCachedVideo struct {
676+ Type string `json:"type"` // required
677+ ID string `json:"id"` // required
678+ VideoID string `json:"video_file_id"` // required
679+ Title string `json:"title"` // required
680+ Description string `json:"description"`
681+ Caption string `json:"caption"`
682+ ParseMode string `json:"parse_mode"`
683+ ReplyMarkup * InlineKeyboardMarkup `json:"reply_markup,omitempty"`
684+ InputMessageContent interface {} `json:"input_message_content,omitempty"`
685+ }
686+
636687// InlineQueryResultAudio is an inline query response audio.
637688type InlineQueryResultAudio struct {
638689 Type string `json:"type"` // required
@@ -646,6 +697,17 @@ type InlineQueryResultAudio struct {
646697 InputMessageContent interface {} `json:"input_message_content,omitempty"`
647698}
648699
700+ // InlineQueryResultCachedAudio is an inline query response with cached audio.
701+ type InlineQueryResultCachedAudio struct {
702+ Type string `json:"type"` // required
703+ ID string `json:"id"` // required
704+ AudioID string `json:"audio_file_id"` // required
705+ Caption string `json:"caption"`
706+ ParseMode string `json:"parse_mode"`
707+ ReplyMarkup * InlineKeyboardMarkup `json:"reply_markup,omitempty"`
708+ InputMessageContent interface {} `json:"input_message_content,omitempty"`
709+ }
710+
649711// InlineQueryResultVoice is an inline query response voice.
650712type InlineQueryResultVoice struct {
651713 Type string `json:"type"` // required
@@ -658,6 +720,18 @@ type InlineQueryResultVoice struct {
658720 InputMessageContent interface {} `json:"input_message_content,omitempty"`
659721}
660722
723+ // InlineQueryResultCachedVoice is an inline query response with cached voice.
724+ type InlineQueryResultCachedVoice struct {
725+ Type string `json:"type"` // required
726+ ID string `json:"id"` // required
727+ VoiceID string `json:"voice_file_id"` // required
728+ Title string `json:"title"` // required
729+ Caption string `json:"caption"`
730+ ParseMode string `json:"parse_mode"`
731+ ReplyMarkup * InlineKeyboardMarkup `json:"reply_markup,omitempty"`
732+ InputMessageContent interface {} `json:"input_message_content,omitempty"`
733+ }
734+
661735// InlineQueryResultDocument is an inline query response document.
662736type InlineQueryResultDocument struct {
663737 Type string `json:"type"` // required
@@ -674,6 +748,19 @@ type InlineQueryResultDocument struct {
674748 ThumbHeight int `json:"thumb_height"`
675749}
676750
751+ // InlineQueryResultCachedDocument is an inline query response with cached document.
752+ type InlineQueryResultCachedDocument struct {
753+ Type string `json:"type"` // required
754+ ID string `json:"id"` // required
755+ DocumentID string `json:"document_file_id"` // required
756+ Title string `json:"title"` // required
757+ Caption string `json:"caption"`
758+ Description string `json:"description"`
759+ ParseMode string `json:"parse_mode"`
760+ ReplyMarkup * InlineKeyboardMarkup `json:"reply_markup,omitempty"`
761+ InputMessageContent interface {} `json:"input_message_content,omitempty"`
762+ }
763+
677764// InlineQueryResultLocation is an inline query response location.
678765type InlineQueryResultLocation struct {
679766 Type string `json:"type"` // required
0 commit comments