#pragma once #include "td/tl/TlObject.h" #include #include #include #include namespace td { class TlStorerToString; namespace td_api { using int32 = std::int32_t; using int53 = std::int64_t; using int64 = std::int64_t; using string = std::string; using bytes = std::string; template using array = std::vector; using BaseObject = ::td::TlObject; template using object_ptr = ::td::tl_object_ptr; template object_ptr make_object(Args &&... args) { return object_ptr(new Type(std::forward(args)...)); } template object_ptr move_object_as(FromType &&from) { return object_ptr(static_cast(from.release())); } std::string to_string(const BaseObject &value); template std::string to_string(const object_ptr &value) { if (value == nullptr) { return "null"; } return to_string(*value); } template std::string to_string(const std::vector> &values) { std::string result = "{\n"; for (const auto &value : values) { if (value == nullptr) { result += "null\n"; } else { result += to_string(*value); } } result += "}\n"; return result; } class Object: public TlObject { public: }; class Function: public TlObject { public: }; class accentColor final : public Object { public: int32 id_; int32 built_in_accent_color_id_; array light_theme_colors_; array dark_theme_colors_; accentColor(); accentColor(int32 id_, int32 built_in_accent_color_id_, array &&light_theme_colors_, array &&dark_theme_colors_); static const std::int32_t ID = 1830661068; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class accountTtl final : public Object { public: int32 days_; accountTtl(); explicit accountTtl(int32 days_); static const std::int32_t ID = 1324495492; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class MessageSender; class ReactionType; class addedReaction final : public Object { public: object_ptr type_; object_ptr sender_id_; bool is_outgoing_; int32 date_; addedReaction(); addedReaction(object_ptr &&type_, object_ptr &&sender_id_, bool is_outgoing_, int32 date_); static const std::int32_t ID = 1258586525; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class addedReaction; class addedReactions final : public Object { public: int32 total_count_; array> reactions_; string next_offset_; addedReactions(); addedReactions(int32 total_count_, array> &&reactions_, string const &next_offset_); static const std::int32_t ID = 226352304; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class address final : public Object { public: string country_code_; string state_; string city_; string street_line1_; string street_line2_; string postal_code_; address(); address(string const &country_code_, string const &state_, string const &city_, string const &street_line1_, string const &street_line2_, string const &postal_code_); static const std::int32_t ID = -2043654342; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class file; class animatedChatPhoto final : public Object { public: int32 length_; object_ptr file_; double main_frame_timestamp_; animatedChatPhoto(); animatedChatPhoto(int32 length_, object_ptr &&file_, double main_frame_timestamp_); static const std::int32_t ID = 191994926; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class file; class sticker; class animatedEmoji final : public Object { public: object_ptr sticker_; int32 sticker_width_; int32 sticker_height_; int32 fitzpatrick_type_; object_ptr sound_; animatedEmoji(); animatedEmoji(object_ptr &&sticker_, int32 sticker_width_, int32 sticker_height_, int32 fitzpatrick_type_, object_ptr &&sound_); static const std::int32_t ID = 1378918079; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class file; class minithumbnail; class thumbnail; class animation final : public Object { public: int32 duration_; int32 width_; int32 height_; string file_name_; string mime_type_; bool has_stickers_; object_ptr minithumbnail_; object_ptr thumbnail_; object_ptr animation_; animation(); animation(int32 duration_, int32 width_, int32 height_, string const &file_name_, string const &mime_type_, bool has_stickers_, object_ptr &&minithumbnail_, object_ptr &&thumbnail_, object_ptr &&animation_); static const std::int32_t ID = -872359106; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class animation; class animations final : public Object { public: array> animations_; animations(); explicit animations(array> &&animations_); static const std::int32_t ID = 344216945; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class archiveChatListSettings final : public Object { public: bool archive_and_mute_new_chats_from_unknown_users_; bool keep_unmuted_chats_archived_; bool keep_chats_from_folders_archived_; archiveChatListSettings(); archiveChatListSettings(bool archive_and_mute_new_chats_from_unknown_users_, bool keep_unmuted_chats_archived_, bool keep_chats_from_folders_archived_); static const std::int32_t ID = 1058499236; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class attachmentMenuBotColor; class file; class attachmentMenuBot final : public Object { public: int53 bot_user_id_; bool supports_self_chat_; bool supports_user_chats_; bool supports_bot_chats_; bool supports_group_chats_; bool supports_channel_chats_; bool request_write_access_; bool is_added_; bool show_in_attachment_menu_; bool show_in_side_menu_; bool show_disclaimer_in_side_menu_; string name_; object_ptr name_color_; object_ptr default_icon_; object_ptr ios_static_icon_; object_ptr ios_animated_icon_; object_ptr ios_side_menu_icon_; object_ptr android_icon_; object_ptr android_side_menu_icon_; object_ptr macos_icon_; object_ptr macos_side_menu_icon_; object_ptr icon_color_; object_ptr web_app_placeholder_; attachmentMenuBot(); attachmentMenuBot(int53 bot_user_id_, bool supports_self_chat_, bool supports_user_chats_, bool supports_bot_chats_, bool supports_group_chats_, bool supports_channel_chats_, bool request_write_access_, bool is_added_, bool show_in_attachment_menu_, bool show_in_side_menu_, bool show_disclaimer_in_side_menu_, string const &name_, object_ptr &&name_color_, object_ptr &&default_icon_, object_ptr &&ios_static_icon_, object_ptr &&ios_animated_icon_, object_ptr &&ios_side_menu_icon_, object_ptr &&android_icon_, object_ptr &&android_side_menu_icon_, object_ptr &&macos_icon_, object_ptr &&macos_side_menu_icon_, object_ptr &&icon_color_, object_ptr &&web_app_placeholder_); static const std::int32_t ID = -1183966273; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class attachmentMenuBotColor final : public Object { public: int32 light_color_; int32 dark_color_; attachmentMenuBotColor(); attachmentMenuBotColor(int32 light_color_, int32 dark_color_); static const std::int32_t ID = 1680039612; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class file; class minithumbnail; class thumbnail; class audio final : public Object { public: int32 duration_; string title_; string performer_; string file_name_; string mime_type_; object_ptr album_cover_minithumbnail_; object_ptr album_cover_thumbnail_; array> external_album_covers_; object_ptr audio_; audio(); audio(int32 duration_, string const &title_, string const &performer_, string const &file_name_, string const &mime_type_, object_ptr &&album_cover_minithumbnail_, object_ptr &&album_cover_thumbnail_, array> &&external_album_covers_, object_ptr &&audio_); static const std::int32_t ID = -166398841; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class AuthenticationCodeType; class authenticationCodeInfo final : public Object { public: string phone_number_; object_ptr type_; object_ptr next_type_; int32 timeout_; authenticationCodeInfo(); authenticationCodeInfo(string const &phone_number_, object_ptr &&type_, object_ptr &&next_type_, int32 timeout_); static const std::int32_t ID = -860345416; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class AuthenticationCodeType: public Object { public: }; class authenticationCodeTypeTelegramMessage final : public AuthenticationCodeType { public: int32 length_; authenticationCodeTypeTelegramMessage(); explicit authenticationCodeTypeTelegramMessage(int32 length_); static const std::int32_t ID = 2079628074; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authenticationCodeTypeSms final : public AuthenticationCodeType { public: int32 length_; authenticationCodeTypeSms(); explicit authenticationCodeTypeSms(int32 length_); static const std::int32_t ID = 962650760; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authenticationCodeTypeCall final : public AuthenticationCodeType { public: int32 length_; authenticationCodeTypeCall(); explicit authenticationCodeTypeCall(int32 length_); static const std::int32_t ID = 1636265063; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authenticationCodeTypeFlashCall final : public AuthenticationCodeType { public: string pattern_; authenticationCodeTypeFlashCall(); explicit authenticationCodeTypeFlashCall(string const &pattern_); static const std::int32_t ID = 1395882402; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authenticationCodeTypeMissedCall final : public AuthenticationCodeType { public: string phone_number_prefix_; int32 length_; authenticationCodeTypeMissedCall(); authenticationCodeTypeMissedCall(string const &phone_number_prefix_, int32 length_); static const std::int32_t ID = 700123783; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authenticationCodeTypeFragment final : public AuthenticationCodeType { public: string url_; int32 length_; authenticationCodeTypeFragment(); authenticationCodeTypeFragment(string const &url_, int32 length_); static const std::int32_t ID = -2129693491; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authenticationCodeTypeFirebaseAndroid final : public AuthenticationCodeType { public: bytes nonce_; int32 length_; authenticationCodeTypeFirebaseAndroid(); authenticationCodeTypeFirebaseAndroid(bytes const &nonce_, int32 length_); static const std::int32_t ID = -1978562535; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authenticationCodeTypeFirebaseIos final : public AuthenticationCodeType { public: string receipt_; int32 push_timeout_; int32 length_; authenticationCodeTypeFirebaseIos(); authenticationCodeTypeFirebaseIos(string const &receipt_, int32 push_timeout_, int32 length_); static const std::int32_t ID = -11162989; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class EmailAddressResetState; class authenticationCodeInfo; class emailAddressAuthenticationCodeInfo; class termsOfService; class AuthorizationState: public Object { public: }; class authorizationStateWaitTdlibParameters final : public AuthorizationState { public: authorizationStateWaitTdlibParameters(); static const std::int32_t ID = 904720988; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateWaitPhoneNumber final : public AuthorizationState { public: authorizationStateWaitPhoneNumber(); static const std::int32_t ID = 306402531; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateWaitEmailAddress final : public AuthorizationState { public: bool allow_apple_id_; bool allow_google_id_; authorizationStateWaitEmailAddress(); authorizationStateWaitEmailAddress(bool allow_apple_id_, bool allow_google_id_); static const std::int32_t ID = 1040478663; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateWaitEmailCode final : public AuthorizationState { public: bool allow_apple_id_; bool allow_google_id_; object_ptr code_info_; object_ptr email_address_reset_state_; authorizationStateWaitEmailCode(); authorizationStateWaitEmailCode(bool allow_apple_id_, bool allow_google_id_, object_ptr &&code_info_, object_ptr &&email_address_reset_state_); static const std::int32_t ID = -1868627365; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateWaitCode final : public AuthorizationState { public: object_ptr code_info_; authorizationStateWaitCode(); explicit authorizationStateWaitCode(object_ptr &&code_info_); static const std::int32_t ID = 52643073; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateWaitOtherDeviceConfirmation final : public AuthorizationState { public: string link_; authorizationStateWaitOtherDeviceConfirmation(); explicit authorizationStateWaitOtherDeviceConfirmation(string const &link_); static const std::int32_t ID = 860166378; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateWaitRegistration final : public AuthorizationState { public: object_ptr terms_of_service_; authorizationStateWaitRegistration(); explicit authorizationStateWaitRegistration(object_ptr &&terms_of_service_); static const std::int32_t ID = 550350511; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateWaitPassword final : public AuthorizationState { public: string password_hint_; bool has_recovery_email_address_; bool has_passport_data_; string recovery_email_address_pattern_; authorizationStateWaitPassword(); authorizationStateWaitPassword(string const &password_hint_, bool has_recovery_email_address_, bool has_passport_data_, string const &recovery_email_address_pattern_); static const std::int32_t ID = 112238030; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateReady final : public AuthorizationState { public: authorizationStateReady(); static const std::int32_t ID = -1834871737; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateLoggingOut final : public AuthorizationState { public: authorizationStateLoggingOut(); static const std::int32_t ID = 154449270; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateClosing final : public AuthorizationState { public: authorizationStateClosing(); static const std::int32_t ID = 445855311; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class authorizationStateClosed final : public AuthorizationState { public: authorizationStateClosed(); static const std::int32_t ID = 1526047584; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class autoDownloadSettings final : public Object { public: bool is_auto_download_enabled_; int32 max_photo_file_size_; int53 max_video_file_size_; int53 max_other_file_size_; int32 video_upload_bitrate_; bool preload_large_videos_; bool preload_next_audio_; bool preload_stories_; bool use_less_data_for_calls_; autoDownloadSettings(); autoDownloadSettings(bool is_auto_download_enabled_, int32 max_photo_file_size_, int53 max_video_file_size_, int53 max_other_file_size_, int32 video_upload_bitrate_, bool preload_large_videos_, bool preload_next_audio_, bool preload_stories_, bool use_less_data_for_calls_); static const std::int32_t ID = 991433696; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class autoDownloadSettings; class autoDownloadSettingsPresets final : public Object { public: object_ptr low_; object_ptr medium_; object_ptr high_; autoDownloadSettingsPresets(); autoDownloadSettingsPresets(object_ptr &&low_, object_ptr &&medium_, object_ptr &&high_); static const std::int32_t ID = -782099166; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class autosaveSettingsException; class scopeAutosaveSettings; class autosaveSettings final : public Object { public: object_ptr private_chat_settings_; object_ptr group_settings_; object_ptr channel_settings_; array> exceptions_; autosaveSettings(); autosaveSettings(object_ptr &&private_chat_settings_, object_ptr &&group_settings_, object_ptr &&channel_settings_, array> &&exceptions_); static const std::int32_t ID = 1629412502; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class scopeAutosaveSettings; class autosaveSettingsException final : public Object { public: int53 chat_id_; object_ptr settings_; autosaveSettingsException(); autosaveSettingsException(int53 chat_id_, object_ptr &&settings_); static const std::int32_t ID = 1483470280; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class AutosaveSettingsScope: public Object { public: }; class autosaveSettingsScopePrivateChats final : public AutosaveSettingsScope { public: autosaveSettingsScopePrivateChats(); static const std::int32_t ID = 1395227007; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class autosaveSettingsScopeGroupChats final : public AutosaveSettingsScope { public: autosaveSettingsScopeGroupChats(); static const std::int32_t ID = 853544526; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class autosaveSettingsScopeChannelChats final : public AutosaveSettingsScope { public: autosaveSettingsScopeChannelChats(); static const std::int32_t ID = -499572783; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class autosaveSettingsScopeChat final : public AutosaveSettingsScope { public: int53 chat_id_; autosaveSettingsScopeChat(); explicit autosaveSettingsScopeChat(int53 chat_id_); static const std::int32_t ID = -1632255255; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ReactionType; class availableReaction final : public Object { public: object_ptr type_; bool needs_premium_; availableReaction(); availableReaction(object_ptr &&type_, bool needs_premium_); static const std::int32_t ID = -117292153; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class availableReaction; class availableReactions final : public Object { public: array> top_reactions_; array> recent_reactions_; array> popular_reactions_; bool allow_custom_emoji_; availableReactions(); availableReactions(array> &&top_reactions_, array> &&recent_reactions_, array> &&popular_reactions_, bool allow_custom_emoji_); static const std::int32_t ID = 1995943616; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class BackgroundType; class document; class background final : public Object { public: int64 id_; bool is_default_; bool is_dark_; string name_; object_ptr document_; object_ptr type_; background(); background(int64 id_, bool is_default_, bool is_dark_, string const &name_, object_ptr &&document_, object_ptr &&type_); static const std::int32_t ID = -429971172; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class BackgroundFill: public Object { public: }; class backgroundFillSolid final : public BackgroundFill { public: int32 color_; backgroundFillSolid(); explicit backgroundFillSolid(int32 color_); static const std::int32_t ID = 1010678813; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class backgroundFillGradient final : public BackgroundFill { public: int32 top_color_; int32 bottom_color_; int32 rotation_angle_; backgroundFillGradient(); backgroundFillGradient(int32 top_color_, int32 bottom_color_, int32 rotation_angle_); static const std::int32_t ID = -1839206017; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class backgroundFillFreeformGradient final : public BackgroundFill { public: array colors_; backgroundFillFreeformGradient(); explicit backgroundFillFreeformGradient(array &&colors_); static const std::int32_t ID = -1145469255; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class BackgroundFill; class BackgroundType: public Object { public: }; class backgroundTypeWallpaper final : public BackgroundType { public: bool is_blurred_; bool is_moving_; backgroundTypeWallpaper(); backgroundTypeWallpaper(bool is_blurred_, bool is_moving_); static const std::int32_t ID = 1972128891; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class backgroundTypePattern final : public BackgroundType { public: object_ptr fill_; int32 intensity_; bool is_inverted_; bool is_moving_; backgroundTypePattern(); backgroundTypePattern(object_ptr &&fill_, int32 intensity_, bool is_inverted_, bool is_moving_); static const std::int32_t ID = 1290213117; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class backgroundTypeFill final : public BackgroundType { public: object_ptr fill_; backgroundTypeFill(); explicit backgroundTypeFill(object_ptr &&fill_); static const std::int32_t ID = 993008684; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class background; class backgrounds final : public Object { public: array> backgrounds_; backgrounds(); explicit backgrounds(array> &&backgrounds_); static const std::int32_t ID = 724728704; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class bankCardActionOpenUrl final : public Object { public: string text_; string url_; bankCardActionOpenUrl(); bankCardActionOpenUrl(string const &text_, string const &url_); static const std::int32_t ID = -196454267; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class bankCardActionOpenUrl; class bankCardInfo final : public Object { public: string title_; array> actions_; bankCardInfo(); bankCardInfo(string const &title_, array> &&actions_); static const std::int32_t ID = -2116647730; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatMemberStatus; class basicGroup final : public Object { public: int53 id_; int32 member_count_; object_ptr status_; bool is_active_; int53 upgraded_to_supergroup_id_; basicGroup(); basicGroup(int53 id_, int32 member_count_, object_ptr &&status_, bool is_active_, int53 upgraded_to_supergroup_id_); static const std::int32_t ID = -194767217; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommands; class chatInviteLink; class chatMember; class chatPhoto; class basicGroupFullInfo final : public Object { public: object_ptr photo_; string description_; int53 creator_user_id_; array> members_; bool can_hide_members_; bool can_toggle_aggressive_anti_spam_; object_ptr invite_link_; array> bot_commands_; basicGroupFullInfo(); basicGroupFullInfo(object_ptr &&photo_, string const &description_, int53 creator_user_id_, array> &&members_, bool can_hide_members_, bool can_toggle_aggressive_anti_spam_, object_ptr &&invite_link_, array> &&bot_commands_); static const std::int32_t ID = -1879035520; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class BlockList: public Object { public: }; class blockListMain final : public BlockList { public: blockListMain(); static const std::int32_t ID = 1352930172; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class blockListStories final : public BlockList { public: blockListStories(); static const std::int32_t ID = 103323228; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommand final : public Object { public: string command_; string description_; botCommand(); botCommand(string const &command_, string const &description_); static const std::int32_t ID = -1032140601; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class BotCommandScope: public Object { public: }; class botCommandScopeDefault final : public BotCommandScope { public: botCommandScopeDefault(); static const std::int32_t ID = 795652779; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommandScopeAllPrivateChats final : public BotCommandScope { public: botCommandScopeAllPrivateChats(); static const std::int32_t ID = -344889543; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommandScopeAllGroupChats final : public BotCommandScope { public: botCommandScopeAllGroupChats(); static const std::int32_t ID = -981088162; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommandScopeAllChatAdministrators final : public BotCommandScope { public: botCommandScopeAllChatAdministrators(); static const std::int32_t ID = 1998329169; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommandScopeChat final : public BotCommandScope { public: int53 chat_id_; botCommandScopeChat(); explicit botCommandScopeChat(int53 chat_id_); static const std::int32_t ID = -430234971; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommandScopeChatAdministrators final : public BotCommandScope { public: int53 chat_id_; botCommandScopeChatAdministrators(); explicit botCommandScopeChatAdministrators(int53 chat_id_); static const std::int32_t ID = 1119682126; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommandScopeChatMember final : public BotCommandScope { public: int53 chat_id_; int53 user_id_; botCommandScopeChatMember(); botCommandScopeChatMember(int53 chat_id_, int53 user_id_); static const std::int32_t ID = -211380494; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botCommand; class botCommands final : public Object { public: int53 bot_user_id_; array> commands_; botCommands(); botCommands(int53 bot_user_id_, array> &&commands_); static const std::int32_t ID = 1741364468; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class InternalLinkType; class animation; class botCommand; class botMenuButton; class chatAdministratorRights; class photo; class botInfo final : public Object { public: string short_description_; string description_; object_ptr photo_; object_ptr animation_; object_ptr menu_button_; array> commands_; object_ptr default_group_administrator_rights_; object_ptr default_channel_administrator_rights_; object_ptr edit_commands_link_; object_ptr edit_description_link_; object_ptr edit_description_media_link_; object_ptr edit_settings_link_; botInfo(); botInfo(string const &short_description_, string const &description_, object_ptr &&photo_, object_ptr &&animation_, object_ptr &&menu_button_, array> &&commands_, object_ptr &&default_group_administrator_rights_, object_ptr &&default_channel_administrator_rights_, object_ptr &&edit_commands_link_, object_ptr &&edit_description_link_, object_ptr &&edit_description_media_link_, object_ptr &&edit_settings_link_); static const std::int32_t ID = -1472546735; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botMenuButton final : public Object { public: string text_; string url_; botMenuButton(); botMenuButton(string const &text_, string const &url_); static const std::int32_t ID = -944407322; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class webApp; class BotWriteAccessAllowReason: public Object { public: }; class botWriteAccessAllowReasonConnectedWebsite final : public BotWriteAccessAllowReason { public: string domain_name_; botWriteAccessAllowReasonConnectedWebsite(); explicit botWriteAccessAllowReasonConnectedWebsite(string const &domain_name_); static const std::int32_t ID = 2016325603; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botWriteAccessAllowReasonAddedToAttachmentMenu final : public BotWriteAccessAllowReason { public: botWriteAccessAllowReasonAddedToAttachmentMenu(); static const std::int32_t ID = -2104795235; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botWriteAccessAllowReasonLaunchedWebApp final : public BotWriteAccessAllowReason { public: object_ptr web_app_; botWriteAccessAllowReasonLaunchedWebApp(); explicit botWriteAccessAllowReasonLaunchedWebApp(object_ptr &&web_app_); static const std::int32_t ID = -240843561; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class botWriteAccessAllowReasonAcceptedRequest final : public BotWriteAccessAllowReason { public: botWriteAccessAllowReasonAcceptedRequest(); static const std::int32_t ID = -1983497220; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CallState; class call final : public Object { public: int32 id_; int53 user_id_; bool is_outgoing_; bool is_video_; object_ptr state_; call(); call(int32 id_, int53 user_id_, bool is_outgoing_, bool is_video_, object_ptr &&state_); static const std::int32_t ID = 920360804; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CallDiscardReason: public Object { public: }; class callDiscardReasonEmpty final : public CallDiscardReason { public: callDiscardReasonEmpty(); static const std::int32_t ID = -1258917949; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callDiscardReasonMissed final : public CallDiscardReason { public: callDiscardReasonMissed(); static const std::int32_t ID = 1680358012; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callDiscardReasonDeclined final : public CallDiscardReason { public: callDiscardReasonDeclined(); static const std::int32_t ID = -1729926094; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callDiscardReasonDisconnected final : public CallDiscardReason { public: callDiscardReasonDisconnected(); static const std::int32_t ID = -1342872670; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callDiscardReasonHungUp final : public CallDiscardReason { public: callDiscardReasonHungUp(); static const std::int32_t ID = 438216166; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callId final : public Object { public: int32 id_; callId(); explicit callId(int32 id_); static const std::int32_t ID = 65717769; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CallProblem: public Object { public: }; class callProblemEcho final : public CallProblem { public: callProblemEcho(); static const std::int32_t ID = 801116548; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProblemNoise final : public CallProblem { public: callProblemNoise(); static const std::int32_t ID = 1053065359; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProblemInterruptions final : public CallProblem { public: callProblemInterruptions(); static const std::int32_t ID = 1119493218; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProblemDistortedSpeech final : public CallProblem { public: callProblemDistortedSpeech(); static const std::int32_t ID = 379960581; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProblemSilentLocal final : public CallProblem { public: callProblemSilentLocal(); static const std::int32_t ID = 253652790; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProblemSilentRemote final : public CallProblem { public: callProblemSilentRemote(); static const std::int32_t ID = 573634714; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProblemDropped final : public CallProblem { public: callProblemDropped(); static const std::int32_t ID = -1207311487; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProblemDistortedVideo final : public CallProblem { public: callProblemDistortedVideo(); static const std::int32_t ID = 385245706; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProblemPixelatedVideo final : public CallProblem { public: callProblemPixelatedVideo(); static const std::int32_t ID = 2115315411; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callProtocol final : public Object { public: bool udp_p2p_; bool udp_reflector_; int32 min_layer_; int32 max_layer_; array library_versions_; callProtocol(); callProtocol(bool udp_p2p_, bool udp_reflector_, int32 min_layer_, int32 max_layer_, array &&library_versions_); static const std::int32_t ID = -1075562897; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CallServerType; class callServer final : public Object { public: int64 id_; string ip_address_; string ipv6_address_; int32 port_; object_ptr type_; callServer(); callServer(int64 id_, string const &ip_address_, string const &ipv6_address_, int32 port_, object_ptr &&type_); static const std::int32_t ID = 1865932695; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CallServerType: public Object { public: }; class callServerTypeTelegramReflector final : public CallServerType { public: bytes peer_tag_; bool is_tcp_; callServerTypeTelegramReflector(); callServerTypeTelegramReflector(bytes const &peer_tag_, bool is_tcp_); static const std::int32_t ID = 850343189; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callServerTypeWebrtc final : public CallServerType { public: string username_; string password_; bool supports_turn_; bool supports_stun_; callServerTypeWebrtc(); callServerTypeWebrtc(string const &username_, string const &password_, bool supports_turn_, bool supports_stun_); static const std::int32_t ID = 1250622821; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CallDiscardReason; class callProtocol; class callServer; class error; class CallState: public Object { public: }; class callStatePending final : public CallState { public: bool is_created_; bool is_received_; callStatePending(); callStatePending(bool is_created_, bool is_received_); static const std::int32_t ID = 1073048620; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callStateExchangingKeys final : public CallState { public: callStateExchangingKeys(); static const std::int32_t ID = -1848149403; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callStateReady final : public CallState { public: object_ptr protocol_; array> servers_; string config_; bytes encryption_key_; array emojis_; bool allow_p2p_; callStateReady(); callStateReady(object_ptr &&protocol_, array> &&servers_, string const &config_, bytes const &encryption_key_, array &&emojis_, bool allow_p2p_); static const std::int32_t ID = -2000107571; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callStateHangingUp final : public CallState { public: callStateHangingUp(); static const std::int32_t ID = -2133790038; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callStateDiscarded final : public CallState { public: object_ptr reason_; bool need_rating_; bool need_debug_information_; bool need_log_; callStateDiscarded(); callStateDiscarded(object_ptr &&reason_, bool need_rating_, bool need_debug_information_, bool need_log_); static const std::int32_t ID = 1394310213; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callStateError final : public CallState { public: object_ptr error_; callStateError(); explicit callStateError(object_ptr &&error_); static const std::int32_t ID = -975215467; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callbackQueryAnswer final : public Object { public: string text_; bool show_alert_; string url_; callbackQueryAnswer(); callbackQueryAnswer(string const &text_, bool show_alert_, string const &url_); static const std::int32_t ID = 360867933; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CallbackQueryPayload: public Object { public: }; class callbackQueryPayloadData final : public CallbackQueryPayload { public: bytes data_; callbackQueryPayloadData(); explicit callbackQueryPayloadData(bytes const &data_); static const std::int32_t ID = -1977729946; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callbackQueryPayloadDataWithPassword final : public CallbackQueryPayload { public: string password_; bytes data_; callbackQueryPayloadDataWithPassword(); callbackQueryPayloadDataWithPassword(string const &password_, bytes const &data_); static const std::int32_t ID = 1340266738; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class callbackQueryPayloadGame final : public CallbackQueryPayload { public: string game_short_name_; callbackQueryPayloadGame(); explicit callbackQueryPayloadGame(string const &game_short_name_); static const std::int32_t ID = 1303571512; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CanSendStoryResult: public Object { public: }; class canSendStoryResultOk final : public CanSendStoryResult { public: canSendStoryResultOk(); static const std::int32_t ID = 1346171133; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class canSendStoryResultPremiumNeeded final : public CanSendStoryResult { public: canSendStoryResultPremiumNeeded(); static const std::int32_t ID = 1451220585; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class canSendStoryResultBoostNeeded final : public CanSendStoryResult { public: canSendStoryResultBoostNeeded(); static const std::int32_t ID = -1637816017; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class canSendStoryResultActiveStoryLimitExceeded final : public CanSendStoryResult { public: canSendStoryResultActiveStoryLimitExceeded(); static const std::int32_t ID = -1344689450; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class canSendStoryResultWeeklyLimitExceeded final : public CanSendStoryResult { public: int32 retry_after_; canSendStoryResultWeeklyLimitExceeded(); explicit canSendStoryResultWeeklyLimitExceeded(int32 retry_after_); static const std::int32_t ID = 323068088; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class canSendStoryResultMonthlyLimitExceeded final : public CanSendStoryResult { public: int32 retry_after_; canSendStoryResultMonthlyLimitExceeded(); explicit canSendStoryResultMonthlyLimitExceeded(int32 retry_after_); static const std::int32_t ID = -578665771; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CanTransferOwnershipResult: public Object { public: }; class canTransferOwnershipResultOk final : public CanTransferOwnershipResult { public: canTransferOwnershipResultOk(); static const std::int32_t ID = -89881021; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class canTransferOwnershipResultPasswordNeeded final : public CanTransferOwnershipResult { public: canTransferOwnershipResultPasswordNeeded(); static const std::int32_t ID = 1548372703; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class canTransferOwnershipResultPasswordTooFresh final : public CanTransferOwnershipResult { public: int32 retry_after_; canTransferOwnershipResultPasswordTooFresh(); explicit canTransferOwnershipResultPasswordTooFresh(int32 retry_after_); static const std::int32_t ID = 811440913; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class canTransferOwnershipResultSessionTooFresh final : public CanTransferOwnershipResult { public: int32 retry_after_; canTransferOwnershipResultSessionTooFresh(); explicit canTransferOwnershipResultSessionTooFresh(int32 retry_after_); static const std::int32_t ID = 984664289; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class BlockList; class ChatActionBar; class ChatAvailableReactions; class ChatType; class MessageSender; class chatBackground; class chatJoinRequestsInfo; class chatNotificationSettings; class chatPermissions; class chatPhotoInfo; class chatPosition; class draftMessage; class message; class videoChat; class chat final : public Object { public: int53 id_; object_ptr type_; string title_; object_ptr photo_; int32 accent_color_id_; int64 background_custom_emoji_id_; object_ptr permissions_; object_ptr last_message_; array> positions_; object_ptr message_sender_id_; object_ptr block_list_; bool has_protected_content_; bool is_translatable_; bool is_marked_as_unread_; bool has_scheduled_messages_; bool can_be_deleted_only_for_self_; bool can_be_deleted_for_all_users_; bool can_be_reported_; bool default_disable_notification_; int32 unread_count_; int53 last_read_inbox_message_id_; int53 last_read_outbox_message_id_; int32 unread_mention_count_; int32 unread_reaction_count_; object_ptr notification_settings_; object_ptr available_reactions_; int32 message_auto_delete_time_; object_ptr background_; string theme_name_; object_ptr action_bar_; object_ptr video_chat_; object_ptr pending_join_requests_; int53 reply_markup_message_id_; object_ptr draft_message_; string client_data_; chat(); chat(int53 id_, object_ptr &&type_, string const &title_, object_ptr &&photo_, int32 accent_color_id_, int64 background_custom_emoji_id_, object_ptr &&permissions_, object_ptr &&last_message_, array> &&positions_, object_ptr &&message_sender_id_, object_ptr &&block_list_, bool has_protected_content_, bool is_translatable_, bool is_marked_as_unread_, bool has_scheduled_messages_, bool can_be_deleted_only_for_self_, bool can_be_deleted_for_all_users_, bool can_be_reported_, bool default_disable_notification_, int32 unread_count_, int53 last_read_inbox_message_id_, int53 last_read_outbox_message_id_, int32 unread_mention_count_, int32 unread_reaction_count_, object_ptr &¬ification_settings_, object_ptr &&available_reactions_, int32 message_auto_delete_time_, object_ptr &&background_, string const &theme_name_, object_ptr &&action_bar_, object_ptr &&video_chat_, object_ptr &&pending_join_requests_, int53 reply_markup_message_id_, object_ptr &&draft_message_, string const &client_data_); static const std::int32_t ID = 577146552; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatAction: public Object { public: }; class chatActionTyping final : public ChatAction { public: chatActionTyping(); static const std::int32_t ID = 380122167; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionRecordingVideo final : public ChatAction { public: chatActionRecordingVideo(); static const std::int32_t ID = 216553362; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionUploadingVideo final : public ChatAction { public: int32 progress_; chatActionUploadingVideo(); explicit chatActionUploadingVideo(int32 progress_); static const std::int32_t ID = 1234185270; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionRecordingVoiceNote final : public ChatAction { public: chatActionRecordingVoiceNote(); static const std::int32_t ID = -808850058; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionUploadingVoiceNote final : public ChatAction { public: int32 progress_; chatActionUploadingVoiceNote(); explicit chatActionUploadingVoiceNote(int32 progress_); static const std::int32_t ID = -613643666; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionUploadingPhoto final : public ChatAction { public: int32 progress_; chatActionUploadingPhoto(); explicit chatActionUploadingPhoto(int32 progress_); static const std::int32_t ID = 654240583; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionUploadingDocument final : public ChatAction { public: int32 progress_; chatActionUploadingDocument(); explicit chatActionUploadingDocument(int32 progress_); static const std::int32_t ID = 167884362; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionChoosingSticker final : public ChatAction { public: chatActionChoosingSticker(); static const std::int32_t ID = 372753697; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionChoosingLocation final : public ChatAction { public: chatActionChoosingLocation(); static const std::int32_t ID = -2017893596; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionChoosingContact final : public ChatAction { public: chatActionChoosingContact(); static const std::int32_t ID = -1222507496; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionStartPlayingGame final : public ChatAction { public: chatActionStartPlayingGame(); static const std::int32_t ID = -865884164; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionRecordingVideoNote final : public ChatAction { public: chatActionRecordingVideoNote(); static const std::int32_t ID = 16523393; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionUploadingVideoNote final : public ChatAction { public: int32 progress_; chatActionUploadingVideoNote(); explicit chatActionUploadingVideoNote(int32 progress_); static const std::int32_t ID = 1172364918; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionWatchingAnimations final : public ChatAction { public: string emoji_; chatActionWatchingAnimations(); explicit chatActionWatchingAnimations(string const &emoji_); static const std::int32_t ID = 2052990641; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionCancel final : public ChatAction { public: chatActionCancel(); static const std::int32_t ID = 1160523958; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatActionBar: public Object { public: }; class chatActionBarReportSpam final : public ChatActionBar { public: bool can_unarchive_; chatActionBarReportSpam(); explicit chatActionBarReportSpam(bool can_unarchive_); static const std::int32_t ID = -1312758246; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionBarReportUnrelatedLocation final : public ChatActionBar { public: chatActionBarReportUnrelatedLocation(); static const std::int32_t ID = 758175489; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionBarInviteMembers final : public ChatActionBar { public: chatActionBarInviteMembers(); static const std::int32_t ID = 1985313904; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionBarReportAddBlock final : public ChatActionBar { public: bool can_unarchive_; int32 distance_; chatActionBarReportAddBlock(); chatActionBarReportAddBlock(bool can_unarchive_, int32 distance_); static const std::int32_t ID = -914150419; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionBarAddContact final : public ChatActionBar { public: chatActionBarAddContact(); static const std::int32_t ID = -733325295; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionBarSharePhoneNumber final : public ChatActionBar { public: chatActionBarSharePhoneNumber(); static const std::int32_t ID = 35188697; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatActionBarJoinRequest final : public ChatActionBar { public: string title_; bool is_channel_; int32 request_date_; chatActionBarJoinRequest(); chatActionBarJoinRequest(string const &title_, bool is_channel_, int32 request_date_); static const std::int32_t ID = 1037140744; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class StoryList; class storyInfo; class chatActiveStories final : public Object { public: int53 chat_id_; object_ptr list_; int53 order_; int32 max_read_story_id_; array> stories_; chatActiveStories(); chatActiveStories(int53 chat_id_, object_ptr &&list_, int53 order_, int32 max_read_story_id_, array> &&stories_); static const std::int32_t ID = -1398869529; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatAdministrator final : public Object { public: int53 user_id_; string custom_title_; bool is_owner_; chatAdministrator(); chatAdministrator(int53 user_id_, string const &custom_title_, bool is_owner_); static const std::int32_t ID = 1920449836; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatAdministratorRights final : public Object { public: bool can_manage_chat_; bool can_change_info_; bool can_post_messages_; bool can_edit_messages_; bool can_delete_messages_; bool can_invite_users_; bool can_restrict_members_; bool can_pin_messages_; bool can_manage_topics_; bool can_promote_members_; bool can_manage_video_chats_; bool can_post_stories_; bool can_edit_stories_; bool can_delete_stories_; bool is_anonymous_; chatAdministratorRights(); chatAdministratorRights(bool can_manage_chat_, bool can_change_info_, bool can_post_messages_, bool can_edit_messages_, bool can_delete_messages_, bool can_invite_users_, bool can_restrict_members_, bool can_pin_messages_, bool can_manage_topics_, bool can_promote_members_, bool can_manage_video_chats_, bool can_post_stories_, bool can_edit_stories_, bool can_delete_stories_, bool is_anonymous_); static const std::int32_t ID = 1599049796; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatAdministrator; class chatAdministrators final : public Object { public: array> administrators_; chatAdministrators(); explicit chatAdministrators(array> &&administrators_); static const std::int32_t ID = -2126186435; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ReactionType; class ChatAvailableReactions: public Object { public: }; class chatAvailableReactionsAll final : public ChatAvailableReactions { public: chatAvailableReactionsAll(); static const std::int32_t ID = -537887666; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatAvailableReactionsSome final : public ChatAvailableReactions { public: array> reactions_; chatAvailableReactionsSome(); explicit chatAvailableReactionsSome(array> &&reactions_); static const std::int32_t ID = -640810821; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class background; class chatBackground final : public Object { public: object_ptr background_; int32 dark_theme_dimming_; chatBackground(); chatBackground(object_ptr &&background_, int32 dark_theme_dimming_); static const std::int32_t ID = 1653152104; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatBoostSource; class chatBoost final : public Object { public: string id_; int32 count_; object_ptr source_; int32 start_date_; int32 expiration_date_; chatBoost(); chatBoost(string const &id_, int32 count_, object_ptr &&source_, int32 start_date_, int32 expiration_date_); static const std::int32_t ID = -1765815118; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatBoostLink final : public Object { public: string link_; bool is_public_; chatBoostLink(); chatBoostLink(string const &link_, bool is_public_); static const std::int32_t ID = -1253999503; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatBoostLinkInfo final : public Object { public: bool is_public_; int53 chat_id_; chatBoostLinkInfo(); chatBoostLinkInfo(bool is_public_, int53 chat_id_); static const std::int32_t ID = -602785660; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatBoostSlot final : public Object { public: int32 slot_id_; int53 currently_boosted_chat_id_; int32 start_date_; int32 expiration_date_; int32 cooldown_until_date_; chatBoostSlot(); chatBoostSlot(int32 slot_id_, int53 currently_boosted_chat_id_, int32 start_date_, int32 expiration_date_, int32 cooldown_until_date_); static const std::int32_t ID = 123206343; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatBoostSlot; class chatBoostSlots final : public Object { public: array> slots_; chatBoostSlots(); explicit chatBoostSlots(array> &&slots_); static const std::int32_t ID = 1014966293; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatBoostSource: public Object { public: }; class chatBoostSourceGiftCode final : public ChatBoostSource { public: int53 user_id_; string gift_code_; chatBoostSourceGiftCode(); chatBoostSourceGiftCode(int53 user_id_, string const &gift_code_); static const std::int32_t ID = -98299206; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatBoostSourceGiveaway final : public ChatBoostSource { public: int53 user_id_; string gift_code_; int53 giveaway_message_id_; bool is_unclaimed_; chatBoostSourceGiveaway(); chatBoostSourceGiveaway(int53 user_id_, string const &gift_code_, int53 giveaway_message_id_, bool is_unclaimed_); static const std::int32_t ID = 151854192; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatBoostSourcePremium final : public ChatBoostSource { public: int53 user_id_; chatBoostSourcePremium(); explicit chatBoostSourcePremium(int53 user_id_); static const std::int32_t ID = 972011; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class prepaidPremiumGiveaway; class chatBoostStatus final : public Object { public: string boost_url_; array applied_slot_ids_; int32 level_; int32 gift_code_boost_count_; int32 boost_count_; int32 current_level_boost_count_; int32 next_level_boost_count_; int32 premium_member_count_; double premium_member_percentage_; array> prepaid_giveaways_; chatBoostStatus(); chatBoostStatus(string const &boost_url_, array &&applied_slot_ids_, int32 level_, int32 gift_code_boost_count_, int32 boost_count_, int32 current_level_boost_count_, int32 next_level_boost_count_, int32 premium_member_count_, double premium_member_percentage_, array> &&prepaid_giveaways_); static const std::int32_t ID = -347168798; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatEventAction; class MessageSender; class chatEvent final : public Object { public: int64 id_; int32 date_; object_ptr member_id_; object_ptr action_; chatEvent(); chatEvent(int64 id_, int32 date_, object_ptr &&member_id_, object_ptr &&action_); static const std::int32_t ID = -652102704; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatAvailableReactions; class ChatMemberStatus; class MessageSender; class chatInviteLink; class chatLocation; class chatPermissions; class chatPhoto; class forumTopicInfo; class message; class ChatEventAction: public Object { public: }; class chatEventMessageEdited final : public ChatEventAction { public: object_ptr old_message_; object_ptr new_message_; chatEventMessageEdited(); chatEventMessageEdited(object_ptr &&old_message_, object_ptr &&new_message_); static const std::int32_t ID = -430967304; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMessageDeleted final : public ChatEventAction { public: object_ptr message_; bool can_report_anti_spam_false_positive_; chatEventMessageDeleted(); chatEventMessageDeleted(object_ptr &&message_, bool can_report_anti_spam_false_positive_); static const std::int32_t ID = 935316851; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMessagePinned final : public ChatEventAction { public: object_ptr message_; chatEventMessagePinned(); explicit chatEventMessagePinned(object_ptr &&message_); static const std::int32_t ID = 438742298; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMessageUnpinned final : public ChatEventAction { public: object_ptr message_; chatEventMessageUnpinned(); explicit chatEventMessageUnpinned(object_ptr &&message_); static const std::int32_t ID = -376161513; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventPollStopped final : public ChatEventAction { public: object_ptr message_; chatEventPollStopped(); explicit chatEventPollStopped(object_ptr &&message_); static const std::int32_t ID = 2009893861; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMemberJoined final : public ChatEventAction { public: chatEventMemberJoined(); static const std::int32_t ID = -235468508; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMemberJoinedByInviteLink final : public ChatEventAction { public: object_ptr invite_link_; bool via_chat_folder_invite_link_; chatEventMemberJoinedByInviteLink(); chatEventMemberJoinedByInviteLink(object_ptr &&invite_link_, bool via_chat_folder_invite_link_); static const std::int32_t ID = -1445536390; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMemberJoinedByRequest final : public ChatEventAction { public: int53 approver_user_id_; object_ptr invite_link_; chatEventMemberJoinedByRequest(); chatEventMemberJoinedByRequest(int53 approver_user_id_, object_ptr &&invite_link_); static const std::int32_t ID = -1647804865; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMemberInvited final : public ChatEventAction { public: int53 user_id_; object_ptr status_; chatEventMemberInvited(); chatEventMemberInvited(int53 user_id_, object_ptr &&status_); static const std::int32_t ID = 953663433; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMemberLeft final : public ChatEventAction { public: chatEventMemberLeft(); static const std::int32_t ID = -948420593; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMemberPromoted final : public ChatEventAction { public: int53 user_id_; object_ptr old_status_; object_ptr new_status_; chatEventMemberPromoted(); chatEventMemberPromoted(int53 user_id_, object_ptr &&old_status_, object_ptr &&new_status_); static const std::int32_t ID = 525297761; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMemberRestricted final : public ChatEventAction { public: object_ptr member_id_; object_ptr old_status_; object_ptr new_status_; chatEventMemberRestricted(); chatEventMemberRestricted(object_ptr &&member_id_, object_ptr &&old_status_, object_ptr &&new_status_); static const std::int32_t ID = 1603608069; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventAvailableReactionsChanged final : public ChatEventAction { public: object_ptr old_available_reactions_; object_ptr new_available_reactions_; chatEventAvailableReactionsChanged(); chatEventAvailableReactionsChanged(object_ptr &&old_available_reactions_, object_ptr &&new_available_reactions_); static const std::int32_t ID = -1749491521; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventDescriptionChanged final : public ChatEventAction { public: string old_description_; string new_description_; chatEventDescriptionChanged(); chatEventDescriptionChanged(string const &old_description_, string const &new_description_); static const std::int32_t ID = 39112478; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventLinkedChatChanged final : public ChatEventAction { public: int53 old_linked_chat_id_; int53 new_linked_chat_id_; chatEventLinkedChatChanged(); chatEventLinkedChatChanged(int53 old_linked_chat_id_, int53 new_linked_chat_id_); static const std::int32_t ID = 1797419439; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventLocationChanged final : public ChatEventAction { public: object_ptr old_location_; object_ptr new_location_; chatEventLocationChanged(); chatEventLocationChanged(object_ptr &&old_location_, object_ptr &&new_location_); static const std::int32_t ID = -405930674; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventMessageAutoDeleteTimeChanged final : public ChatEventAction { public: int32 old_message_auto_delete_time_; int32 new_message_auto_delete_time_; chatEventMessageAutoDeleteTimeChanged(); chatEventMessageAutoDeleteTimeChanged(int32 old_message_auto_delete_time_, int32 new_message_auto_delete_time_); static const std::int32_t ID = 17317668; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventPermissionsChanged final : public ChatEventAction { public: object_ptr old_permissions_; object_ptr new_permissions_; chatEventPermissionsChanged(); chatEventPermissionsChanged(object_ptr &&old_permissions_, object_ptr &&new_permissions_); static const std::int32_t ID = -1311557720; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventPhotoChanged final : public ChatEventAction { public: object_ptr old_photo_; object_ptr new_photo_; chatEventPhotoChanged(); chatEventPhotoChanged(object_ptr &&old_photo_, object_ptr &&new_photo_); static const std::int32_t ID = -811572541; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventSlowModeDelayChanged final : public ChatEventAction { public: int32 old_slow_mode_delay_; int32 new_slow_mode_delay_; chatEventSlowModeDelayChanged(); chatEventSlowModeDelayChanged(int32 old_slow_mode_delay_, int32 new_slow_mode_delay_); static const std::int32_t ID = -1653195765; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventStickerSetChanged final : public ChatEventAction { public: int64 old_sticker_set_id_; int64 new_sticker_set_id_; chatEventStickerSetChanged(); chatEventStickerSetChanged(int64 old_sticker_set_id_, int64 new_sticker_set_id_); static const std::int32_t ID = -1243130481; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventTitleChanged final : public ChatEventAction { public: string old_title_; string new_title_; chatEventTitleChanged(); chatEventTitleChanged(string const &old_title_, string const &new_title_); static const std::int32_t ID = 1134103250; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventUsernameChanged final : public ChatEventAction { public: string old_username_; string new_username_; chatEventUsernameChanged(); chatEventUsernameChanged(string const &old_username_, string const &new_username_); static const std::int32_t ID = 1728558443; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventActiveUsernamesChanged final : public ChatEventAction { public: array old_usernames_; array new_usernames_; chatEventActiveUsernamesChanged(); chatEventActiveUsernamesChanged(array &&old_usernames_, array &&new_usernames_); static const std::int32_t ID = -1508790810; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventAccentColorChanged final : public ChatEventAction { public: int32 old_accent_color_id_; int32 new_accent_color_id_; chatEventAccentColorChanged(); chatEventAccentColorChanged(int32 old_accent_color_id_, int32 new_accent_color_id_); static const std::int32_t ID = 707952178; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventBackgroundCustomEmojiChanged final : public ChatEventAction { public: int64 old_background_custom_emoji_id_; int64 new_background_custom_emoji_id_; chatEventBackgroundCustomEmojiChanged(); chatEventBackgroundCustomEmojiChanged(int64 old_background_custom_emoji_id_, int64 new_background_custom_emoji_id_); static const std::int32_t ID = -764993894; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventHasProtectedContentToggled final : public ChatEventAction { public: bool has_protected_content_; chatEventHasProtectedContentToggled(); explicit chatEventHasProtectedContentToggled(bool has_protected_content_); static const std::int32_t ID = -184270335; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventInvitesToggled final : public ChatEventAction { public: bool can_invite_users_; chatEventInvitesToggled(); explicit chatEventInvitesToggled(bool can_invite_users_); static const std::int32_t ID = -62548373; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventIsAllHistoryAvailableToggled final : public ChatEventAction { public: bool is_all_history_available_; chatEventIsAllHistoryAvailableToggled(); explicit chatEventIsAllHistoryAvailableToggled(bool is_all_history_available_); static const std::int32_t ID = -1599063019; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventHasAggressiveAntiSpamEnabledToggled final : public ChatEventAction { public: bool has_aggressive_anti_spam_enabled_; chatEventHasAggressiveAntiSpamEnabledToggled(); explicit chatEventHasAggressiveAntiSpamEnabledToggled(bool has_aggressive_anti_spam_enabled_); static const std::int32_t ID = -125348094; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventSignMessagesToggled final : public ChatEventAction { public: bool sign_messages_; chatEventSignMessagesToggled(); explicit chatEventSignMessagesToggled(bool sign_messages_); static const std::int32_t ID = -1313265634; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventInviteLinkEdited final : public ChatEventAction { public: object_ptr old_invite_link_; object_ptr new_invite_link_; chatEventInviteLinkEdited(); chatEventInviteLinkEdited(object_ptr &&old_invite_link_, object_ptr &&new_invite_link_); static const std::int32_t ID = -460190366; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventInviteLinkRevoked final : public ChatEventAction { public: object_ptr invite_link_; chatEventInviteLinkRevoked(); explicit chatEventInviteLinkRevoked(object_ptr &&invite_link_); static const std::int32_t ID = -1579417629; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventInviteLinkDeleted final : public ChatEventAction { public: object_ptr invite_link_; chatEventInviteLinkDeleted(); explicit chatEventInviteLinkDeleted(object_ptr &&invite_link_); static const std::int32_t ID = -1394974361; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventVideoChatCreated final : public ChatEventAction { public: int32 group_call_id_; chatEventVideoChatCreated(); explicit chatEventVideoChatCreated(int32 group_call_id_); static const std::int32_t ID = 1822853755; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventVideoChatEnded final : public ChatEventAction { public: int32 group_call_id_; chatEventVideoChatEnded(); explicit chatEventVideoChatEnded(int32 group_call_id_); static const std::int32_t ID = 1630039112; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventVideoChatMuteNewParticipantsToggled final : public ChatEventAction { public: bool mute_new_participants_; chatEventVideoChatMuteNewParticipantsToggled(); explicit chatEventVideoChatMuteNewParticipantsToggled(bool mute_new_participants_); static const std::int32_t ID = -126547970; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventVideoChatParticipantIsMutedToggled final : public ChatEventAction { public: object_ptr participant_id_; bool is_muted_; chatEventVideoChatParticipantIsMutedToggled(); chatEventVideoChatParticipantIsMutedToggled(object_ptr &&participant_id_, bool is_muted_); static const std::int32_t ID = 521165047; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventVideoChatParticipantVolumeLevelChanged final : public ChatEventAction { public: object_ptr participant_id_; int32 volume_level_; chatEventVideoChatParticipantVolumeLevelChanged(); chatEventVideoChatParticipantVolumeLevelChanged(object_ptr &&participant_id_, int32 volume_level_); static const std::int32_t ID = 1131385534; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventIsForumToggled final : public ChatEventAction { public: bool is_forum_; chatEventIsForumToggled(); explicit chatEventIsForumToggled(bool is_forum_); static const std::int32_t ID = 1516491033; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventForumTopicCreated final : public ChatEventAction { public: object_ptr topic_info_; chatEventForumTopicCreated(); explicit chatEventForumTopicCreated(object_ptr &&topic_info_); static const std::int32_t ID = 2005269314; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventForumTopicEdited final : public ChatEventAction { public: object_ptr old_topic_info_; object_ptr new_topic_info_; chatEventForumTopicEdited(); chatEventForumTopicEdited(object_ptr &&old_topic_info_, object_ptr &&new_topic_info_); static const std::int32_t ID = 1624910860; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventForumTopicToggleIsClosed final : public ChatEventAction { public: object_ptr topic_info_; chatEventForumTopicToggleIsClosed(); explicit chatEventForumTopicToggleIsClosed(object_ptr &&topic_info_); static const std::int32_t ID = -962704070; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventForumTopicToggleIsHidden final : public ChatEventAction { public: object_ptr topic_info_; chatEventForumTopicToggleIsHidden(); explicit chatEventForumTopicToggleIsHidden(object_ptr &&topic_info_); static const std::int32_t ID = -1609175250; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventForumTopicDeleted final : public ChatEventAction { public: object_ptr topic_info_; chatEventForumTopicDeleted(); explicit chatEventForumTopicDeleted(object_ptr &&topic_info_); static const std::int32_t ID = -1332795123; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventForumTopicPinned final : public ChatEventAction { public: object_ptr old_topic_info_; object_ptr new_topic_info_; chatEventForumTopicPinned(); chatEventForumTopicPinned(object_ptr &&old_topic_info_, object_ptr &&new_topic_info_); static const std::int32_t ID = 2143626222; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEventLogFilters final : public Object { public: bool message_edits_; bool message_deletions_; bool message_pins_; bool member_joins_; bool member_leaves_; bool member_invites_; bool member_promotions_; bool member_restrictions_; bool info_changes_; bool setting_changes_; bool invite_link_changes_; bool video_chat_changes_; bool forum_changes_; chatEventLogFilters(); chatEventLogFilters(bool message_edits_, bool message_deletions_, bool message_pins_, bool member_joins_, bool member_leaves_, bool member_invites_, bool member_promotions_, bool member_restrictions_, bool info_changes_, bool setting_changes_, bool invite_link_changes_, bool video_chat_changes_, bool forum_changes_); static const std::int32_t ID = 1648261677; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatEvent; class chatEvents final : public Object { public: array> events_; chatEvents(); explicit chatEvents(array> &&events_); static const std::int32_t ID = -585329664; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatFolderIcon; class chatFolder final : public Object { public: string title_; object_ptr icon_; bool is_shareable_; array pinned_chat_ids_; array included_chat_ids_; array excluded_chat_ids_; bool exclude_muted_; bool exclude_read_; bool exclude_archived_; bool include_contacts_; bool include_non_contacts_; bool include_bots_; bool include_groups_; bool include_channels_; chatFolder(); chatFolder(string const &title_, object_ptr &&icon_, bool is_shareable_, array &&pinned_chat_ids_, array &&included_chat_ids_, array &&excluded_chat_ids_, bool exclude_muted_, bool exclude_read_, bool exclude_archived_, bool include_contacts_, bool include_non_contacts_, bool include_bots_, bool include_groups_, bool include_channels_); static const std::int32_t ID = -459081051; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatFolderIcon final : public Object { public: string name_; chatFolderIcon(); explicit chatFolderIcon(string const &name_); static const std::int32_t ID = -146104090; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatFolderIcon; class chatFolderInfo final : public Object { public: int32 id_; string title_; object_ptr icon_; bool is_shareable_; bool has_my_invite_links_; chatFolderInfo(); chatFolderInfo(int32 id_, string const &title_, object_ptr &&icon_, bool is_shareable_, bool has_my_invite_links_); static const std::int32_t ID = 1279189204; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatFolderInviteLink final : public Object { public: string invite_link_; string name_; array chat_ids_; chatFolderInviteLink(); chatFolderInviteLink(string const &invite_link_, string const &name_, array &&chat_ids_); static const std::int32_t ID = 493969661; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatFolderInfo; class chatFolderInviteLinkInfo final : public Object { public: object_ptr chat_folder_info_; array missing_chat_ids_; array added_chat_ids_; chatFolderInviteLinkInfo(); chatFolderInviteLinkInfo(object_ptr &&chat_folder_info_, array &&missing_chat_ids_, array &&added_chat_ids_); static const std::int32_t ID = 1119450395; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatFolderInviteLink; class chatFolderInviteLinks final : public Object { public: array> invite_links_; chatFolderInviteLinks(); explicit chatFolderInviteLinks(array> &&invite_links_); static const std::int32_t ID = 1853351525; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatInviteLink final : public Object { public: string invite_link_; string name_; int53 creator_user_id_; int32 date_; int32 edit_date_; int32 expiration_date_; int32 member_limit_; int32 member_count_; int32 pending_join_request_count_; bool creates_join_request_; bool is_primary_; bool is_revoked_; chatInviteLink(); chatInviteLink(string const &invite_link_, string const &name_, int53 creator_user_id_, int32 date_, int32 edit_date_, int32 expiration_date_, int32 member_limit_, int32 member_count_, int32 pending_join_request_count_, bool creates_join_request_, bool is_primary_, bool is_revoked_); static const std::int32_t ID = -205812476; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatInviteLinkCount final : public Object { public: int53 user_id_; int32 invite_link_count_; int32 revoked_invite_link_count_; chatInviteLinkCount(); chatInviteLinkCount(int53 user_id_, int32 invite_link_count_, int32 revoked_invite_link_count_); static const std::int32_t ID = -1021999210; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatInviteLinkCount; class chatInviteLinkCounts final : public Object { public: array> invite_link_counts_; chatInviteLinkCounts(); explicit chatInviteLinkCounts(array> &&invite_link_counts_); static const std::int32_t ID = 920326637; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class InviteLinkChatType; class chatPhotoInfo; class chatInviteLinkInfo final : public Object { public: int53 chat_id_; int32 accessible_for_; object_ptr type_; string title_; object_ptr photo_; int32 accent_color_id_; string description_; int32 member_count_; array member_user_ids_; bool creates_join_request_; bool is_public_; bool is_verified_; bool is_scam_; bool is_fake_; chatInviteLinkInfo(); chatInviteLinkInfo(int53 chat_id_, int32 accessible_for_, object_ptr &&type_, string const &title_, object_ptr &&photo_, int32 accent_color_id_, string const &description_, int32 member_count_, array &&member_user_ids_, bool creates_join_request_, bool is_public_, bool is_verified_, bool is_scam_, bool is_fake_); static const std::int32_t ID = 1683383858; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatInviteLinkMember final : public Object { public: int53 user_id_; int32 joined_chat_date_; bool via_chat_folder_invite_link_; int53 approver_user_id_; chatInviteLinkMember(); chatInviteLinkMember(int53 user_id_, int32 joined_chat_date_, bool via_chat_folder_invite_link_, int53 approver_user_id_); static const std::int32_t ID = 29156795; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatInviteLinkMember; class chatInviteLinkMembers final : public Object { public: int32 total_count_; array> members_; chatInviteLinkMembers(); chatInviteLinkMembers(int32 total_count_, array> &&members_); static const std::int32_t ID = 315635051; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatInviteLink; class chatInviteLinks final : public Object { public: int32 total_count_; array> invite_links_; chatInviteLinks(); chatInviteLinks(int32 total_count_, array> &&invite_links_); static const std::int32_t ID = 112891427; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatJoinRequest final : public Object { public: int53 user_id_; int32 date_; string bio_; chatJoinRequest(); chatJoinRequest(int53 user_id_, int32 date_, string const &bio_); static const std::int32_t ID = 59341416; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatJoinRequest; class chatJoinRequests final : public Object { public: int32 total_count_; array> requests_; chatJoinRequests(); chatJoinRequests(int32 total_count_, array> &&requests_); static const std::int32_t ID = 1291680519; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatJoinRequestsInfo final : public Object { public: int32 total_count_; array user_ids_; chatJoinRequestsInfo(); chatJoinRequestsInfo(int32 total_count_, array &&user_ids_); static const std::int32_t ID = 888534463; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatList: public Object { public: }; class chatListMain final : public ChatList { public: chatListMain(); static const std::int32_t ID = -400991316; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatListArchive final : public ChatList { public: chatListArchive(); static const std::int32_t ID = 362770115; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatListFolder final : public ChatList { public: int32 chat_folder_id_; chatListFolder(); explicit chatListFolder(int32 chat_folder_id_); static const std::int32_t ID = 385760856; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatList; class chatLists final : public Object { public: array> chat_lists_; chatLists(); explicit chatLists(array> &&chat_lists_); static const std::int32_t ID = -258292771; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class location; class chatLocation final : public Object { public: object_ptr location_; string address_; chatLocation(); chatLocation(object_ptr &&location_, string const &address_); static const std::int32_t ID = -1566863583; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatMemberStatus; class MessageSender; class chatMember final : public Object { public: object_ptr member_id_; int53 inviter_user_id_; int32 joined_chat_date_; object_ptr status_; chatMember(); chatMember(object_ptr &&member_id_, int53 inviter_user_id_, int32 joined_chat_date_, object_ptr &&status_); static const std::int32_t ID = 1829953909; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatAdministratorRights; class chatPermissions; class ChatMemberStatus: public Object { public: }; class chatMemberStatusCreator final : public ChatMemberStatus { public: string custom_title_; bool is_anonymous_; bool is_member_; chatMemberStatusCreator(); chatMemberStatusCreator(string const &custom_title_, bool is_anonymous_, bool is_member_); static const std::int32_t ID = -160019714; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMemberStatusAdministrator final : public ChatMemberStatus { public: string custom_title_; bool can_be_edited_; object_ptr rights_; chatMemberStatusAdministrator(); chatMemberStatusAdministrator(string const &custom_title_, bool can_be_edited_, object_ptr &&rights_); static const std::int32_t ID = -70024163; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMemberStatusMember final : public ChatMemberStatus { public: chatMemberStatusMember(); static const std::int32_t ID = 844723285; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMemberStatusRestricted final : public ChatMemberStatus { public: bool is_member_; int32 restricted_until_date_; object_ptr permissions_; chatMemberStatusRestricted(); chatMemberStatusRestricted(bool is_member_, int32 restricted_until_date_, object_ptr &&permissions_); static const std::int32_t ID = 1661432998; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMemberStatusLeft final : public ChatMemberStatus { public: chatMemberStatusLeft(); static const std::int32_t ID = -5815259; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMemberStatusBanned final : public ChatMemberStatus { public: int32 banned_until_date_; chatMemberStatusBanned(); explicit chatMemberStatusBanned(int32 banned_until_date_); static const std::int32_t ID = -1653518666; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMember; class chatMembers final : public Object { public: int32 total_count_; array> members_; chatMembers(); chatMembers(int32 total_count_, array> &&members_); static const std::int32_t ID = -497558622; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatMembersFilter: public Object { public: }; class chatMembersFilterContacts final : public ChatMembersFilter { public: chatMembersFilterContacts(); static const std::int32_t ID = 1774485671; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMembersFilterAdministrators final : public ChatMembersFilter { public: chatMembersFilterAdministrators(); static const std::int32_t ID = -1266893796; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMembersFilterMembers final : public ChatMembersFilter { public: chatMembersFilterMembers(); static const std::int32_t ID = 670504342; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMembersFilterMention final : public ChatMembersFilter { public: int53 message_thread_id_; chatMembersFilterMention(); explicit chatMembersFilterMention(int53 message_thread_id_); static const std::int32_t ID = 856419831; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMembersFilterRestricted final : public ChatMembersFilter { public: chatMembersFilterRestricted(); static const std::int32_t ID = 1256282813; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMembersFilterBanned final : public ChatMembersFilter { public: chatMembersFilterBanned(); static const std::int32_t ID = -1863102648; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMembersFilterBots final : public ChatMembersFilter { public: chatMembersFilterBots(); static const std::int32_t ID = -1422567288; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class MessageSender; class chatMessageSender final : public Object { public: object_ptr sender_; bool needs_premium_; chatMessageSender(); chatMessageSender(object_ptr &&sender_, bool needs_premium_); static const std::int32_t ID = 760590010; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatMessageSender; class chatMessageSenders final : public Object { public: array> senders_; chatMessageSenders(); explicit chatMessageSenders(array> &&senders_); static const std::int32_t ID = -1866230970; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatNearby final : public Object { public: int53 chat_id_; int32 distance_; chatNearby(); chatNearby(int53 chat_id_, int32 distance_); static const std::int32_t ID = 48120405; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatNotificationSettings final : public Object { public: bool use_default_mute_for_; int32 mute_for_; bool use_default_sound_; int64 sound_id_; bool use_default_show_preview_; bool show_preview_; bool use_default_mute_stories_; bool mute_stories_; bool use_default_story_sound_; int64 story_sound_id_; bool use_default_show_story_sender_; bool show_story_sender_; bool use_default_disable_pinned_message_notifications_; bool disable_pinned_message_notifications_; bool use_default_disable_mention_notifications_; bool disable_mention_notifications_; chatNotificationSettings(); chatNotificationSettings(bool use_default_mute_for_, int32 mute_for_, bool use_default_sound_, int64 sound_id_, bool use_default_show_preview_, bool show_preview_, bool use_default_mute_stories_, bool mute_stories_, bool use_default_story_sound_, int64 story_sound_id_, bool use_default_show_story_sender_, bool show_story_sender_, bool use_default_disable_pinned_message_notifications_, bool disable_pinned_message_notifications_, bool use_default_disable_mention_notifications_, bool disable_mention_notifications_); static const std::int32_t ID = -572779825; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatPermissions final : public Object { public: bool can_send_basic_messages_; bool can_send_audios_; bool can_send_documents_; bool can_send_photos_; bool can_send_videos_; bool can_send_video_notes_; bool can_send_voice_notes_; bool can_send_polls_; bool can_send_other_messages_; bool can_add_web_page_previews_; bool can_change_info_; bool can_invite_users_; bool can_pin_messages_; bool can_manage_topics_; chatPermissions(); chatPermissions(bool can_send_basic_messages_, bool can_send_audios_, bool can_send_documents_, bool can_send_photos_, bool can_send_videos_, bool can_send_video_notes_, bool can_send_voice_notes_, bool can_send_polls_, bool can_send_other_messages_, bool can_add_web_page_previews_, bool can_change_info_, bool can_invite_users_, bool can_pin_messages_, bool can_manage_topics_); static const std::int32_t ID = -1355062837; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class animatedChatPhoto; class chatPhotoSticker; class minithumbnail; class photoSize; class chatPhoto final : public Object { public: int64 id_; int32 added_date_; object_ptr minithumbnail_; array> sizes_; object_ptr animation_; object_ptr small_animation_; object_ptr sticker_; chatPhoto(); chatPhoto(int64 id_, int32 added_date_, object_ptr &&minithumbnail_, array> &&sizes_, object_ptr &&animation_, object_ptr &&small_animation_, object_ptr &&sticker_); static const std::int32_t ID = -1430870201; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class file; class minithumbnail; class chatPhotoInfo final : public Object { public: object_ptr small_; object_ptr big_; object_ptr minithumbnail_; bool has_animation_; bool is_personal_; chatPhotoInfo(); chatPhotoInfo(object_ptr &&small_, object_ptr &&big_, object_ptr &&minithumbnail_, bool has_animation_, bool is_personal_); static const std::int32_t ID = 281195686; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class BackgroundFill; class ChatPhotoStickerType; class chatPhotoSticker final : public Object { public: object_ptr type_; object_ptr background_fill_; chatPhotoSticker(); chatPhotoSticker(object_ptr &&type_, object_ptr &&background_fill_); static const std::int32_t ID = -1459387485; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatPhotoStickerType: public Object { public: }; class chatPhotoStickerTypeRegularOrMask final : public ChatPhotoStickerType { public: int64 sticker_set_id_; int64 sticker_id_; chatPhotoStickerTypeRegularOrMask(); chatPhotoStickerTypeRegularOrMask(int64 sticker_set_id_, int64 sticker_id_); static const std::int32_t ID = -415147620; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatPhotoStickerTypeCustomEmoji final : public ChatPhotoStickerType { public: int64 custom_emoji_id_; chatPhotoStickerTypeCustomEmoji(); explicit chatPhotoStickerTypeCustomEmoji(int64 custom_emoji_id_); static const std::int32_t ID = -266224943; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatPhoto; class chatPhotos final : public Object { public: int32 total_count_; array> photos_; chatPhotos(); chatPhotos(int32 total_count_, array> &&photos_); static const std::int32_t ID = -1510699180; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatList; class ChatSource; class chatPosition final : public Object { public: object_ptr list_; int64 order_; bool is_pinned_; object_ptr source_; chatPosition(); chatPosition(object_ptr &&list_, int64 order_, bool is_pinned_, object_ptr &&source_); static const std::int32_t ID = -622557355; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatSource: public Object { public: }; class chatSourceMtprotoProxy final : public ChatSource { public: chatSourceMtprotoProxy(); static const std::int32_t ID = 394074115; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatSourcePublicServiceAnnouncement final : public ChatSource { public: string type_; string text_; chatSourcePublicServiceAnnouncement(); chatSourcePublicServiceAnnouncement(string const &type_, string const &text_); static const std::int32_t ID = -328571244; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class StatisticalGraph; class chatStatisticsAdministratorActionsInfo; class chatStatisticsInviterInfo; class chatStatisticsMessageInteractionInfo; class chatStatisticsMessageSenderInfo; class dateRange; class statisticalValue; class ChatStatistics: public Object { public: }; class chatStatisticsSupergroup final : public ChatStatistics { public: object_ptr period_; object_ptr member_count_; object_ptr message_count_; object_ptr viewer_count_; object_ptr sender_count_; object_ptr member_count_graph_; object_ptr join_graph_; object_ptr join_by_source_graph_; object_ptr language_graph_; object_ptr message_content_graph_; object_ptr action_graph_; object_ptr day_graph_; object_ptr week_graph_; array> top_senders_; array> top_administrators_; array> top_inviters_; chatStatisticsSupergroup(); chatStatisticsSupergroup(object_ptr &&period_, object_ptr &&member_count_, object_ptr &&message_count_, object_ptr &&viewer_count_, object_ptr &&sender_count_, object_ptr &&member_count_graph_, object_ptr &&join_graph_, object_ptr &&join_by_source_graph_, object_ptr &&language_graph_, object_ptr &&message_content_graph_, object_ptr &&action_graph_, object_ptr &&day_graph_, object_ptr &&week_graph_, array> &&top_senders_, array> &&top_administrators_, array> &&top_inviters_); static const std::int32_t ID = -17244633; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatStatisticsChannel final : public ChatStatistics { public: object_ptr period_; object_ptr member_count_; object_ptr mean_view_count_; object_ptr mean_share_count_; double enabled_notifications_percentage_; object_ptr member_count_graph_; object_ptr join_graph_; object_ptr mute_graph_; object_ptr view_count_by_hour_graph_; object_ptr view_count_by_source_graph_; object_ptr join_by_source_graph_; object_ptr language_graph_; object_ptr message_interaction_graph_; object_ptr instant_view_interaction_graph_; array> recent_message_interactions_; chatStatisticsChannel(); chatStatisticsChannel(object_ptr &&period_, object_ptr &&member_count_, object_ptr &&mean_view_count_, object_ptr &&mean_share_count_, double enabled_notifications_percentage_, object_ptr &&member_count_graph_, object_ptr &&join_graph_, object_ptr &&mute_graph_, object_ptr &&view_count_by_hour_graph_, object_ptr &&view_count_by_source_graph_, object_ptr &&join_by_source_graph_, object_ptr &&language_graph_, object_ptr &&message_interaction_graph_, object_ptr &&instant_view_interaction_graph_, array> &&recent_message_interactions_); static const std::int32_t ID = -825434183; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatStatisticsAdministratorActionsInfo final : public Object { public: int53 user_id_; int32 deleted_message_count_; int32 banned_user_count_; int32 restricted_user_count_; chatStatisticsAdministratorActionsInfo(); chatStatisticsAdministratorActionsInfo(int53 user_id_, int32 deleted_message_count_, int32 banned_user_count_, int32 restricted_user_count_); static const std::int32_t ID = -406467202; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatStatisticsInviterInfo final : public Object { public: int53 user_id_; int32 added_member_count_; chatStatisticsInviterInfo(); chatStatisticsInviterInfo(int53 user_id_, int32 added_member_count_); static const std::int32_t ID = 629396619; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatStatisticsMessageInteractionInfo final : public Object { public: int53 message_id_; int32 view_count_; int32 forward_count_; chatStatisticsMessageInteractionInfo(); chatStatisticsMessageInteractionInfo(int53 message_id_, int32 view_count_, int32 forward_count_); static const std::int32_t ID = -765580756; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatStatisticsMessageSenderInfo final : public Object { public: int53 user_id_; int32 sent_message_count_; int32 average_character_count_; chatStatisticsMessageSenderInfo(); chatStatisticsMessageSenderInfo(int53 user_id_, int32 sent_message_count_, int32 average_character_count_); static const std::int32_t ID = 1762295371; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class themeSettings; class chatTheme final : public Object { public: string name_; object_ptr light_settings_; object_ptr dark_settings_; chatTheme(); chatTheme(string const &name_, object_ptr &&light_settings_, object_ptr &&dark_settings_); static const std::int32_t ID = -113218503; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ChatType: public Object { public: }; class chatTypePrivate final : public ChatType { public: int53 user_id_; chatTypePrivate(); explicit chatTypePrivate(int53 user_id_); static const std::int32_t ID = 1579049844; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatTypeBasicGroup final : public ChatType { public: int53 basic_group_id_; chatTypeBasicGroup(); explicit chatTypeBasicGroup(int53 basic_group_id_); static const std::int32_t ID = 973884508; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatTypeSupergroup final : public ChatType { public: int53 supergroup_id_; bool is_channel_; chatTypeSupergroup(); chatTypeSupergroup(int53 supergroup_id_, bool is_channel_); static const std::int32_t ID = -1472570774; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatTypeSecret final : public ChatType { public: int32 secret_chat_id_; int53 user_id_; chatTypeSecret(); chatTypeSecret(int32 secret_chat_id_, int53 user_id_); static const std::int32_t ID = 862366513; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chats final : public Object { public: int32 total_count_; array chat_ids_; chats(); chats(int32 total_count_, array &&chat_ids_); static const std::int32_t ID = 1809654812; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatNearby; class chatsNearby final : public Object { public: array> users_nearby_; array> supergroups_nearby_; chatsNearby(); chatsNearby(array> &&users_nearby_, array> &&supergroups_nearby_); static const std::int32_t ID = 187746081; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CheckChatUsernameResult: public Object { public: }; class checkChatUsernameResultOk final : public CheckChatUsernameResult { public: checkChatUsernameResultOk(); static const std::int32_t ID = -1498956964; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class checkChatUsernameResultUsernameInvalid final : public CheckChatUsernameResult { public: checkChatUsernameResultUsernameInvalid(); static const std::int32_t ID = -636979370; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class checkChatUsernameResultUsernameOccupied final : public CheckChatUsernameResult { public: checkChatUsernameResultUsernameOccupied(); static const std::int32_t ID = 1320892201; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class checkChatUsernameResultUsernamePurchasable final : public CheckChatUsernameResult { public: checkChatUsernameResultUsernamePurchasable(); static const std::int32_t ID = 5885529; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class checkChatUsernameResultPublicChatsTooMany final : public CheckChatUsernameResult { public: checkChatUsernameResultPublicChatsTooMany(); static const std::int32_t ID = -659264388; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class checkChatUsernameResultPublicGroupsUnavailable final : public CheckChatUsernameResult { public: checkChatUsernameResultPublicGroupsUnavailable(); static const std::int32_t ID = -51833641; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class CheckStickerSetNameResult: public Object { public: }; class checkStickerSetNameResultOk final : public CheckStickerSetNameResult { public: checkStickerSetNameResultOk(); static const std::int32_t ID = -1404308904; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class checkStickerSetNameResultNameInvalid final : public CheckStickerSetNameResult { public: checkStickerSetNameResultNameInvalid(); static const std::int32_t ID = 177992244; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class checkStickerSetNameResultNameOccupied final : public CheckStickerSetNameResult { public: checkStickerSetNameResultNameOccupied(); static const std::int32_t ID = 1012980872; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class VectorPathCommand; class closedVectorPath final : public Object { public: array> commands_; closedVectorPath(); explicit closedVectorPath(array> &&commands_); static const std::int32_t ID = 589951657; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class connectedWebsite final : public Object { public: int64 id_; string domain_name_; int53 bot_user_id_; string browser_; string platform_; int32 log_in_date_; int32 last_active_date_; string ip_address_; string location_; connectedWebsite(); connectedWebsite(int64 id_, string const &domain_name_, int53 bot_user_id_, string const &browser_, string const &platform_, int32 log_in_date_, int32 last_active_date_, string const &ip_address_, string const &location_); static const std::int32_t ID = 1978115978; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class connectedWebsite; class connectedWebsites final : public Object { public: array> websites_; connectedWebsites(); explicit connectedWebsites(array> &&websites_); static const std::int32_t ID = -1727949694; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class ConnectionState: public Object { public: }; class connectionStateWaitingForNetwork final : public ConnectionState { public: connectionStateWaitingForNetwork(); static const std::int32_t ID = 1695405912; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class connectionStateConnectingToProxy final : public ConnectionState { public: connectionStateConnectingToProxy(); static const std::int32_t ID = -93187239; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class connectionStateConnecting final : public ConnectionState { public: connectionStateConnecting(); static const std::int32_t ID = -1298400670; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class connectionStateUpdating final : public ConnectionState { public: connectionStateUpdating(); static const std::int32_t ID = -188104009; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class connectionStateReady final : public ConnectionState { public: connectionStateReady(); static const std::int32_t ID = 48608492; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class contact final : public Object { public: string phone_number_; string first_name_; string last_name_; string vcard_; int53 user_id_; contact(); contact(string const &phone_number_, string const &first_name_, string const &last_name_, string const &vcard_, int53 user_id_); static const std::int32_t ID = -1993844876; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class count final : public Object { public: int32 count_; count(); explicit count(int32 count_); static const std::int32_t ID = 1295577348; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class countryInfo; class countries final : public Object { public: array> countries_; countries(); explicit countries(array> &&countries_); static const std::int32_t ID = 1854211813; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class countryInfo final : public Object { public: string country_code_; string name_; string english_name_; bool is_hidden_; array calling_codes_; countryInfo(); countryInfo(string const &country_code_, string const &name_, string const &english_name_, bool is_hidden_, array &&calling_codes_); static const std::int32_t ID = 1617195722; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class customRequestResult final : public Object { public: string result_; customRequestResult(); explicit customRequestResult(string const &result_); static const std::int32_t ID = -2009960452; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class databaseStatistics final : public Object { public: string statistics_; databaseStatistics(); explicit databaseStatistics(string const &statistics_); static const std::int32_t ID = -1123912880; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class date final : public Object { public: int32 day_; int32 month_; int32 year_; date(); date(int32 day_, int32 month_, int32 year_); static const std::int32_t ID = -277956960; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class dateRange final : public Object { public: int32 start_date_; int32 end_date_; dateRange(); dateRange(int32 start_date_, int32 end_date_); static const std::int32_t ID = 1360333926; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class file; class datedFile final : public Object { public: object_ptr file_; int32 date_; datedFile(); datedFile(object_ptr &&file_, int32 date_); static const std::int32_t ID = -1840795491; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class formattedText; class deepLinkInfo final : public Object { public: object_ptr text_; bool need_update_application_; deepLinkInfo(); deepLinkInfo(object_ptr &&text_, bool need_update_application_); static const std::int32_t ID = 1864081662; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class DeviceToken: public Object { public: }; class deviceTokenFirebaseCloudMessaging final : public DeviceToken { public: string token_; bool encrypt_; deviceTokenFirebaseCloudMessaging(); deviceTokenFirebaseCloudMessaging(string const &token_, bool encrypt_); static const std::int32_t ID = -797881849; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenApplePush final : public DeviceToken { public: string device_token_; bool is_app_sandbox_; deviceTokenApplePush(); deviceTokenApplePush(string const &device_token_, bool is_app_sandbox_); static const std::int32_t ID = 387541955; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenApplePushVoIP final : public DeviceToken { public: string device_token_; bool is_app_sandbox_; bool encrypt_; deviceTokenApplePushVoIP(); deviceTokenApplePushVoIP(string const &device_token_, bool is_app_sandbox_, bool encrypt_); static const std::int32_t ID = 804275689; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenWindowsPush final : public DeviceToken { public: string access_token_; deviceTokenWindowsPush(); explicit deviceTokenWindowsPush(string const &access_token_); static const std::int32_t ID = -1410514289; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenMicrosoftPush final : public DeviceToken { public: string channel_uri_; deviceTokenMicrosoftPush(); explicit deviceTokenMicrosoftPush(string const &channel_uri_); static const std::int32_t ID = 1224269900; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenMicrosoftPushVoIP final : public DeviceToken { public: string channel_uri_; deviceTokenMicrosoftPushVoIP(); explicit deviceTokenMicrosoftPushVoIP(string const &channel_uri_); static const std::int32_t ID = -785603759; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenWebPush final : public DeviceToken { public: string endpoint_; string p256dh_base64url_; string auth_base64url_; deviceTokenWebPush(); deviceTokenWebPush(string const &endpoint_, string const &p256dh_base64url_, string const &auth_base64url_); static const std::int32_t ID = -1694507273; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenSimplePush final : public DeviceToken { public: string endpoint_; deviceTokenSimplePush(); explicit deviceTokenSimplePush(string const &endpoint_); static const std::int32_t ID = 49584736; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenUbuntuPush final : public DeviceToken { public: string token_; deviceTokenUbuntuPush(); explicit deviceTokenUbuntuPush(string const &token_); static const std::int32_t ID = 1782320422; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenBlackBerryPush final : public DeviceToken { public: string token_; deviceTokenBlackBerryPush(); explicit deviceTokenBlackBerryPush(string const &token_); static const std::int32_t ID = 1559167234; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenTizenPush final : public DeviceToken { public: string reg_id_; deviceTokenTizenPush(); explicit deviceTokenTizenPush(string const ®_id_); static const std::int32_t ID = -1359947213; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class deviceTokenHuaweiPush final : public DeviceToken { public: string token_; bool encrypt_; deviceTokenHuaweiPush(); deviceTokenHuaweiPush(string const &token_, bool encrypt_); static const std::int32_t ID = 1989103142; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class sticker; class DiceStickers: public Object { public: }; class diceStickersRegular final : public DiceStickers { public: object_ptr sticker_; diceStickersRegular(); explicit diceStickersRegular(object_ptr &&sticker_); static const std::int32_t ID = -740299570; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class diceStickersSlotMachine final : public DiceStickers { public: object_ptr background_; object_ptr lever_; object_ptr left_reel_; object_ptr center_reel_; object_ptr right_reel_; diceStickersSlotMachine(); diceStickersSlotMachine(object_ptr &&background_, object_ptr &&lever_, object_ptr &&left_reel_, object_ptr &¢er_reel_, object_ptr &&right_reel_); static const std::int32_t ID = -375223124; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class file; class minithumbnail; class thumbnail; class document final : public Object { public: string file_name_; string mime_type_; object_ptr minithumbnail_; object_ptr thumbnail_; object_ptr document_; document(); document(string const &file_name_, string const &mime_type_, object_ptr &&minithumbnail_, object_ptr &&thumbnail_, object_ptr &&document_); static const std::int32_t ID = -1357271080; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class downloadedFileCounts final : public Object { public: int32 active_count_; int32 paused_count_; int32 completed_count_; downloadedFileCounts(); downloadedFileCounts(int32 active_count_, int32 paused_count_, int32 completed_count_); static const std::int32_t ID = -1973999550; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class InputMessageContent; class InputMessageReplyTo; class draftMessage final : public Object { public: object_ptr reply_to_; int32 date_; object_ptr input_message_text_; draftMessage(); draftMessage(object_ptr &&reply_to_, int32 date_, object_ptr &&input_message_text_); static const std::int32_t ID = -159618468; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class EmailAddressAuthentication: public Object { public: }; class emailAddressAuthenticationCode final : public EmailAddressAuthentication { public: string code_; emailAddressAuthenticationCode(); explicit emailAddressAuthenticationCode(string const &code_); static const std::int32_t ID = -993257022; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emailAddressAuthenticationAppleId final : public EmailAddressAuthentication { public: string token_; emailAddressAuthenticationAppleId(); explicit emailAddressAuthenticationAppleId(string const &token_); static const std::int32_t ID = 633948265; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emailAddressAuthenticationGoogleId final : public EmailAddressAuthentication { public: string token_; emailAddressAuthenticationGoogleId(); explicit emailAddressAuthenticationGoogleId(string const &token_); static const std::int32_t ID = -19142846; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emailAddressAuthenticationCodeInfo final : public Object { public: string email_address_pattern_; int32 length_; emailAddressAuthenticationCodeInfo(); emailAddressAuthenticationCodeInfo(string const &email_address_pattern_, int32 length_); static const std::int32_t ID = 1151066659; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class EmailAddressResetState: public Object { public: }; class emailAddressResetStateAvailable final : public EmailAddressResetState { public: int32 wait_period_; emailAddressResetStateAvailable(); explicit emailAddressResetStateAvailable(int32 wait_period_); static const std::int32_t ID = -1917177600; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emailAddressResetStatePending final : public EmailAddressResetState { public: int32 reset_in_; emailAddressResetStatePending(); explicit emailAddressResetStatePending(int32 reset_in_); static const std::int32_t ID = -1885966805; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emojiCategory; class emojiCategories final : public Object { public: array> categories_; emojiCategories(); explicit emojiCategories(array> &&categories_); static const std::int32_t ID = -1455387824; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class sticker; class emojiCategory final : public Object { public: string name_; object_ptr icon_; array emojis_; emojiCategory(); emojiCategory(string const &name_, object_ptr &&icon_, array &&emojis_); static const std::int32_t ID = 1019393600; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class EmojiCategoryType: public Object { public: }; class emojiCategoryTypeDefault final : public EmojiCategoryType { public: emojiCategoryTypeDefault(); static const std::int32_t ID = 1188782699; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emojiCategoryTypeEmojiStatus final : public EmojiCategoryType { public: emojiCategoryTypeEmojiStatus(); static const std::int32_t ID = 1381282631; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emojiCategoryTypeChatPhoto final : public EmojiCategoryType { public: emojiCategoryTypeChatPhoto(); static const std::int32_t ID = 1059063081; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class sticker; class emojiReaction final : public Object { public: string emoji_; string title_; bool is_active_; object_ptr static_icon_; object_ptr appear_animation_; object_ptr select_animation_; object_ptr activate_animation_; object_ptr effect_animation_; object_ptr around_animation_; object_ptr center_animation_; emojiReaction(); emojiReaction(string const &emoji_, string const &title_, bool is_active_, object_ptr &&static_icon_, object_ptr &&appear_animation_, object_ptr &&select_animation_, object_ptr &&activate_animation_, object_ptr &&effect_animation_, object_ptr &&around_animation_, object_ptr &¢er_animation_); static const std::int32_t ID = 1616063583; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emojiStatus final : public Object { public: int64 custom_emoji_id_; int32 expiration_date_; emojiStatus(); emojiStatus(int64 custom_emoji_id_, int32 expiration_date_); static const std::int32_t ID = -606529994; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emojiStatuses final : public Object { public: array custom_emoji_ids_; emojiStatuses(); explicit emojiStatuses(array &&custom_emoji_ids_); static const std::int32_t ID = -377859594; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class emojis final : public Object { public: array emojis_; emojis(); explicit emojis(array &&emojis_); static const std::int32_t ID = 950339552; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class encryptedCredentials final : public Object { public: bytes data_; bytes hash_; bytes secret_; encryptedCredentials(); encryptedCredentials(bytes const &data_, bytes const &hash_, bytes const &secret_); static const std::int32_t ID = 1331106766; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class PassportElementType; class datedFile; class encryptedPassportElement final : public Object { public: object_ptr type_; bytes data_; object_ptr front_side_; object_ptr reverse_side_; object_ptr selfie_; array> translation_; array> files_; string value_; string hash_; encryptedPassportElement(); encryptedPassportElement(object_ptr &&type_, bytes const &data_, object_ptr &&front_side_, object_ptr &&reverse_side_, object_ptr &&selfie_, array> &&translation_, array> &&files_, string const &value_, string const &hash_); static const std::int32_t ID = 2002386193; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class error final : public Object { public: int32 code_; string message_; error(); error(int32 code_, string const &message_); static const std::int32_t ID = -1679978726; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class localFile; class remoteFile; class file final : public Object { public: int32 id_; int53 size_; int53 expected_size_; object_ptr local_; object_ptr remote_; file(); file(int32 id_, int53 size_, int53 expected_size_, object_ptr &&local_, object_ptr &&remote_); static const std::int32_t ID = 1263291956; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class message; class fileDownload final : public Object { public: int32 file_id_; object_ptr message_; int32 add_date_; int32 complete_date_; bool is_paused_; fileDownload(); fileDownload(int32 file_id_, object_ptr &&message_, int32 add_date_, int32 complete_date_, bool is_paused_); static const std::int32_t ID = -2092100780; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileDownloadedPrefixSize final : public Object { public: int53 size_; fileDownloadedPrefixSize(); explicit fileDownloadedPrefixSize(int53 size_); static const std::int32_t ID = -2015205381; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class filePart final : public Object { public: bytes data_; filePart(); explicit filePart(bytes const &data_); static const std::int32_t ID = 911821878; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class FileType: public Object { public: }; class fileTypeNone final : public FileType { public: fileTypeNone(); static const std::int32_t ID = 2003009189; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeAnimation final : public FileType { public: fileTypeAnimation(); static const std::int32_t ID = -290816582; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeAudio final : public FileType { public: fileTypeAudio(); static const std::int32_t ID = -709112160; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeDocument final : public FileType { public: fileTypeDocument(); static const std::int32_t ID = -564722929; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeNotificationSound final : public FileType { public: fileTypeNotificationSound(); static const std::int32_t ID = -1020289271; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypePhoto final : public FileType { public: fileTypePhoto(); static const std::int32_t ID = -1718914651; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypePhotoStory final : public FileType { public: fileTypePhotoStory(); static const std::int32_t ID = 2018995956; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeProfilePhoto final : public FileType { public: fileTypeProfilePhoto(); static const std::int32_t ID = 1795089315; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeSecret final : public FileType { public: fileTypeSecret(); static const std::int32_t ID = -1871899401; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeSecretThumbnail final : public FileType { public: fileTypeSecretThumbnail(); static const std::int32_t ID = -1401326026; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeSecure final : public FileType { public: fileTypeSecure(); static const std::int32_t ID = -1419133146; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeSticker final : public FileType { public: fileTypeSticker(); static const std::int32_t ID = 475233385; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeThumbnail final : public FileType { public: fileTypeThumbnail(); static const std::int32_t ID = -12443298; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeUnknown final : public FileType { public: fileTypeUnknown(); static const std::int32_t ID = -2011566768; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeVideo final : public FileType { public: fileTypeVideo(); static const std::int32_t ID = 1430816539; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeVideoNote final : public FileType { public: fileTypeVideoNote(); static const std::int32_t ID = -518412385; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeVideoStory final : public FileType { public: fileTypeVideoStory(); static const std::int32_t ID = -2146754143; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeVoiceNote final : public FileType { public: fileTypeVoiceNote(); static const std::int32_t ID = -588681661; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class fileTypeWallpaper final : public FileType { public: fileTypeWallpaper(); static const std::int32_t ID = 1854930076; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class FirebaseAuthenticationSettings: public Object { public: }; class firebaseAuthenticationSettingsAndroid final : public FirebaseAuthenticationSettings { public: firebaseAuthenticationSettingsAndroid(); static const std::int32_t ID = -1771112932; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class firebaseAuthenticationSettingsIos final : public FirebaseAuthenticationSettings { public: string device_token_; bool is_app_sandbox_; firebaseAuthenticationSettingsIos(); firebaseAuthenticationSettingsIos(string const &device_token_, bool is_app_sandbox_); static const std::int32_t ID = 222930116; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class textEntity; class formattedText final : public Object { public: string text_; array> entities_; formattedText(); formattedText(string const &text_, array> &&entities_); static const std::int32_t ID = -252624564; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatNotificationSettings; class draftMessage; class forumTopicInfo; class message; class forumTopic final : public Object { public: object_ptr info_; object_ptr last_message_; bool is_pinned_; int32 unread_count_; int53 last_read_inbox_message_id_; int53 last_read_outbox_message_id_; int32 unread_mention_count_; int32 unread_reaction_count_; object_ptr notification_settings_; object_ptr draft_message_; forumTopic(); forumTopic(object_ptr &&info_, object_ptr &&last_message_, bool is_pinned_, int32 unread_count_, int53 last_read_inbox_message_id_, int53 last_read_outbox_message_id_, int32 unread_mention_count_, int32 unread_reaction_count_, object_ptr &¬ification_settings_, object_ptr &&draft_message_); static const std::int32_t ID = 303279334; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class forumTopicIcon final : public Object { public: int32 color_; int64 custom_emoji_id_; forumTopicIcon(); forumTopicIcon(int32 color_, int64 custom_emoji_id_); static const std::int32_t ID = -818765421; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class MessageSender; class forumTopicIcon; class forumTopicInfo final : public Object { public: int53 message_thread_id_; string name_; object_ptr icon_; int32 creation_date_; object_ptr creator_id_; bool is_general_; bool is_outgoing_; bool is_closed_; bool is_hidden_; forumTopicInfo(); forumTopicInfo(int53 message_thread_id_, string const &name_, object_ptr &&icon_, int32 creation_date_, object_ptr &&creator_id_, bool is_general_, bool is_outgoing_, bool is_closed_, bool is_hidden_); static const std::int32_t ID = -1879842914; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class forumTopic; class forumTopics final : public Object { public: int32 total_count_; array> topics_; int32 next_offset_date_; int53 next_offset_message_id_; int53 next_offset_message_thread_id_; forumTopics(); forumTopics(int32 total_count_, array> &&topics_, int32 next_offset_date_, int53 next_offset_message_id_, int53 next_offset_message_thread_id_); static const std::int32_t ID = 732819537; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class chatBoost; class foundChatBoosts final : public Object { public: int32 total_count_; array> boosts_; string next_offset_; foundChatBoosts(); foundChatBoosts(int32 total_count_, array> &&boosts_, string const &next_offset_); static const std::int32_t ID = 51457680; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class message; class foundChatMessages final : public Object { public: int32 total_count_; array> messages_; int53 next_from_message_id_; foundChatMessages(); foundChatMessages(int32 total_count_, array> &&messages_, int53 next_from_message_id_); static const std::int32_t ID = 427484196; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class downloadedFileCounts; class fileDownload; class foundFileDownloads final : public Object { public: object_ptr total_counts_; array> files_; string next_offset_; foundFileDownloads(); foundFileDownloads(object_ptr &&total_counts_, array> &&files_, string const &next_offset_); static const std::int32_t ID = 1395890392; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class message; class foundMessages final : public Object { public: int32 total_count_; array> messages_; string next_offset_; foundMessages(); foundMessages(int32 total_count_, array> &&messages_, string const &next_offset_); static const std::int32_t ID = -529809608; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class foundPosition final : public Object { public: int32 position_; foundPosition(); explicit foundPosition(int32 position_); static const std::int32_t ID = -1886724216; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class foundPositions final : public Object { public: int32 total_count_; array positions_; foundPositions(); foundPositions(int32 total_count_, array &&positions_); static const std::int32_t ID = -80518368; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class webApp; class foundWebApp final : public Object { public: object_ptr web_app_; bool request_write_access_; bool skip_confirmation_; foundWebApp(); foundWebApp(object_ptr &&web_app_, bool request_write_access_, bool skip_confirmation_); static const std::int32_t ID = -290926562; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class animation; class formattedText; class photo; class game final : public Object { public: int64 id_; string short_name_; string title_; object_ptr text_; string description_; object_ptr photo_; object_ptr animation_; game(); game(int64 id_, string const &short_name_, string const &title_, object_ptr &&text_, string const &description_, object_ptr &&photo_, object_ptr &&animation_); static const std::int32_t ID = -1565597752; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class gameHighScore final : public Object { public: int32 position_; int53 user_id_; int32 score_; gameHighScore(); gameHighScore(int32 position_, int53 user_id_, int32 score_); static const std::int32_t ID = 342871838; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class gameHighScore; class gameHighScores final : public Object { public: array> scores_; gameHighScores(); explicit gameHighScores(array> &&scores_); static const std::int32_t ID = -725770727; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class groupCallRecentSpeaker; class groupCall final : public Object { public: int32 id_; string title_; int32 scheduled_start_date_; bool enabled_start_notification_; bool is_active_; bool is_rtmp_stream_; bool is_joined_; bool need_rejoin_; bool can_be_managed_; int32 participant_count_; bool has_hidden_listeners_; bool loaded_all_participants_; array> recent_speakers_; bool is_my_video_enabled_; bool is_my_video_paused_; bool can_enable_video_; bool mute_new_participants_; bool can_toggle_mute_new_participants_; int32 record_duration_; bool is_video_recorded_; int32 duration_; groupCall(); groupCall(int32 id_, string const &title_, int32 scheduled_start_date_, bool enabled_start_notification_, bool is_active_, bool is_rtmp_stream_, bool is_joined_, bool need_rejoin_, bool can_be_managed_, int32 participant_count_, bool has_hidden_listeners_, bool loaded_all_participants_, array> &&recent_speakers_, bool is_my_video_enabled_, bool is_my_video_paused_, bool can_enable_video_, bool mute_new_participants_, bool can_toggle_mute_new_participants_, int32 record_duration_, bool is_video_recorded_, int32 duration_); static const std::int32_t ID = -123443355; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class groupCallId final : public Object { public: int32 id_; groupCallId(); explicit groupCallId(int32 id_); static const std::int32_t ID = 350534469; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class MessageSender; class groupCallParticipantVideoInfo; class groupCallParticipant final : public Object { public: object_ptr participant_id_; int32 audio_source_id_; int32 screen_sharing_audio_source_id_; object_ptr video_info_; object_ptr screen_sharing_video_info_; string bio_; bool is_current_user_; bool is_speaking_; bool is_hand_raised_; bool can_be_muted_for_all_users_; bool can_be_unmuted_for_all_users_; bool can_be_muted_for_current_user_; bool can_be_unmuted_for_current_user_; bool is_muted_for_all_users_; bool is_muted_for_current_user_; bool can_unmute_self_; int32 volume_level_; string order_; groupCallParticipant(); groupCallParticipant(object_ptr &&participant_id_, int32 audio_source_id_, int32 screen_sharing_audio_source_id_, object_ptr &&video_info_, object_ptr &&screen_sharing_video_info_, string const &bio_, bool is_current_user_, bool is_speaking_, bool is_hand_raised_, bool can_be_muted_for_all_users_, bool can_be_unmuted_for_all_users_, bool can_be_muted_for_current_user_, bool can_be_unmuted_for_current_user_, bool is_muted_for_all_users_, bool is_muted_for_current_user_, bool can_unmute_self_, int32 volume_level_, string const &order_); static const std::int32_t ID = 2059182571; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class groupCallVideoSourceGroup; class groupCallParticipantVideoInfo final : public Object { public: array> source_groups_; string endpoint_id_; bool is_paused_; groupCallParticipantVideoInfo(); groupCallParticipantVideoInfo(array> &&source_groups_, string const &endpoint_id_, bool is_paused_); static const std::int32_t ID = -14294645; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class MessageSender; class groupCallRecentSpeaker final : public Object { public: object_ptr participant_id_; bool is_speaking_; groupCallRecentSpeaker(); groupCallRecentSpeaker(object_ptr &&participant_id_, bool is_speaking_); static const std::int32_t ID = 1819519436; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class groupCallStream final : public Object { public: int32 channel_id_; int32 scale_; int53 time_offset_; groupCallStream(); groupCallStream(int32 channel_id_, int32 scale_, int53 time_offset_); static const std::int32_t ID = -264564795; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class groupCallStream; class groupCallStreams final : public Object { public: array> streams_; groupCallStreams(); explicit groupCallStreams(array> &&streams_); static const std::int32_t ID = -1032959578; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class GroupCallVideoQuality: public Object { public: }; class groupCallVideoQualityThumbnail final : public GroupCallVideoQuality { public: groupCallVideoQualityThumbnail(); static const std::int32_t ID = -379186304; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class groupCallVideoQualityMedium final : public GroupCallVideoQuality { public: groupCallVideoQualityMedium(); static const std::int32_t ID = 394968234; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class groupCallVideoQualityFull final : public GroupCallVideoQuality { public: groupCallVideoQualityFull(); static const std::int32_t ID = -2125916617; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class groupCallVideoSourceGroup final : public Object { public: string semantics_; array source_ids_; groupCallVideoSourceGroup(); groupCallVideoSourceGroup(string const &semantics_, array &&source_ids_); static const std::int32_t ID = -1190900785; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class hashtags final : public Object { public: array hashtags_; hashtags(); explicit hashtags(array &&hashtags_); static const std::int32_t ID = 676798885; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class httpUrl final : public Object { public: string url_; httpUrl(); explicit httpUrl(string const &url_); static const std::int32_t ID = -2018019930; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class date; class datedFile; class identityDocument final : public Object { public: string number_; object_ptr expiration_date_; object_ptr front_side_; object_ptr reverse_side_; object_ptr selfie_; array> translation_; identityDocument(); identityDocument(string const &number_, object_ptr &&expiration_date_, object_ptr &&front_side_, object_ptr &&reverse_side_, object_ptr &&selfie_, array> &&translation_); static const std::int32_t ID = 1001703606; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class importedContacts final : public Object { public: array user_ids_; array importer_count_; importedContacts(); importedContacts(array &&user_ids_, array &&importer_count_); static const std::int32_t ID = 2068432290; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class InlineKeyboardButtonType; class inlineKeyboardButton final : public Object { public: string text_; object_ptr type_; inlineKeyboardButton(); inlineKeyboardButton(string const &text_, object_ptr &&type_); static const std::int32_t ID = -372105704; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class TargetChat; class InlineKeyboardButtonType: public Object { public: }; class inlineKeyboardButtonTypeUrl final : public InlineKeyboardButtonType { public: string url_; inlineKeyboardButtonTypeUrl(); explicit inlineKeyboardButtonTypeUrl(string const &url_); static const std::int32_t ID = 1130741420; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineKeyboardButtonTypeLoginUrl final : public InlineKeyboardButtonType { public: string url_; int53 id_; string forward_text_; inlineKeyboardButtonTypeLoginUrl(); inlineKeyboardButtonTypeLoginUrl(string const &url_, int53 id_, string const &forward_text_); static const std::int32_t ID = -1203413081; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineKeyboardButtonTypeWebApp final : public InlineKeyboardButtonType { public: string url_; inlineKeyboardButtonTypeWebApp(); explicit inlineKeyboardButtonTypeWebApp(string const &url_); static const std::int32_t ID = -1767471672; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineKeyboardButtonTypeCallback final : public InlineKeyboardButtonType { public: bytes data_; inlineKeyboardButtonTypeCallback(); explicit inlineKeyboardButtonTypeCallback(bytes const &data_); static const std::int32_t ID = -1127515139; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineKeyboardButtonTypeCallbackWithPassword final : public InlineKeyboardButtonType { public: bytes data_; inlineKeyboardButtonTypeCallbackWithPassword(); explicit inlineKeyboardButtonTypeCallbackWithPassword(bytes const &data_); static const std::int32_t ID = 908018248; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineKeyboardButtonTypeCallbackGame final : public InlineKeyboardButtonType { public: inlineKeyboardButtonTypeCallbackGame(); static const std::int32_t ID = -383429528; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineKeyboardButtonTypeSwitchInline final : public InlineKeyboardButtonType { public: string query_; object_ptr target_chat_; inlineKeyboardButtonTypeSwitchInline(); inlineKeyboardButtonTypeSwitchInline(string const &query_, object_ptr &&target_chat_); static const std::int32_t ID = 544906485; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineKeyboardButtonTypeBuy final : public InlineKeyboardButtonType { public: inlineKeyboardButtonTypeBuy(); static const std::int32_t ID = 1360739440; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineKeyboardButtonTypeUser final : public InlineKeyboardButtonType { public: int53 user_id_; inlineKeyboardButtonTypeUser(); explicit inlineKeyboardButtonTypeUser(int53 user_id_); static const std::int32_t ID = 1836574114; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class animation; class audio; class contact; class document; class game; class location; class photo; class sticker; class thumbnail; class venue; class video; class voiceNote; class InlineQueryResult: public Object { public: }; class inlineQueryResultArticle final : public InlineQueryResult { public: string id_; string url_; bool hide_url_; string title_; string description_; object_ptr thumbnail_; inlineQueryResultArticle(); inlineQueryResultArticle(string const &id_, string const &url_, bool hide_url_, string const &title_, string const &description_, object_ptr &&thumbnail_); static const std::int32_t ID = 206340825; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineQueryResultContact final : public InlineQueryResult { public: string id_; object_ptr contact_; object_ptr thumbnail_; inlineQueryResultContact(); inlineQueryResultContact(string const &id_, object_ptr &&contact_, object_ptr &&thumbnail_); static const std::int32_t ID = -181960174; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineQueryResultLocation final : public InlineQueryResult { public: string id_; object_ptr location_; string title_; object_ptr thumbnail_; inlineQueryResultLocation(); inlineQueryResultLocation(string const &id_, object_ptr &&location_, string const &title_, object_ptr &&thumbnail_); static const std::int32_t ID = 466004752; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineQueryResultVenue final : public InlineQueryResult { public: string id_; object_ptr venue_; object_ptr thumbnail_; inlineQueryResultVenue(); inlineQueryResultVenue(string const &id_, object_ptr &&venue_, object_ptr &&thumbnail_); static const std::int32_t ID = 1281036382; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineQueryResultGame final : public InlineQueryResult { public: string id_; object_ptr game_; inlineQueryResultGame(); inlineQueryResultGame(string const &id_, object_ptr &&game_); static const std::int32_t ID = 1706916987; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineQueryResultAnimation final : public InlineQueryResult { public: string id_; object_ptr animation_; string title_; inlineQueryResultAnimation(); inlineQueryResultAnimation(string const &id_, object_ptr &&animation_, string const &title_); static const std::int32_t ID = 2009984267; std::int32_t get_id() const final { return ID; } void store(TlStorerToString &s, const char *field_name) const final; }; class inlineQueryResultAudio final : public InlineQueryResult { public: string id_; object_ptr